Operating System Structures

시작하기. 무료입니다
또는 회원 가입 e메일 주소
Operating System Structures 저자: Mind Map: Operating System  Structures

1. Communication Models

1.1. message passing

1.2. shared memory

2. Layered Approach

2.1. OS divided into a number of layers (levels)

2.1.1. The bottom layers hardware(Layer 0)

2.1.2. The highest layers user interface(Layer N)

2.2. Advantage

2.2.1. Simplicity of construction and debugging

2.3. Disadvantage

2.3.1. The careful definition and interaction of the layers

2.3.2. Less efficient

3. Microkernel

3.1. Small operating system core

3.2. Contains only essential core operating systems functions

3.3. Many services traditionally included in the operating system are now external subsystems

3.3.1. Device drivers

3.3.2. File systems

3.3.3. Virtual memory manager

3.3.4. Windowing system

3.3.5. Security services

3.4. Benefits

3.4.1. Extensibility

3.4.2. Flexibility

3.4.3. Reliability

3.4.4. Portability

4. Operating System Design

4.1. Start by defining goals and specifications

4.2. Design Goals

4.2.1. User goals

4.2.1.1. convenient to use

4.2.1.2. easy to learn

4.2.1.3. reliable

4.2.1.4. safe

4.2.1.5. fast

4.2.2. System goals

4.2.2.1. easy to design

4.2.2.2. implement

4.2.2.3. maintain

4.2.2.4. as well as flexible

4.2.2.5. reliable

4.2.2.6. error-free

4.2.2.7. efficient

5. Operating System Services

5.1. User interface

5.1.1. Almost all operating systems have a user interface (UI)

5.2. Program execution

5.2.1. The system must be able to load a program into memory and to run that program, end execution, either normally or abnormally (indicating error).

5.3. I/O operations

5.3.1. Since user programs cannot execute I/O operations directly, the operating system must provide some means to perform I/O.

5.4. File-system manipulation

5.4.1. Program capabilities to read and write files and directories, create and delete them, search them, list file Information, permission management.

5.5. Communications

5.5.1. Processes may exchange information, on the same computer or between computers over a network

5.6. Error detection

5.6.1. Ensure correct computing by detecting errors in the CPU and memory hardware, in I/O devices, or in user programs.

6. Additional Operating System Functions

6.1. Resource allocation

6.1.1. allocating resources to multiple users or multiple jobs running at the same time.

6.2. Accounting

6.2.1. keep track of and record which users use how much and what kinds of computer resources for account billing or for accumulating usage statistics.

6.3. Protection and security

6.3.1. The owners of information stored in a multiuser or networked computer system may want to control use of that information, concurrent processes should not interfere with each other.

7. System Calls

7.1. provide the interface between a running program and the operating system.

7.2. Three general method

7.2.1. Pass the parameters in registers.

7.2.2. Parameters stored in a block, or table, in memory, and address of block passed as a parameter in a register.

7.2.3. Parameters placed, or pushed, onto the stack by the program and popped off the stack by the operating system.

7.3. Types

7.3.1. Process control

7.3.2. File management

7.3.3. Device management

7.3.4. Information maintenance

7.3.5. Communications

7.3.6. Protection