1.10 Application Bases

Post on 02-Jan-2016

29 views 0 download

Tags:

description

1.10 Application Bases. Figure 1.1 Interaction between applications and the operating system. 1.12.1 Core Operating System Components. User interaction with operating system Often, through special application called a shell Kernel Software that contains core components of operating system - PowerPoint PPT Presentation

transcript

Figure 1.1 Interaction between applications and the operating system.

1.10 Application Bases

1.12.1 Core Operating System Components

• User interaction with operating system – Often, through special application called a shell– Kernel

• Software that contains core components of operating system• Typical operating system components include:

– Processor scheduler– Memory manager– I/O manager– Interprocess communication (IPC) manager– File system manager

1.12.2 Operating System Goals

• Users expect certain properties of operating systems– Efficiency– Robustness– Scalability– Extensibility– Portability– Security– Protection– Interactivity– Usability

Figure 1.3 Monolithic operating system kernel architecture.

1.13.1 Monolithic Architecture

Figure 1.4 Layers of the THE operating system.

1.13.2 Layered Architecture

Figure 1.5 Microkernel operating system architecture.

1.13.3 Microkernel Architecture

Figure 1.6 Client/server networked operating system model.

1.13.4 Networked and Distributed Operating Systems

• What is the difference between a purely layered architecture and a microkernel architecture?

• Which of the OS goals correspond to the following characteristics?– Users can’t access services or information w/o authorization– OS run on a variety of hardware configurations– System performance increases steadily when additional

MEM and processors are added.– The OS supports devices that were not available when it

was designed.– Hardware failure does not necessarily cause the system to

fail.

Chapter 2 – Hardware and Software ConceptsOutline2.1 Introduction2.2 Evolution of Hardware Devices2.3 Hardware Components2.3.1 Mainboards2.3.2 Processors2.3.3 Clocks2.3.4 Memory Hierarchy2.3.5 Main Memory2.3.6 Secondary Storage2.3.7 Buses2.3.8 Direct Memory Access (DMA) 2.3.9 Peripheral Devices2.4 Hardware Support for Operating Systems2.4.1 Processor2.4.2 Timers and Clocks

Chapter 2 – Hardware and Software Concepts

Outline (continued)2.4.3 Bootstrapping2.4.4 Plug and Play2.5 Caching and Buffering2.6 Software overview2.7 Application Programming Interfaces (APIs) 2.8 Compiling, Linking and Loading2.9 Firmware2.10 Middleware

Objectives• After reading this chapter, you should

understand:– hardware components that must be managed by an

operating system.– how hardware has evolved to support operating

system functions.– how to optimize performance of various hardware

devices.– the notion of an application programming interface

(API).– the process of compilation, linking and loading.

• T/F?1. OS is a resource manager, it can manage the following resources:

• processors

• memory

• secondary storage (such as hard disks)

• other I/O devices

• processes

• threads

• files

• databases

2. Most operating systems are independent from the hardware configurations, because they use device drivers to perform device-specific I/O operations.

3. Registers are high-speed memory located on processors. Data need to be loaded to registers before processors can operate on them.

4. What is a port ? What is an I/O channel?

2.3.8 Direct Memory Access (DMA)

• DMA improves data transfer between memory and I/O devices– Devices and controllers transfer data to and from

main memory directly– Processor is free to execute software instructions– DMA channel uses an I/O controller to manage data

transfer• Notifies processor when I/O operation is complete

– Improves performance in systems that perform large numbers of I/O operations (e.g., mainframes and servers)

Figure 2.4 Direct memory access (DMA).

2.3.8 Direct Memory Access (DMA)

2.4 Hardware Support for Operating Systems

• What can a processor do to enforce protection?

- Execution modes- Bound registers- Interrupts and exceptions

2.4.1 Processor• A processor implements operating system

protection mechanisms– Prevents processes from accessing privileged

instructions or memory– Computer systems generally have several

different execution modes:• User mode (user state or problem state)

– User may execute only a subset of instructions

• Kernel mode (supervisor state)– Processor may access privileged instructions and resources

on behalf of processes

2.4.1 Processor

• Memory protection and management– Prevents processes from accessing memory that has

not been assigned to them– Implemented using processor registers modified only by

privileged instructions• Interrupts and Exceptions

– Most devices send a signal called an interrupt to the processor when an event occurs

– Exceptions are interrupts generated in response to errors

– The OS can respond to an interrupt by notifying processes that are waiting on such events

Figure 2.7 Application programming interface (API).

2.7 Application Programming Interfaces (APIs)