[공부정리] OS란?
IT/운영체제

[공부정리] OS란?

반응형

OS : Operating System

- A software that controls the execution of application programs (응용 프로그램 실행을 통제하는 소프트웨어)

👉it is a set of functions that is executed (실행되는 기능들의 집합)

 ex) Windows, UNIX, LInux, Symbian, REX ...

 

- An interface between applications and hardware (어플리케이션과 하드웨어 사이의 인터페이스)

👉Responsible for managing resources (자원들의 관리를 담당한다)

 

- Objectives (목적)

👉Efficiency (효율성)

👉Convenience (편의성)

Services Provided by the Operating System

- Program execution (프로그램 실행)

 

- Access to computer resources (컴퓨터 자원에 접근)

👉Hardware : I/O devices and other hardware resources

👉Data : files and other data

 

- Error detection and response (오류 감지 및 대응)

👉Internal and external hardware errors

👉Software errors

👉Operating system cannot grant request of application (os가 응용 프로그램 요청을 승인 할 수 없다)

 

- Accounting and management (회계 및 관리)

👉Collect usage statistics (사용 통계 수집)

👉Monitor performance (성능 모니터링)

👉Used for billing purposes (청구 목적으로 사용)

 

kernel

- Portion of operating system that resides in the main memory (메인 메모리에 상주하는 운영 체제의 일부)

👉Core part of operating systems (os의 핵심 부분)

- Contains most frequently used functions (가장 많이 사용하는 기능들을 가지고 있다)

- Also called the nucleus (핵이라고도 불린다)

 

 

Uni-programming

- Processor must wait for I/O instruction to complete before proceeding

- Bad performance because of slow I/O operation

 

Multiprogramming Systems

- When one job needs to wait for I/O, the processor can switch to the other job

 

Time sharing Systems

- Using multiprogramming to handle multiple interactive jobs

- Processor's time is shared among multiple users

👉A time unit called a time quantum (also called time slice) is given to a job at a time

👉100 msec (1/10 sec)

- Multiple users concurrently access the system through terminals

👉Each user thinks he/she has his own CPU

- Reduces the mean response time

 

Multiprogramming VS Timesharing

- Both technologies are used in modern computers

- Multiprogramming

👉Used for batch processing, background processing

👉Less overhead than timesharing

👉Better throughput

❓Throughput : number of jobs completed in a unit time

- Timesharing

👉Used for interactive processing, foreground processing

👉More overhead than multiprogramming

👉Better response time

❗️Response time : time since a user gives a command until the command is begun execution (사용자가 명령을 내린 후 명령 실행이 시작될 때까지의 시간)

 

Process Scheduling

- Determine which program is next to be executed, in other words,

👉Which program will take a processor next (다음에 프로세서를 사용할 프로그램)

👉Which program the CPU will execute next (CPU가 다음에 실행할 프로그램)

- Also called CPU scheduling

- Process scheduling is performed by the kernel function, scheduler

- Scheduler selects the next process to run based on

👉waiting time of each program for the processor

👉priority of each program

 

Major Components of OS

- Process Management (CPU management, processor management)

- Main Memory Management

- File Management

- I/O System Management

- Secondary Storage Management

- Networking

- Information Protection and Security

- Command-interpreter System (명령 해석)

 

Networking (Distributed System)

- A distributed system is a collection independent computers

👉Each processor has its own local memory

👉The processors in the system are connected through a communication network

👉Communication takes place using a protocol

- A distributed system provides user access to various system resources

👉Computation speed-up (계산속도 향상)

👉Increased data availability

👉Enhanced reliabliity

- Networking system must provide various communication channel primitives

👉open/close connection

👉send/receive

👉channel configuration primitives

 

Modern Operating Systems

 

 

Multiprogramming and Multiprocessing

반응형

'IT > 운영체제' 카테고리의 다른 글

[공부정리] Threads and Microkernels  (0) 2020.10.30
[공부정리] Process Description and Control  (0) 2020.10.29