A program that manages the computer's resources and presents a UI
Graphical User Interface; Computer interface with graphical desktop. They provide better graphics and user friendliness, but are often resourse intensive and limit options.
Command Line Interface; Computer interface with a text prompt. Often gives user more access, however may be more difficult to use, inconsistent among different platforms, and lacks graphics.
Account on a UNIX system
Administrator account on a UNIX system
Application that modifies text based files
Class of operating systems that pioneered computing systems
Each file has a flags for various classes of user (user, group, other) on their permissions (read, write, execute)
drwxrwxrwx
Software that provides controlled access to database records
Accounting for possible security threats to a sytstem in current context
Large corporate computer made for mass processing of data
Central OS software loaded into a protected region of memory that is used as an interface to link processes to hardware input and outputs, including:
User programs
Background application, a daemon
The connection between a user and device through either a command line interface (CLI) like a console or a graphic user interface (GUI) like a desktop.
Windows Icons Menus Pointer device; interface that has said attributes of GUIs
File run by a CLI that runs scripting commands
Imperative language that may be untyped (variables not given a type) and have inconsistent syntax. Such examples include bash and zsh.
IEEE 1003; Portable Operating System Interface; standards of system and user APIs for portability among UNIX systems
File System; Manages files and directories in an OS (starting from / in Unix-like, and C:// in DOS-based)
Logical File System; Files, directories and partitions in a FS
Physical File System; Physical representation of stored data on a disc
Distributed File System; File system on a server
Like in discrete mathematics, it's a graph with no circuits. Each tree has its root and each leaf (node other than root) has a parent other than the root
- Track; Rings on the discs
- Heads; Read and write discs
- Cylinder; Collection of all discs
- Sector; Portion of a track
Initialising the PFS
- Partitions; Divisions of disk for independant storage
- Directories; Table that locates blocks of files on a disc
- Blocks; Unit of disc space measured by operating system (512 bytes),
allocated to files
Block with metadata (size, owner, permissions, timestamps etc) that is used to reference other blocks with pointers
Program being run
Running several processes at once, can be done through:
- Multiprogramming; waiting in queue to be processed
- Multitasking; set timer for all processes to share CPU time (TDMA)
- Multithreading; Running a process on several threads
- Multiprocessing; using several CPU cores to execute processes at the exact same time
The state of the program, such as:
- Created; Loaded into RAM
- Waiting; Waiting to be processed by CPU
- Blocked; Waiting for a resource to be available
- Stopped; process is terminated by Arnold Schwartznegger
Action that changes state of process
CPU's method of allocating time to processes
Method of processes being handled by a thread, where one process is executed while other are in waiting in some order
InterProcess Communication; act of two processes sharing data
Bash symbol that makes the output of a process the input for another process
Memory or hardware that a process may need access to
When to processes try to access same resource at the same time, which is not allowed
When two processes try to access a resource, which prevents them both from doing so, and they are both stuck. Specifically, it occurs when there is mutual exclusion of a resource (resource can only be accessed one at a time) and a process holds one resource that the compteting process wants, but wants the process that the competing process has (hold and wait). To break deadlocks, either let the OS decide based on an arbitrary process (avoidance/prevention) or break deadlocks when they are found (detection/management)
Location where a byte of memory is stored
Representation of memory address as it appears on the storage device
Representation of only the memory that a process can access in its optimum order, an abstraction of all available memory in an ideal order for referencing in assembly
Block of memory in virtual memory represented as a file called a page that can swap from being on RAM to swap space if the RAM is being overloaded. The OS defines this behaviour
The act of swapping a rarely used page file from RAM to swap space to free the RAM
When a program requires more time paging than running applications
Physical RAM plus interpreting a fraction of a HDD or SSD as RAM
Place on drive where virtual memory exists (remember your old computer couldn't run Minecraft without it? Fun times...)
Tendency of CPUs to use certain values of memory
Allowing access to files to authorised personell only
Protecting accuracy & completeness of information and processes through
Ensuring constant access to a system
Ensuring user is correct, by questioning based on something the user know, has, or is
Obfuscation system to make reading messages only possible with a key. These functions are one (plaintext) to one (encryption)
Used to encrypt and decrypt, private key used to decrypt and public key used to encrypt
Secure Socket Layer; certificate based protocol that ensures data confidentiality, integrity, and authentification
Giving a code on data to enforce integrity, these functions are many (plaintext) to one (hash)
Verifying someone
Program that hosts webpages on a network
Language that defines structure of a webpage
Language that defines formatting of a webpage
Element in HTML
HTML viewer
To binary:
- Bp = ⌊D/2p-1⌋ mod 2
- Bp is the pth digit of the binary number (right to left)
- D is the decimal number
To decimal:
- D = ∞∑p=1 Bp*2p-1
- Bp is the pth digit of the binary number (right to left)
- D is the decimal number
Processor of a computer that has a defined instruction set. It has the following sub units:
Data representation for characters used in IBM mainframes, usually through punch cards
7 bit system for binary numbers to represent letters
ASCII extension to include Latin extended, Cyrillic, Arabic, Hebrew, Greek and Thai scripts
Expansion of ASCII to 16+ bits comes in many variations:
Code at end of a file showing file type (.exe, .sh, .app etc)
First few bytes of a file that exposes file type
The amount of bits used to represent the color of each pixel; standard RGB with a byte for each color intensity has a bit depth of 24 since \(3B=24b\)
See Discrete Mathematics for the following
Shifting all bits in a binary number to the right, the innermost bit wraps to the end
Shifting all bits in a binary number to the left, the outermost bit wraps to the beggining
Inverting all bits
Local Area Network
Collection of computers connected to allow for resource sharing
Wide Area Network; network covering large geographical aream such as an Australia-wide network, or the internet, often made up of ISPs
Metropolitan Area Network; Another word for WAN
Rules of routing that decide how messages are transmitted
Client-server architecture that acknowledges two types of clients:
Client-server architecture that acknowledges three types of clients:
Alternative to client-sever architecture, where clients can be servers too, like in torrenting and mining. It is useful as using idle computers is a powerful processing resource
Sending data as small packets through different routes and reconstructing the data on arrival
All clients are equal
Use of a central server for indexing which resource is on what device
Applications used on top of networks for more complex functions and presentation, such as email applications, browsers, torrenting applications, messaging applications, file sharing applications and more
Messaging protocol created in 1972 when UNIX was developed
Idea that all people are acquainted to the rest of the world through at most 6 people
Specific address from 0 to 65565 for each protocol
Multipurpose Internet Mail Extensions; Allows for sending binary data through email
eXtensive Markup Language; used to store data in an unambiguous format in a syntax similar but more stricter than HTML