OS Chpt 1 Introduction
Two types of multiprocessing:
1. Asymmetric multiprocessing. 2. Symmetric multiprocessing.
Operating System Goals:
1. Execute user programs and make solving user problems easier. 2. Make the computer system convenient to use. 3. Use he computer hardware in an efficient manner.
What is the purpose of an OS?
1. Facilitates program execution. 2. Supports program development. 3. Makes computer system easy to use for users. 4. Uses computer resources efficiently.
Computer system can be divided into four components:
1. Hardware. 2. Operating system. 3. Application programs. 4. Users.
Computer systems can be divided into four components:
1. Hardware. 2. Operating system. 3. Application programs. 4. Users.
Assume we are using MS-Paint or Windows-when do we need to access the OS?
1. Loading the application/ terminating the application. 2. Memory allocation/management[e.g., paging]. 3. Access to IO devices-keyboard, mouse, printer, monitor. 4. CPU allocation. 5. Copy/Paste[inter-process communication].
When using MS-Paint over Windows, when do we need to access OS?
1. Loading the application/terminating the application. 2. Memory allocation/ management(e.g.,paging) 3. Access to IO devices - keyboard, mouse, printer, monitor. 4. CPU allocation. 5. Copy/Paste[inter-process communication].
An OS provides services for:
1. Processor Management. 2. Memory Management. 3. File Management. 4. Device Management. 5. Concurrency Control.
An OS provides services for:
1. Processor management. 2. memory management. 3. File Management. 4. Device Management. 5. Concurrency Control.
Mode bit provided by hardware:
1. Provides ability to distinguish when system is running user code or kernel code. 2. Some instructions designated as privileged, only executable in kernel mode. 3. System call changes mode to kernel, return from call resets it to user.
Multiprogramming needed for efficiency:
1. Single user cannot keep CPU and I/O devices busy at all times. 2. Multiprogramming organizes jobs (code and data) so CPU always has one to execute. 3. A subset of total jobs in system is kept in memory. 4. One job selected and run via job scheduling. 5. When it has to wait (for I/O for example), OS switches to another job. 6. Unlike sitting idle in a non-multiprogrammed system. 7. The idea is common in other life situations (e.g., lawyers) as long as at least one job needs to execute, the CPU is never idle...
A computer system can be divided roughly into four components:
1. The hardware. 2. The operating system. 3. The application programs. 4. The users.
Two viewpoints used to fully understand the operating system's role:
1. user. 2. the system.
The difference between a kernel mode and user mode is_______.
All hardware instructions are valid in kernel mode, where some of them cannot be used in the user mode.
The difference between a kernel mode and a user mode microprocessor is_____.
All the hardware instructions are valid in kernel mode, where some of them cannot be used in the user mode.
___ define the ways in which the system resources are used to solve the computing problems of the users; Word processors, compilers, web browsers, database systems, video games
Application programs
___ assigns certain tasks only to certain processors. In particular, only one processor may be responsible for handling all of the interrupts in the system or perhaps even
Asymmetric Multiprocessing
___ is managed by the O/S especially for multi-managing systems.
CPU
___ moves data from/to main memory to/from local buffers
CPU
___ and ___ are the most important resource.
CPU & RAM
Concurrent execution of ___ and devices competing for memory cycles (through memory controller).
CPUs
One or more ___, device controllers connect through common bus providing access to shared memory.
CPUs
___ informs CPU that it has finished its operation by causing an interrupt
Device controller
Counter to the copy protection and ___ movement
Digital Rights Management (DRM)
___ operation allows OS to protect itself and other system components.
Dual-mode
Direct memory access is a technique that
Enables the associated controller to read and write data directly from/to primary memory with no CPU intervention during data transfer.
Started by ___, which has "copyleft" GNU Public License (GPL).
Free Software Foundation (FSF)
Examples include ___[including core of Mac OS X], and Sun Solaris.
GNU/Linux, BSD UNIX
___ provides basic computing resources such as CPU, memory, I/O devices, file storage space.
Hardware
___ provides basic computing resources; CPU, memory, I/O devices, file storage space.
Hardware
___ is from the device to local buffer of controller
I/O is from the device to local buffer of controller
___ are designed primarily to optimize utilization of hardware.
Mainframe operating systems
An ___ is a program which acts as an interface between computer system users and the computer hardware.
OS(operating system)
___ controls and coordinates use of hardware among various applications and users.
Operating system
___ operating systems support complex games, business applications, and everything in between.
Personal Computer [PC]
CPU gets content from ___ and uses ___ to perform functions.
RAM and uses ALU
___ and control is especially important when having several users connected to the same mainframe or microcomputer
Resource allocation
___ treats all of the processing elements in the system identically.
Symmetric Multiprocessing
True or false, the OS manages these resources and allocates them to specific programs and users.
True
True or false: Os itself is a program, but OS has a priority which application programs don't have.
True
___ are people, machines (e.g., embedded), other computers.
Users
the hardware, includes ___, ___ and ___, provides the basic computing resources for the system.
central processing unit(CPU), the memory, and the input/output(I/O) devices
Operating systems made available in source-code format rather than just binary ___.
closed-source
An operating system is a ___ that controls execution of user programs and their access to I/O devices
control program
OS is a ___: Controls execution of programs to prevent errors and improper use of the computer.
control program
Each ___ is in charge of a particular device type[thus competing on memory cycles].
device controller
Each ___has a local buffer
device controller
With the management of the OS, a programmer is rid of difficult ___ considerations:
hardware
We can also view the computer system as consisting of ___, ___, and ___.
hardware, software, and data
The occurrence of an event is usually signaled by an ___ from either the hardware or the software. Hardware may trigger an interrupt at any time by sending a signal to the CPU, usually by way of the system bus. Software may trigger an interrupt by executing a special operation called a system call (also called a monitor call).
interrupt
An operating system is the ___, the one program running at all times[everything else may be considered application programs].
kernel
Once the___ is loaded and executing, it can start providing services to the system and its users. Some services are provided outside of the kernel, by system programs that are loaded into memory at boot time to become system processes, or system daemons that run the entire time the kernel is running.
kernel
Os uses the ___ of the microprocessor, whereas other programs use the ___.
kernel mode, other programs use the user mode.
OS uses the ___ of the microprocessor, whereas other programs use the ___.
kernel mode; user mode.
The goal of the user is to ____the work[or play] that the user is performing.
maximize
The operating system when other users are accessing the same computer through other terminals, is designed to ____[to assure that all available CPU time, memory, and I/O are used efficiently and that no individual user takes more than her fair share.
maximize resource utilization
Operating systems for ___ provide an environment in which a user can easily interface with the computer to execute programs
mobile computers
Most computer users sit in front of a PC, consisting of a ___, ___, ___, and ___.
monitor, keyboard, mouse, and system unit.
In workstations, users have dedicated resources at their disposal, but they also share resources such as___, and ___, including ___, ___, and ___ servers
networking and servers, including file, compute, and print servers.
An ___is a program that manages a computer's hardware. It also provides a basis for application programs and acts as an intermediary between the computer user and the computer hardware.
operating system
The ___ controls the hardware and coordinates its use among the various application programs for the various users.
operating system
Some ___ are designed to be convenient, others to be efficient, and others to be some combination of the two.
operating systems
In a more simplistic approach, in fact, OS itself is a ___.
program.
For a computer to start running—for instance, when it is powered up or rebooted—it needs to have an initial program to run. This initial program, or bootstrap program, tends to be simple. Typically, it is stored within the computer hardware in___or ___, known by the general term firmware.
read-only memory (ROM) or electrically erasable programmable read-only memory (EEPROM)
An operating system is a ___ that manages and allocates resources.
resource allocator
OS is a ___; manages all resources [OS as a government allegory]; Decides between conflicting requests for efficient and fair resource use.
resource allocator
For the user, the operating system is designed mostly for ease of use, with some attention paid to performance, and none paid to ____ [how various hardware and software resources are shared]
resource utilization
An operating system is a___ that mediates between hardware resources and the user's
software program
The operating system is a ___.
system software.
which is the one program running at all times[everything else may be considered application programs]?
the kernel
The application programs, such as ___, ___, ___, and ___ , define the ways in which these resources are used to solve users computing problems.
word processors, spreadsheets, compilers, and Web browsers