1/190
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Which generation of computers were large-scale integrated circuits used to develop personal computers for desktop and laptop operating systems?
The fourth generation
Uses of Mainframe as a computing environment
Supports a high volume of data processing and the management of a large amount of storage.
Uses of Server as a computing environment
In general, any computer, no matter the size, that provides resources to other computers.
Uses of Embedded Systems as a computing environment
-Most prevalent
-Real Time
-Primitive
-Works within time constraints
-Could have an OS or not
Role of operating system
The operating system (OS) is the software that runs on the bare hardware of a computer and provides essential support for users to develop and use applications in the most efficient and safe manner.
Firmware
Storage that is infrequently written to and is nonvolatile. Also Software stored in ROM or EEPROM for booting the system and managing low level hardware.
Flash Memory
Non-volatile memory that can be read from and written to. It is suitable for secondary storage.
Cache Memory
A type of memory used to temporarily store frequently used data or programs for quick access; similar to RAM but faster.
Dynamic Random Access Memory (DRAM)
The common version of RAM, which features high read and write speeds.
read-only memory (ROM)
It's a type of computer storage containing non-volatile, permanent data that, normally, can only be read, not written to.
System Service
The additional functionality provided by a program that has been incorporated into and started as part of the operating system.
Error detection service
Determines if a problem has occurred — for example a bit in DRAM spontaneously changed from a 0 to a 1, the contents of a network packet changed during transmission, or a block of data changed between when it was written and when it was read.
Deadlock Detection
A set of methods intended to ensure that at least one of the necessary conditions for deadlock cannot hold.
Graphical User Interface (GUI)
A visual display on a computer's screen that allows you to interact with your computer more easily by clicking graphical elements.
Command Line Interface
a user types commands represented by short keywords or abbreviations or presses special keys on the keyboard to enter data and instructions
dir command
Command typed in a Command Prompt window to list the directory contents.
wc command
counts lines , words and characters in a file. it can use " -l , -w or -c " to displaay only lines , characters , or words
copy command
Command in the command line interface for making a copy of a file and pasting it in another location.
del command
The DEL command is used to delete files and directories at the command line.
Denial of service attack
How: Overload of system
Effects: Legitimate users can't access systems
What is a thread?
A thread is a lightweight subprocess.It is a separate path of execution.It is called separate path of execution because each thread runs in a separate stack frame.
Storage Manager
A program module that provides the interface
between the low-level data stored in the database and the application programs and queries submitted to the system.
Virtualization
It is the act of creating the illusion of having one or more objects with more desirable characteristics than the real object. OSs rely on virtualization to create virtual CPUs, memory, I/O devices, and other system components that facilitate the work of programmers and users.
Time sharing (multitasking)
An extension of multiprogramming where the CPU is switched periodically among all active computations to guarantee acceptable response times to each user.
Multiprogramming
A technique that keeps several programs active in memory and switches execution among the different programs to maximize the use of the CPU and other resources.
Abstraction (Operating System Principle)
Programs do not interact directly with hardware allowing different varieties of hardware to all be accessed the same way
What is a computer program in execution called?
A process
Global data
data items that are automatically available to all modules throughout the system
Multi-threaded process
multiple threads within a single process, each having their own program counter, stack and set of registers, but sharing common code, data, and certain structures such as open files.
shared code
one copy of read only code shared among processes
Critical Section
a piece of code that only one thread can execute at a time
Long-term scheduler
selects which processes should be brought into the ready queue
Short-term scheduler
selects from among the processes in ready queue, and allocates the CPU to one of them
Non-preemptive scheduling
CPU scheduling that occurs when the currently executing process gives up the CPU voluntarily
preemptive scheduling
It is used when a process switches from running state to ready state or from the waiting state to ready state
Direct Memory Access (DMA)
A resource-conserving and performance-improving operation for device controllers allowing devices to transfer large amounts of data directly to and from main memory.
Partition
It is a logical division of a hard disk that is treated as a separate unit by operating systems (OSes) and file systems
Fragmentation
In the context of a hard disk, is a condition in which the contents of a single file are stored in different locations on the disk rather than in a contiguous space
page fault
It is an interruption that occurs when a software program attempts to access a memory block not currently stored in the system's RAM. This exception tells the operating system to find the block in virtual memory so it can be sent from a device's storage (SSD or HD) to RAM
Least Recently Used (LRU)
A replacement scheme in which the block replaced is the one that has been unused for the longest time.
50% rule in external fragmentation
If the probability of finding an exact match for a request approaches 0, one third of all memory partitions are holes and two thirds are occupied blocks. Formally, n = 0.5 m, where n is the number of holes and m is the number of occupied block
Internal Fragmentation
a situation in which a partition is only partially used by the program; the remaining space within the partition is unavailable to any other job and is therefore wasted.
External fragmentation vs internal fragmentation
Total memory space exists to satisfy a request, but it is not contiguous
Internal Fragmentation - a situation in which a partition is only partially used by the program; the remaining space within the partition is unavailable to any other job and is therefore wasted.
external fragmentation
The loss of usable memory space due to holes between allocated blocks of variable sizes.
non-contiguous
Not adjacent to one another.
What is a page in memory management?
A page is a fixed-size contiguous block of a logical address space identified by a single number, the page number.
disk block
a fixed sequence of bytes on the disk, which can only be accessed as a single unit using low-level read-block and write-block operations
Magnetic hard disk
A magnetic disk is a storage device that uses a magnetization process to write, rewrite and access data.
Magnetic Storage Devices
Includes magnetic tape, floppy disks and hard-disk drives.
rotational latency
Rotational latency (in milliseconds) describes the time required to position a specific sector under the read-write head. Average latency is typically given as the time it takes the drive to perform half a rotation of the platter, and is directly dependent on its RPM rating.
Partition
A logical division of a hard disk that is treated as a separate unit by operating systems (OSes) and file systems
Trapdoor (aka Backdoor)
Mechanism that bypasses user authentication. Ex: A systems programmer could modify the login utility to accept a specific user without requiring a password, thus permitting unauthorized access to the system at a later time
Buffer Overflow
An intrusion technique that exploits the fact that many programs do not check for array overflow, allowing an attacker to overwrite portions of memory beyond the legitimate scope of an input buffer.
login spoofing
Approach where a legitimate user presents a fake login screen to an unsuspecting user, who unwittingly supplies a valid login name and password to the imposter program. A possible solution to prevent login spoofing is to display the login screen only after the user has typed in a special character sequence that automatically invokes the OS and which a user program cannot intercept (Ex: CTRL-ALT-DEL).
logic bomb
Unauthorized code inserted into the system and executed at a specified time to perform some destructive action. The main use of a logic bomb is for blackmail or an act of revenge.
challenge response
a sort of public duel whereby one person offers a word, gesture, question or action and the other must respond in a way that answers in equal measure or ups the ante.
Advanced Encryption Standard (AES)
A symmetric cipher that was approved by the NIST in late 2000 as a replacement for DES.
RSA Encryption
It is the most common internet encryption and authentication system. The system used an algorithm that involves multiplying two large prime numbers to generate a public key, used to encrypt data and decrypt an authentication, and a private key, used to decrypt the data and encrypt an authentication.
Asymmetric
Data Encryption Standard (DES)
A cipher (algorithm for doing encryption and decryption) provided by the U.S. National Institute of Standards and Technology (NIST).
Message Digests
The calculation resulting from a hash function.
Random Access Memory (RAM)
Computer location where instructions and data are stored on a temporary basis. This memory is volatile, rewritable. Can be called Main Memory
What is a page frame?
It is a fixed-size contiguous block of physical memory identified by a single number, the page frame number.
What is a page table?
It is an array that keeps track of which pages of a given logical address space reside in which page frames. Each page table entry corresponds to one page and contains the number or the starting address of the frame containing the page.
What is a segment?
It is a space identified by a single number, the segment number.
What is a segment table?
It is an array that keeps track of which segment resides in which area of physical memory. Each entry corresponds to one segment and contains the starting address of the segment.
Segmentation and paging
A process address space is broken into VARIABLE sized blocks
A process address space is broken into FIXED sized blocks
Principle of locality
Locations accessed recently are more likely to be accessed again than locations accessed in the distant past
What is a translation look aside buffer?
It is a fast and associative
It maintains recent translations of logical addresses to frames in physical memory for faster retrieval.
Virtual Memory
It is a collection of one or more logical address spaces, each of which may exceed the size of physical memory
Demand Paging
It is the principle of loading a page into memory only when the page is needed, rather than at the start of the execution.
And it makes the implementation of virtual memory possible by moving pages to main memory only as needed.
Present Bit
It is a binary flag in each page table entry that indicates whether the corresponding page is currently resident in memory.
If a page is resident, then the entry points to the frame that holds the page.
Page Fault
It is an interrupt that occurs when a program attempts to reference a non-resident page. The interrupt triggers the operating system to find the page on disk, copy the page into a frame, and set the present bit to 1.
Replacement Algorithm
It selects the page that will not be referenced for the longest time in the future.
Reference String
It is the sequence of page numbers referenced by an executing program during a given time interval.
They are used to compare different page replacement algorithms by counting the number of page faults generated.
Least Recently Used (LRU)
It selects the page that has not been referenced for the longest time.
Referenced bit (r-bit)
It is associated with a page and is set automatically by the hardware whenever the page is referenced by any instruction.
Aging register
It is associated with a page and is shifted periodically to the right by 1 bit. Unless the most significant bit is set to 1, the page is aging in the sense that the associated register value is steadily decreasing.
Aging page replacement algorithm
It does not maintain pages sorted in the exact LRU order, but groups together pages referenced during a period of d consecutive references. Each period is represented by 1 bit in a periodically shifting aging register.
Optimal Working Set of a process
It is the set of resident pages that will still be needed in the immediate future and thus should remain resident
Working Set of a process
At time t, it is the set of pages referenced during the past d memory operations preceding t.
Working set page replacement algorithm
It uses a trailing window of size d superimposed on the RS to determine the size and composition of the working set at time t.
Working set page replacement algorithm
Analogous to the forward-looking window of the optimal working set, pages visible in the trailing window belong to the working set.
Working set page replacement algorithm
At each memory reference, it follows the steps:
1. Advance the sliding window by 1 to include the current reference.
2. Keep resident only the pages that appear in the window.
page-fault-frequency replacement algorithm
It takes a direct approach to controlling the page fault rate by adjusting the current resident set based on how frequently consecutive page faults occur.
page-fault-frequency replacement algorithm
1. Add the currently referenced page causing the page fault to the resident set.
2. When the time since the previous page fault is greater than d, remove all pages from the resident set that have not been referenced since the previous page fault.
Load control
It is the activity of determining how many processes should be running concurrently at any given time to maximize overall system performance.
Thrashing
It is an execution state during which most of the time is spent on moving pages between the memory and the disk while the CPU is mostly idle and no process is making any real progress.
Thrashing
Occurs when too many processes are sharing memory concurrently and no process has enough pages to operate without frequent page faults.
Page Fault Rate
It is the number of page faults, f, occurring during a number of memory references, t.
It can be expressed as P = f/t, where 0 ≤ P ≤ 1. P = 1 means that every memory reference results in a page fault, and P = 0 means that no page faults occur.
Page Fault Consequences
Results in a significant overhead, which increases the average access time to memory.
Effective access time
It is the average time to access memory in the presence of page faults.
Swapping
Move between main memory and a backing store. A process may be swapped out to free main memory temporarily and then swapped back in to continue execution.
Backing Store
The secondary storage area used for process swapping.
Kernel
It is the minimal set of functions necessary to manage the system resources safely and efficiently
Kernel
Typically provides the most essential services for memory and device management
Privileged Instruction
Performs critical operations that access I/O devices and the CPU's status and control registers.
Privileged Instruction
Only the OS kernel is allowed to execute this
Kernel Mode
The CPU state where both privileged and non-privileged instructions may be used
User Mode
The CPU state where only non-privileged instructions may be used
System Call
A request from an application for an OS service