[Operating System] 운영체제란?

olwooz·2023년 1월 23일
0

Operating System

목록 보기
1/10

운영체제

- 하드웨어/소프트웨어 자원을 효율적으로 관리해주는 시스템 소프트웨어
- 사용자가 컴퓨터를 쉽게 다룰 수 있게 해주는 인터페이스

운영체제의 역할

역할
세부사항
프로세스 관리- 프로세스, 스레드
- 스케줄링
- 동기화
- IPC 통신
저장장치 관리- 메모리 관리
- 가상 메모리
- 파일 시스템
네트워킹- TCP/IP
- 기타 프로토콜
사용자 관리- 계정 관리
- 접근권한 관리
I/O 디바이스 관리- 순차접근 장치
- 임의접근 장치
- 네트워크 장치

1. 프로세스 관리

- 운영체제에서 작동하는 응용 프로그램을 관리하는 기능
- 프로세서(CPU)를 관리하는 것이라고 볼 수도 있음
- CPU 소유권 할당, 프로세스 생성/삭제, 자원 할당 및 반환 등 관리

2. 저장장치 관리

- 1차 저장장치에 해당하는 메인 메모리와 2차 저장장치에 해당하는 하드디스크, NAND등을 관리하는 기능

1차 저장장치 (Main Memory)
- 프로세스에 할당하는 메모리 영역의 할당과 해제
- 각 메모리 영역 간의 침범 방지
- 메인 메모리의 효율적 활용을 위한 가상 메모리 기능

2차 저장장치 (HDD, NAND Flash Memory 등)
- 파일 형식의 데이터 저장
- 이런 파일 데이터 관리를 위한 파일 시스템을 OS에서 관리

3. 네트워킹

- 컴퓨터 활용의 핵심
- TCP/IP 기반의 인터넷에 연결하거나 응용 프로그램이 네트워크를 사용하려면 
  운영체제에서 네트워크 프로토콜 지원 필요
- 현재 상용 OS들은 다양하고 많은 네트워크 프로토콜 지원

4. 사용자 관리

- 하나의 PC를 여러 사람이 사용하는 경우 운영체제는 각 계정을 관리할 수 있는 기능 필요
- 파일이나 시스템 자원에 접근 권한 지정할 수 있도록 지원

5. 디바이스 드라이버

- 시스템에 연결된 하드웨어를 운영체제에서 인식하고 관리해 응용 프로그램이 하드웨어를 사용할 수 있게 함
- 운영체제 안에서 하드웨어를 추상화해주는 계층

운영체제의 구조

GUI, 시스템콜, 커널, 드라이버가 OS에 해당

GUI

- 사용자가 컴퓨터와 상호작용할 수 있도록 하는 사용자 인터페이스의 한 형태(그래픽)
- 아이콘을 마우스로 클릭하는 동작으로 컴퓨터와 상호작용 가능

CUI: 그래픽이 아닌 명령어로 처리하는 인터페이스

시스템콜

- 운영체제가 커널에 접근하기 위한 인터페이스 
- 유저 프로그램이 운영체제의 서비스를 받기 위해 커널 함수를 호출할 때 씀
- 유저 프로그램이 I/O 요청으로 트랩을 발동하면 올바른 I/O 요청인지 확인한 후 
  유저 모드가 시스템콜을 통해 커널 모드로 변환되어 실행됨
- 컴퓨터 자원에서 대한 직접 접근 차단 → 프로그램을 다른 프로그램으로부터 보호
- (프로세스, 스레드, 메모리) → 시스템콜 → 커널 → OS
- 하나의 추상화 계층 
  → 네트워크 통신, 데이터베이스같은 낮은 단계의 영역 처리를 많이 신경 쓰지 않고 프로그램 구현 가능

커널

 - 운영체제의 핵심 부분이자 시스템콜 인터페이스를 제공
 - 보안, 메모리, 프로세스, 파일 시스템, I/O 디바이스, I/O 요청 관리 등 운영체제의 중추적 역할 수행

드라이버

- 하드웨어를 제어하기 위한 소프트웨어

0개의 댓글