NEW
Font size
WorksheetsnicePlatTechprelim
Total questions: 70
Worksheet time: 35mins
utilizes hardware resources of one or more processors to provide a wide range of services to system users
processor
process
system
Operating System(OS)
The OS provides a variety of facilities and services in the form of utility programs, such as editors and debuggers, for program development, which is also referred to as application program development tools.
Program Development
Program execution
Access to I/O devices
Control access to files
The OS handles different processes, such as loading data into the memory and scheduling, which must be performed to execute programs.
Access to I/O devices
System resource access
Control access to files
Program execution
: The OS provides a uniform interface that hides complex sets of instructions for I/O devices' operation
Control access to files
Access to I/O devices
System resource access
Error detection and response
The OS encompasses a detailed understanding of the structure of data contained in a file storage and can provide some protection mechanisms to control file access.
System resource access
Control access to files
Error detection and response
Error detection and response
The OS controls access to the whole system and to some specific system resources through access functions and authorizations.
System resource access
Performance parameter monitoring
Instruction Set Architecture
Error detection and response
The OS can detect errors, such as device failure and software errors, and provide appropriate responses that would clear the error condition with the least impact on running applications
• Performance parameter monitoring
Application Binary Interface
Error detection and response
Instruction Set Architecture
The OS must be able to collect usage statistics from various processes, such as response time, that can be used as a basis for system performance improvements.
Performance parameter monitoring
Application Binary Interface (ABI)
Application Program Interface
Instruction Set Architecture (ISA)
The ISA defines the collection of machine language instructions that a computer can follow. The OS has access to additional machine language instructions that deal with managing a system's ISA.
Application Program Interface
Instruction Set Architecture (ISA)
Application Binary Interface (ABI)
defines a standard for binary portability across programs. It defines the system call interface to the OS and the hardware resources and services available in a system through the ISA.
Instruction Set Architecture (ISA
Application Binary Interface (ABI)
Application Program Interface
allows a program to the hardware resources and services available in a system through that ISA, supplemented with high-level language library calls. It also enables easier porting of application software.
Application Program Interface
Application Binary Interface (ABI)
Instruction Set Architecture (ISA)
From late 1940s to the mid-1950s, programmers interact directly with computer hardware since operating systems (OS) are not yet available. Computers are run from a console consisting of display lights, toggle switches, an input device, and a printer
Serial Processing
Multi-programmed Batch Systems
Time-sharing Systems
Simple Batch Systems
Serial processing presented two (2) main problems which are: Installations used a hardcopy sign-up sheet to reserve computer time. A user could sign up for an allocated block of time, but is unable to maximize the allocation. Thus, resulting in wasted computer processing time
Scheduling
Set-up time
Serial processing presented two (2) main problems which are: A single program, called a job, involves numerous sequenced set-up processes that involve mounting and dismounting of tapes and setting up card decks.
Set-up time
Scheduling
To improve processor utilization, the concept of batch operating system was developed in the mid-1950s by General Motors Research Laboratories. It processed jobs in bulk, with predetermined input from files or other data resources.
Compatible Time-sharing System
Simple Batch Systems
Time-sharing Systems
Multi-programmed Batch Systems
This kind of operating system is more sophisticated compared to single programmed systems. Several ready-to-run jobs must be kept in the main memory, requiring some form of memory management. If several jobs are ready to run, the processor decides which one to run, and that decision requires a specific algorithm for scheduling. It basically allows the processor to handle multiple jobs at a time.
Simple Batch Systems
Time-sharing Systems
Compatible Time-sharing System (CTSS)
Multi-programmed Batch Systems
multiple users simultaneously access the system through terminals, with the operating system interleaving the execution of each user program in a short burst time or quantum computation.
Multi-programmed Batch Systems
Compatible Time-sharing System (CTSS)
Time-sharing Systems
Simple Batch Systems
was one of the first timesharing operating systems that was developed. It was developed at the Massachusetts Institute of Technology (MIT) by the group Project MAC, for the IBM 709 computer system.
Compatible Time-sharing System (CTSS)
Simple Batch Systems
Multi-programmed Batch Systems
Time-sharing Systems
Kernel Components of Microsoft Windows OS:
Windows Executive – This contains the core OS modules/services for specific functions and provides an API for user-mode software. The following are its functions:
True
False
Windows Executive – This contains the core OS modules/services for specific functions and provides an API for user-mode software. The following are its functions:
- This provides a framework through which I/O devices are accessible to applications.
I/O manager
Cache manager
Windows Executive – This contains the core OS modules/services for specific functions and provides an API for user-mode software. The following are its functions:
This improves the performance of file-based I/O by allowing recently referenced file data to reside in the main memory for quick access.
Cache manager
I/O manager
This creates, manages, and deletes Windows Executive objects that are used to represent resources such as processes, threads, and synchronization objects, while enforcing uniform rules for retaining, naming, and setting the security of the objects.
Plug-and-play manager
Power manager
Security reference monitor
Object manager
This determines which drivers are required to support a particular device and loads those drivers.
Plug-and-play manager
Security reference monitor
Virtual memory manager
Power manager
This coordinates the power consumption among various devices. It can be configured to reduce power by shutting down idle devices or the entire system, or setting the processor to sleep
Power manager
Security reference monitor
Process/thread manager
Virtual memory manager
This enforces the access validation and audit-generation rules for all protected objects including files, processes, address spaces, and I/O devices.
Security reference monitor
Virtual memory manager
Process/thread manager
Process/thread manager
This manages virtual addresses, physical memory, and paging files on a disk.
Virtual memory manager
Process/thread manager
Configuration manager
This creates, manages, and deletes processes and thread objects.
Security reference monitor
Process/thread manager
Virtual memory manager
Configuration manager
This is responsible for implementing and managing the system registry, which serves as the repository for both system-wide and per-user settings of various parameters.
Virtual memory manager
Configuration manager
Advanced local procedure call (ALPC) facility
Process/thread manager
This implements an efficient cross-process call mechanism for communication between local processes implementing services and subsystems
Virtual memory manager
Process/thread manager
Configuration manager
Advanced local procedure call (ALPC) facility
This is considered the core software of the OS. It controls the execution of the processors. This manages thread scheduling, process switching, exception and interrupt handling, and multiprocessor synchronization. Note that the Kernel's own code does not run in threads.
Hardware abstraction layer (HAL)
Device drivers
Windowing and graphing system
Windows Kernel
– This isolates the OS from platform-specific hardware variances. It makes each computer's system bus, direct memory access (DMA) controller, interrupt controller, system timers, and memory controller look the same to the Windows Executive and Kernel components.
Windows Kernel
Hardware abstraction layer (HAL)
Device drivers
Windowing and graphing system
These are dynamic libraries that extend the functionality of the Windows Executive.
Device drivers
Windows Kernel
Windowing and graphing system
Hardware abstraction layer (HAL)
This implements the graphical user interface (GUI), such as the user interface controls and illustrations.
Windows Kernel
Device drivers
Hardware abstraction layer (HAL)
Windowing and graphing system
User-mode Processes:
These include user-mode services such as the session manager, the authentication subsystem, the service manager, and the log-on process
Service processes
User applications
Environment subsystems
Special system processes
User-mode Processes:
These involve services used by both Microsoft and other external software developers to extend system functionality and run background user-mode activity on a Windows system
Special system processes
User applications
Service processes
Special system processes
User-mode Processes:
These provide different operating system environments and support Portable Operating System Interface (POSIX) and Win32 subsystems
Special system processes
Environment subsystems
User applications
Special system processes
User-mode Processes:
These include executable (EXE) programs and dynamic link libraries (DLLs) that provide the functionality a user needs to make use of a system.
User applications
Environment subsystems
Service processes
Special system processes
assic UNIX System • The classic UNIX system was developed at Bell Labs which was partly written in assembly language and was later converted into C language. It was initially called Uniplexed Information and Computing Service (UNICS).
True
False
The architecture of a classic UNIX has three (3) levels:
User level - focuses on the linked programs and libraries
Hardware level - focuses on the physical hardware and interface
System kernel - focuses on the overall operation of the system.
True
False
This supports system calls from applications, other interface software, and the components of the C compiler, such as the compiler itself, the assembler, and the loader.
Trap
Process
Shell
Interface
A joint development by AT&T and Sun Microsystems. The system kernel of this operating system has a clean implementation. The new feature in this OS release includes real-time processing support, process scheduling classes, dynamically allocated data structures, virtual memory management, virtual file systems, and a preemptive system kernel
System V Release 4 (SVR4)
Windows
Linux
Android
The Linux operating system is composed of independent blocks called
Dynamic linking
Stackable modules
loadable modules
two (2) vital characteristics of the Linux loadable modules:
The modules can be loaded and linked into the kernel while the kernel is already in memory and executing. A module can also be unlinked and removed from the memory at any time.
Dynamic linking
Stackable modules
two (2) vital characteristics of the Linux loadable modules:
The modules are arranged in hierarchical order. Modules serve as libraries when they are referenced by other modules higher up in the hierarchy, and as clients when they reference modules further down.
Stackable modules
Dynamic linking
It is a unique identifier for each process
Identifier
Process State
Priority
Program counter
It indicates the current activity of a process
Process State
Priority
Priority
Memory pointer
It refers to the priority level relative to other processes
Program counter
Memory pointer
Priority
Context data
It indicates the address of the next instruction to be executed for a particular process.
Memory pointer
Program counter
Context data
I/O status information
It contains pointers to program codes and data associated with the process, including any memory blocks shared with other processes
Context data
Memory pointer
Program counter
Memory pointer
These are the data present in a processor's registers during process execution.
Memory pointer
Context data
Memory pointer
Priority
This includes different information associated with the input/output status of a process, such as the outstanding I/O requests and I/O devices assigned to the process.
I/O status information
Accounting information
This includes different tracking information associated with the process, such as the amount of processor time, the clock time used, and time limits.
Accounting information
I/O status information
The elements of a process are stored in a data structure called _______The core concept of the process control block is that it contains sufficient information so it is possible to interrupt a running process and later resume the operation as if no interruption occurred.
Shell
Process
process control block
Two-State Process Model:
When the OS creates a new process, it creates a process control block for the new process and adds the new process into the not running state of the system. Then, the process waits for an opportunity to execute.
Not running state
Running state
Two-State Process Model:
The dispatch portion of the OS selects a particular process to run. Then, it enters the running state. Intermittently, the currently running process will be interrupted and the dispatch portion has to select other processes to run.
Running state
Not running state
These are used to keep track of both the main and the secondary memory. A part of the main memory is reserved for OS utilization,
I/O tables
Process tables
File tables
Memory tables
–These are used by the OS to manage the input and output devices and channels of a computer system at any given point in time.
File tables
I/O tables
File tables
File tables
These tables hold information regarding the existence of files and its corresponding attributes through a file management system.
File tables
Memory tables
I/O tables
Process tables
These tables are maintained by the OS to manage processes.
Process tables
File tables
I/O tables
Memory tables
Process control blocks are also referred to as _______The location of a process image will depend on the memory management scheme being used.
process images
process
traps
Shell
Process Attributes: A multiprogramming system requires a great deal of information about each process that resides in a process control block.
True
False
This involves unique numeric identifiers that are assigned to specific processes, which can simply be an index into a primary process table, or identifiers for cross-referencing process tables.
Process identification
Processor state information
Process control information
This consists of processor registers' information. During process execution, information are in the registers. When a process is interrupted, all information in the registers must be saved so it can be restored when the process resumes execution.
Process control information
Processor state information
Process identification
This contains the additional information needed by the OS to control and coordinate various active processes, such as the data structure, resource ownership and utilization information, and process privileges.
Process identification
Processor state information
Process control information
When a new process is to be added to those currently being managed, the operating system builds the data structure that will manage the process and allocates address space in the main memory for the process.
Process Creation
Process Switching
Process Termination
: When the operating system controls the currently running processes, a process switch may occur at any time. Thus, the OS needs to provide a regaining control feature if a process is blocked, suspended, or paused.
Process Creation
Process Switching
Process Termination
Interrupts are external events that are independent of the currently running process,
True
False
traps are related to errors or exception conditions generated within the currently running process.
True
False
supervisor call due to an explicit request can still occur to interrupt a process execution.
True
False
Any computer system must provide means for a process to indicate its completion. A batch job may include a halt instruction or an explicit OS service call for termination.
Process Creation
Process Switching
Process Termination
