Operating system
Operating System Software
-The operating system mediates interactions among both internal and external components. -Each component may be 'talking' a different language and having different requirements. -The operating system acts as a traffic cop, a translator, and a resource manager.
Operating Systems
-They manage the hardware and software resources of the computer system. These resources include such things as the CPU processor, memory, disk space, etc. -They provides a stable, consistent environment for applications to deal with the hardware without having to know all the details of hardware (interface, drivers).
RAM - Random access memory
-can be accessed (read, write and remove) in any order. -in contrast to sequential memory devices such as magnetic tapes, discs and drums, in which the mechanical movement of the storage medium forces the computer to access data in a fixed order. - is usually used for primary storage in computers to hold active information such as data and programs.
Deterministic Systems
A CPU can only do one thing at a time. Unless it is a Multicore!
Different User Interface
Command-Line Menu-Driven Graphical (GUI)
Loading The OS
Computers can only execute code found in memory (ROM or RAM). When a computer is turned on, it does not have an Operating System in memory. The computer's hardware cannot perform complex actions such as loading a program from disk, so an apparent paradox exists: To load the operating system into memory, one needs to have an operating system already loaded into memory.
Von-Neumann Concept
Control Unit Execution Unit: Memory I/O Unit
Central Processing Unit
Each computer system has at least one CPU, which carries out instructions and performs data manipulation. It is often called a microprocessor.
Functions of an OS
Handles Input and Output ( I/O ) Establishes the User Interface Manages Programs Manages Memory Device drivers
ROM - Read-only memory
In this type of storage, data is pre-recorded and can only be read (e.g., BIOS); it can not be removed. ROM is non-volatile and retained when the computer off.
I/O Unit
Input from the environment, and output of the results are managed here.
Static Random Access Memory (SRAM )
It is a type of memory that is faster and more reliable than the more common DRAM (dynamic RAM).
Disk Operating System (DOS)
Operating systems that accessed floppy disk(s): DOS dominated the IBM PC compatible market between 1981 and 2000
Cache Memory
RAM is the primary storage where data and instructions are read and written. Memory cells have a unique address referring to the correct location enabling reading, or writing instructions or data, between memory and other computer components. When the computer is switched off the contents of the RAM are lost, therefore it is termed volatile memory. Cache Memory stores the most recent data the CPU has accessed from RAM and is also volatile. Cache memory is faster and more expensive than RAM Level-2 cache memory increases the performance of data communication between CPU and RAM. Level-1 lies within the CPU and is faster, but smaller than level-2. When the CPU seeks data from RAM, it first searches level-1 and then level-2 and if the desired data are not found the search moves to the slower RAM.
Multi-tasking
Run more than one program at a time Active program (Foreground application) Inactive program (Background application)
Single-task
Run one program at a time
Managing Programs
Single-task Multi-tasking Multi-threading Multi-processing
Virtual memory
Temporarily stored on hard disk (storage)
Managing Memory
The OS establishes portions of protected RAM for system files The OS distributes memory among programs: size available (how many bytes) and location (cache, RAM, virtual) The OS establishes and runs Virtual Memory which uses part of hard disk as an extension of RAM The OS switches files between RAM and the hard disk in blocks as needed
The OS Handles Input/Output
The OS keeps track of what I/O hardware is attached The OS prioritizes I/O activity The OS communicates with the I/O devices via small programs called device drivers
Not all computers have operating systems.
The computer that controls the microwave oven in your kitchen doesn't need an operating system, it simply runs a known program whenever prompted by the user.
Execution Unit:
The execution unit is the core unit of the processor. The arithmetic logic unit calculates (ALU), the registers are a very fast memory to keep the operands that are needed for the actual operation.
Memory
The memory stores both data and instructions of the actual program. Data can be read and written to variable addresses.
Popular Operating Systems
UNIX - client/server computing many different flavors DOS - one of first for the PC, crashes often, uses only 640K of RAM at a time Mac OS - the first popular GUI Windows - GUI for the PC Android - light version for tablets & Smartphones Linux - a flavor of UNIX open source code free!
Real-time Operating System
Used to control machinery (robots), instruments, industrial processes in real time.
Dynamic Random Access Memory (DRAM)
a type of memory used in most personal computers. To store 1 bit of information in DRAM, 1 transistor and 1 capacitor are used. The information is stored in the capacitor in form of charge, so it required periodic refreshing to retain the charge, or data in the capacitor will be lost as the charge dissipates.
Device drivers
are programs that are hardware-dependent and operating-system-specific
Multi-threading
do more than one thing at a time (e.g., loading and printing)
Modern Operating Systems
for personal computers are complicated. Their main functions is still to intercede between the user and the hardware. -The heart of a modern Operating System is the kernel, or that portion of the OS that oversees all other operations (The Task Manager).
Synchronous Dynamic Random Access Memory (SDRAM)
has a synchronous interface, meaning that it waits for a clock signal before responding to control inputs and is therefore synchronized with the computer's system bus. The clock is used to drive an internal finite state machine that pipelines incoming instructions. This allows the chip to have a more complex pattern of operation than an asynchronous DRAM, enabling higher speeds The Operating System
Non-deterministic system
have lots of components with variable requirements that need to work together without any inconsistencies that would crash the system.
Control Unit:
interprets instructions of the program and controls the other parts of the processor.
Hyper-Threading
is a feature of certain Pentium 4 chips that makes one physical CPU appear as two logical CPUs. It works by physically duplicating certain sections of the processor (those that store the architectural state), but not duplicating the main execution resources (ALU). It uses additional registers to overlap two instruction streams in order to achieve an approximate 30% gain in performance.
basic input/output system (BIOS)
is a form of bootloader that stays present after the OS loads. The BIOS initializes the hardware
algorithm
is a step-by-step problem-solving procedure, especially an established, recursive computational procedure for solving a problem in a finite number of steps. Computers run programs which are computational algorithms to solve problems by manipulating data and come to a conclusion using sequential logical steps.
An application
is composed of a number of processes
Processes
is software that performs some action and can be controlled by a user, by other processes, or by the operating system.
Multi-processing
more than one CPU running at the same time (e.g., Quad core)
Storage
refers to memory that persists after the computer is turned off (non-volatile). Storage devices include hard drives, flash drives, floppy disks and magnetic tape. on a Hard Disk
Physical memory
stored in RAM ( RAM on a Motherboard)
Command-Line
syntax is important, has keywords and requires lots of typing; e.g., DOS
Menu-Driven
text based, pick items from a list using arrow keys and Enter.
Graphical (GUI)
uses icons, mouse to point and click on items; e.g., Mac, Windows