1/47
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
User Interface
Some way of providing commands to the operating system
Program Execution
The system's ability to load a program into memory and to run that program
I/O Operations
Giving a running program access to required I/O
File-System Manipulation
Giving a program access to read
Communication
The exchange of information between two processes
Error Detection
For each type of error the operating system can take the appropriate action to ensure correct and consistent computing
Resource Allocation
When there are multiple users or jobs running at the same time
Accounting
Keeping track of which users use how much and what kinds of computer resources
Protection and Security
The owners of information stored in a multiuser or networked computer system may want to control use of that information
Command Interpreter
A user interface that allows users to directly enter commands to be performed by the operating system
Shells
One interpreter in a system with multiple command interpretters
System Calls
Provide an interface to the service made available by an operating system
Application Programming Interface (API)
A set of functions that are available to an application programmer
Run-time Support System
A set of functions built into libraries include with a compiler
System-Call Interface
The link to system calls made available by the operating system
Debugger
A system program designed to aid the programmer in finding and correcting bugs
Shared-Memory Model
Processes use system calls to create and gain access to regions of memory owned by other processes
What is the hierarchy of a logical computer?
Hardware
Operating System
System Programs
Application Programs
System Programs/System Utilities
A convenient environment for program development and execution
File Management
Programs which create
Status Information
A program which asks the system for simple or complex information about the system
Registry
A system used to store and retrieve configuration information
File Modification
Special commands to search contents of files or perform transformations of the text
Programming-Language Support
Compilers
Program Loading and Execution
Once a program is assembled
Communications
Programs which provide the mechanism for creating virtual connections among processes
Application Programs
Programs that are useful in solving common problems or performing common operations
User Goals for Developing an Operating System
Convenient to use
Easy to learn
Reliable
Safe
Fast
System Goals for Developing an Operating System
Easy to design/implement/maintain
Flexible
Reliable
Error free
Efficient
Mechanism
Determining how to do something
Policy
Determining what will be done
Emulator
A program that duplicates the functionality of one system in another system
Layered Approach
When an operating system is broken into a number of layers
What is the benefit of the layer approach?
A single layer can be debugged without worry about the layers above it. Similarly when debugging a layer it can be assumed that the layers below it are assembled correctly without error
Microkernel
A method which structures the operating system by removing all nonessential components from the kernel and implementing them as system and user-level programs
Virtual Machine
Abstracting the hardware of a single computer into several different execution environments
What are the benefits of using a virtual machine?
The host system is protected from the virtual machines
They are beneficial for operating system research and development
Multiple operating systems can be running on a developer's workstation concurrently
Consolidation
Taking two or more separate systems and running them in virtual machines on one system
Simulation
When the host system has one system architecture and the guest system was compiled for a different architecture
Para-virtualizaiton
Rather than try to trick a guest operating system into believing it has a system to itself
Log File
A file containing error information to alert system operators that a problem occurred
Core Dump
A capture of the memory of the process
Crash
A kernel failure
Crash Dump
Error information is saved to a log file
Profiling
Periodically samples the instruction pointer to determine which code is being executed
System Generation (SYSGEN)
A system must be configured or generated for each specific computer site
Bootstrap Program/Bootstrap Loader
A small piece of code that locates the kernel
Boot Block
A piece of code that can load an entire operating system into memory and begin its execution