본문 바로가기
  • 저희는 평생 개발할 운명이걸랑요
Tech.log/운영체제

[운영체제란 ?]

by SpaciousKitchen 2021. 4. 28.

운영체제란?(Operating System, OS)

 

컴퓨터 하드웨어 위에 설치되며 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층

 

 

 

1. 협이의 운영체제(커널)

- 운영체제의 핵심 부분으로 항상 메모리에 상주하는 부분

 

2. 광의의 운영체제 

- 커널 뿐만아니라 각종 주변 시스템 유틸리티를 포함한 개념(파일 복사 등등..의 유틸리티들)

 

 

운영체제의 목적

변효경 교수님 수업 자료

- 자원을 효율적으로 관리 하는 것 (CPU,메모리등 각종 입출력 장치를 효율 적으로 관리)

  •  하드웨어(프로세서,기억장치 ,입출역 장치등) 뿐만 아니라 소프트웨어(파일,메시지 )까지 관리한다.

- 컴퓨터 시스템을 편리하게 사용할 수 있다.

 

 

 

운영체제의 분류

 

작업

- 단일 작업

  • 한번에 하나의 작업만 처리(프롬프트 상에는 한 명령의 수행이 끝내기 전에 다른 명령을 수행할 수 없다.)

- 다중 작업

  • 동시에 두개 이상의 작업 처리(Unix,MS Window등은 한명령의 수행이 끝나기 전에 다른 명령이라 프로그램을 수행할 수 있다.)

 

사용자

- 단일 사용자

  • MS-Dow, MS Window

- 다중 사용자

  • Unix,NT server

처리방식

- 일괄처리(batch processing)

  • 작업 요청을 한번에 모아서 처리한다. (초기 Punch Card처리 시스템)

- 시분할(time sharing)

  • 여러 작업을 수행할때, 작은 시간 단위로 나눠서 처리한다., 짧은 응답 시간을 갖는다.

- 실시간 (RealTime OS)

  • 정해진 시간안에 어떤일이 반드시 종료됨을 보장(미사일,반도체 장비, 로보트 제어 등)
    • Hard realtime system(경성 실시간 시스템)
    • Soft realtime system(연성 실시간 시스템)

 

*용어 정리

멀티 테스킹: 하나의 프로그램이 끝나기 전에 다른 작업을 동시에 수행한다.
멀티 프로그래밍:여러 프로그램이 메모리가 올라가 있다.
타임 쉐어링: 시분할 테스킹(CPU)의 사간을 분할하여 나누어 쓴다는 의미

멀티 프로세서: 하나의 컴퓨터에 CPU가 여러개 붙어있음

 

운영체제의 예

 

유닉스 DOS MS Window
- 코드의 대부분을 C로 작성
- 높은 이식성
- 최소한의 커널 구조
- 복잡한 시스템에 맞게 용이
-프로그램 개발에 용이
- 다양한 버전(System V, FreeBSD, Sun Os,Linux..)


- MS사에서 IBM-PC를 위해 개발
- 단일 사용자용 운영 체제, 메모리 관리 능력 한계






- 다중 작업용 GUI기반 운영체제
- 풍부한 자원 소프트웨어 







 

운영체제의 구조

 

 

 

CPU 스케줄링:누구한테 CPU를 줄까 ?

 

메모리 관리 :어떤 메모리르 어떻게 쪼개어 쓸까 ?

 

디스크 스케줄링:디스크에 파일을 어떻게 보관하지 ?

 

입출력 관리: 과거 입출력 장치와 컴퓨터 간에 어떻게 정보를 주고 받게 하지 ?

 

프로세스 관리:프로세스의 생성과 삭제, 자원 할당, 프로세스간의 협력

 

그외: 보호 시스템 ,네트워킹, 명령어와 해석기

 

 

 

to be continued..

 

 

 

'Tech.log > 운영체제' 카테고리의 다른 글

[Thread-safe]  (0) 2021.05.22
[프로세스와 스레드의 차이]  (0) 2021.05.19
[시스템 구조와 프로그램의 실행_2]  (0) 2021.04.29
[시스템 구조와 프로그램의 실행]  (0) 2021.04.28

댓글