Operating Systems Exam #1 - Chapters 1-3
Examples of demand paging usage
- Error processing (if no errors occur the instruction is never processed) - Mutually exclusive operations (when there's input usually there's no processing, when there's processing usually there's no output) - Menu options (drop downs)
1970s (problem and solution)
- Faster CPU - Main memory still small capacity --> solution: virtual memory
1960s
- Faster CPUs - Problems interacting with I/O devices --> Solution: multi-programming
Fixed partitions scheme
- First attempt to allow for multiprogramming - the entirety of each partition could be assigned to a single job, and multiple partitions allow multiple jobs at the same time - the system has to be rebooted to change the size of the partitions - there has to be protection on each partition
2010s
- Increased mobility - Wireless connectivity - Multi-core engineering (replacing single large processors with two half sized processors -- dual core, four -- quad core and so on)
Subsystem managers
- Main memory - Processor Manager - Device Manager - File Manager
Tasks that the subsystem managers do
- Monitor the system's resources - Enforce the policies that determine what component gets what resources, when, and how much - Allocate the resources when appropriate - Deallocate the resources when appropriate - Networking
1980s
- OS functions built on hardware itself ---> firmware - evolution of PCs sparked network systems enabling users to share hardware and software resources
Relocatable dynamic partitions scheme
- The memory manager relocates programs together to gather all of the empty blocks and compact themto make one bock of memory large enough to accomodate some, or all, of the jobs waiting to get in.
2000s
- Virtualization allowed separate partiitions of a single server to support different operating systems (it turned a single physical server into multiple virtual servers, often with multiple operating systems) - boost in processing speed/ commercialization of multi-core processors
Single-User Contiguous Scheme + problem
- before execution, each job is loaded in its entirety into main memory and is allocated as much contiguous space as it needs - if the program is too large to fit into the available memory space, it cannot begin execution - jobs are processed sequentially (when a job finishes or has an error the next job that fits is processed) Main problem: - doesn't support multiprogramming (multiple jobs or processes occupying memory at the same time)
Dynamic partitions scheme + problems
- memory rationed to an incoming job in one contiguous block - each job is given the exact amount of memory needed Problem: - external fragmentation
deallocating in a fixed partition system
- when a job is completed the memory manager immediately deallocates that memory space by resseting the status of the entire memory bock from busy to free
user interface types
1. GUI (graphical user interface) 2. Command line interface
Types of tables that memory managers use to keep track of how a job's pages fit and where
1. Job Table 2. Page Map Table 3. Memory Map Table
Three options for timing of compaction
1. Perform compaction when a certain percentage of memory becomes busy, say 75 percent. 2. Compact memory only when there are jobs waiting to get in. 3. compact memory after a prescribed amount of time has elapsed.
dynamic partition case 1 deallocation (name the type + solution)
1. When the block to be deallocated is adjacent to another free block Solution: the space to be deallocated and the free block adjacent to it become one
consistencies between memory management schemes/ techniques
1. entire program loaded into memory 2. stored contiguously 3. remain in memory until the job is completed
What information does the memory manager hold for each partition (fixed partitions scheme)
1. its size 2. its address 3. its access restrictions 4. its current status (free or busy)
File Manager job
1. keeps track of every file in the system 2. enforces restrictions on who has access to which files 3. controls the range of actions that each user is allowed to perform on the file after the access them. Ex. Read-only access 4. allocates space in a secondary storage device
dynamic partition case 2 deallocation (name the type + solution)
2. When the block to be deallocated is between the two free blocks Solution: the sizes of the three partitions are combined and the total stored with the smallest beginning address + a null entry indicated by an asterisk afterwards
The Job Table (JT) contains ___ (number) values for each ____ job:. __________ and __________ + example
2; active; the size of the job and the memory location where its Page Map Table is stored The first job is size 400 and stored at location 3096 within memory
dynamic partition case 3 deallocation (name the type + solution)
3. When the block to be deallocated is isolated from other free blocks Solution: ??? (Pg. 44)
name the components of the os pyramid
base: Memory Manager, Processor Manager, Device Manager, File Manager top: User Interface
Types of Operating Systems
batch, interactive, real-time, hybrid, embedded systems
two types of registers
bound register and relocatoin register
dynamic partition deallocating cases
case 1. When the block to be deallocated is adjacent to another free block 2. When the block to be deallocated is between the two free blocks 3. When the block to be deallocated is isolated from other free blocks
Main Memory Manager function
check the validity of each request for memory space, and if it is a legal request, allocates a portion of memory that isn't already in use. When the job is finished the memory manager deallocates its allotted memory space
Grace marry hopper developed one of the first __________ and went on to write _______________. She also developed the programming language _________
compilers; compiler based programming languages; COBOL
1950s
computers improved - professional computer operators - faster speeds of input/output devices, such as storage drives and disk systems - the practice of grouping records into blocks before they are stored or retrieved in order to use more of the available storage area in the devices - the introduction of a control unit to manage data flow in spite of the speed discrepancy between the slow I/O devices and the faster CPU programs were still assigned one at a time to the processor
Page Map Table (PMT) contains ____
contains the vital information for each page - the page number and its corresponding memory address to the page frame. - The PMT includes only one entry per page. - The page numbers are sequential (Page 0, page 1 ....) so it isn't necessary to list each page number in the PMT
What types of files does the file manager keep track of?
data files, program files, utilities, compilers, applications and so on.
The Processor Manager job
decides how to allocate the CPU (and keeps status) for each job, process, thread, etc;
compaction of memory also referred to as
defragmentation
page memory allocation is based on
dividing jobs into units of equal size. each unit is called a page
although its theoretically possible to convert a general-purpose operating system into a real-time system by merely ________, the need to be extremely predictable is not part of the design criteria for most operating systems; so they can't provide _______ and _____ that real time perfomance requires
establishing a deadline; the guaranteed response times and graceful failure
formula for caluclating the failure rate
failure rate = number of interrupts / page requests made
Batch systems
feature jobs that are entered as a whole, and in sequence. That is only one job can be entered at a time, and once a job begins processing, then no other job can start processing until the resident job is finished. book: a type of computing system that executes programs, each of which is submitted in its entirety, can be grouped into batches, and is executed without external intervention.
Types of memory allocation schemes
single user, fixed partitions, dynamic partitions, relocatable dynamic partitions
how does the Network manager work
takes overall responsibility for every aspect of network connectivity, including the requirements of the available devices as well as files, memory space, CPU capacity, transmission connections, and types of encryption (if necessary)
storage
teh place where data is stored in teh computer system. Primary storage is main memory. Secondary storage is nonvolatile media, such as disks and flash memory
The evolution of early operating systems parallels_____
the evolution of the computer hardware it was designed to control
operating system
the most important software - it's the portion of the computing system that manages all of the hardware and software
User Interface
the portion of the operating system that users interact with directly - is one of the most unique and most recognizable components of the operating system
Cloud Computing
the practice of using a network of remote servers hosted on the Internet to store, manage, and process data, rather than a local server or a personal computer.
kernel
the primary part of the operating system that remains in random access memory (RAM), and is charged with perfomring the system's most essential takss, such as managing main memory and disk access
deallocation
the process of freeing an allocated resource, whether memory space, a device, a file, or a CPU
The key feature of RAM chips
they depend on the constant flow of electricity to hold data. If the power fails or it is turned off the contents of RAM is wiped clean.
what is the efficiency of a batch system measered in
throughput - the number of jobs completed in a given about of time (minutes, hours, days)
interrupt
where the CPU is nptified of events needing os services. For example when a programed issued a print command called IO command, it generated an interrupt wich signaled the release of the CPU from one job so it could bein execution of the next job
hybrid systems
widely used today, are a combination of batch and interactive. They appear to be interactive because individual users can enter multiple jobs to process into the system and get fast responses, but these systems also accept and run bathc programs in the background when the interactive load is light. A hybrid system takes advantages of the free time between high demand usage of the system and low demand times
how does the file manager decide who can access a file?
By following the access policies determined by the system designers, the File Manager enforces restrictions on who has access to which files. Many operating systems allow authorized individuals to change these permissions and restrictions.
OS artyhmetic for calculating the page and displacement
Byte_Num_To_Be_Located / Page_Size = Page_Number
1940s
Programmers would reserve the entire machine for the entire time they estimated it would take for the system to execute their program. Then the computer would sit idle between operations
Main memory also called ___
RAM (Random Access Memory)
ROM
Read Only Memory
1990s
Tim Burners-Lee proposing the World Wide Web. He designed he first Web server and browser making it available to the general public in 1991. This increased connectivity as well as the demand for higher security.
Demand paging
a memory allocation scheme that loads a program's page into memory at the time it is needed for processing (it only loads a part of the program for processing) - jobs are stored into secondary storage and processed as needed
time slicing
a mode of operation in which two or more processes are assigned quanta of time on the same processor
server
a node that provides clients with various network services, such as file retrieal, printing, or database access services
address
a number that designates a particular memory location
bound register
a register used to store the highest location in memory legally accessible by each program
External Fragmentation
a situation in which the dynamic allocation of memory creates unusable fragments of free memory between blocks of busy, or allocated, memory
network
a system of interconnected computer systems and peripheral devices that exchange information with one another
multiprogramming
a technique that allows a single processor to process several programs residing simultaneously in main memory and interleaving their execution by overlapping I/O requests with CPU requests
Read Only memory
a type of memory that is used to store premanent data an instructions because it is nonvolatile; instructions are burned onto chips by the manufacturer holds firmware
What must the OS distinguished between for compaction of memory
addresses and data values
Interactive systems
allow multiple jobs to begin processing, and return results to users with better response times than batch systems; but interactive systems are slower than the real-time systems. These systems are a lot more responsive than say batch systems - seconds or minutes vs hours or days
Problems with nano-sized transistors
although millions of transistors places very close to each other helped increase system performance dramatically the close proximity of these transistors also allowed current to "leak" which caused the builup of heat as well as other problems
a page interrupt, which we identify with __
an asterisk (*)
null entry
an empty entry in a list
process
an instance of execution of a program that is identifiable and controllable by the operating system
a page interrupt is generated when?
anytime a page needs to be loaded into memory whether a page is swapped out or not
secondary storage device
A device that is used to store data when it is not in use, including after the computer has been switch off (hard drive, flash drive)
device driver
A software program that provides the instructions your computer (the OS - specifically device manager) needs to communicate with a device, such as a scanner.
Who invented RAM memory
Jay W. Forrester
new fields in the _____ for demand paging - what are they?
PMT; 1. to determine if the page is being requested is already in main memory 2. to determine if the page contents have been modified while in memory 3. to determine if the page has been referenced most recently 4. shows the page frame number
firmware
Software that is permanently stored in a chip. The BIOS on a motherboard is an example of firmware. stored in ROM (Read Only Memory)
Virtual memory
Space on a hard disk or other storage device that simulates random access memory.
Moore's Law
The number of transistors per square inch on an integrated chip doubles every 18 (24 in the book) months
Multiprogramming
The technique of keeping multiple programs in main memory at the same time, allowing them to share the attention of the CPU
Best-fit memory allocation organizes the ____ in order _______
free/busy lists; by size from smallest to largest
the first fit memory allocation method organizes the ____ by ____ from ___ to ____
free/busy lists; memory locations; low order memory to high order memory
real time system types
hard real-time systems - risk total system failure if the predicted deadline is missed soft rel-time systems - suffer performance degradation, but not total system failure, as a consequence of a missed deadline
In most systems the _______ does the address resolutions
hardware
(FIFO) when (out of two total) both page frames are occupied, each new page that is brought into memory will cause ________ and ________
interrupt; page swap into secondary storage
Embedded Systems + examples
is a computer that is physically placed inside the product that it operates to add very specific features and capabilities. For example, embedded systems can be found in automobiles, digital music players, elevators, and pacemakers.
Device manager job
is responsible for (identifying and) connecting with every device that's available on the system, and for choosing the most efficient way to allocate each of these printers, ports, disk drives, and more (deallocating at the end), based on the device scheduling policies by the designer of the OS.
CPU
is the brains of the computer. It has the circuitry to control ate interpretation and execution of instructions. All storage references, data manipulations, and input/output operations are initiated or performed by the CPU
Main Memory
is where the data and instructions must reside to be processed
What does the operating system do?
it controls every file, every device, every section of main memory, and every moment of processing time. It controls who can use the system and how. In short, the operating system is the boss.
What does the main memory manager do if the memory space becomes fragmented
it might use policies established by the OS's designers to reallocate memory to make more usable space available for other jobs that are waiting.
Networks allow users to
manipulate resources that may be located over a wide geographical area
First bug (type of insect) found in Relay __, Panel __, (year) by ___ ___ ___
moth; 70; F; Grace Marry Hopper
Memory Map Table (MMT) has ____
one entry for each page frame and shows its location and its free or busy status
The page memory allocation scheme works quite efficiently when ____, ____, and ____ are all the same size
pages; sectors; page frames
what does computer hardware include
physical machine and is electronic components, including memory chips, the CPU, the input/output devices and storage devices
A critical feature of the Memory Manager is to ____ all of the space in main memory, particularly the space occupied by __________. It can't allow any part of the ___________ to be accidentally or intentionally altered because that would lead to _______ or _________
protect; OS; OS; instability or system crash;
real time systems + example usage
provide real-time information in response to requests spacecraft, airport traffic control, critical ndustrial processes, medical systems.
Network manager job
provides a convenient way for authorized users to share resources.
