asel0joo
[CS개념] 운영체제 개념 이해 본문
- 운영체제? OS(Operating System)
- 운영체제 종류? Windows, macOS, Linux 등
- 운영체제의 역할? 사용자가 컴퓨터를 사용할 수 있도록 한다.
입문자의 관점에서 운영체제를 설명하자면, 컴퓨터를 샀을 때 가장 먼저 운영체제(OS)를 깔아야 한다.
그래야 우리가 사용하는 인터넷, 게임, 한글, PPT 등을 사용할 수 있다.
운영체제에는 부가적인 기능이 있는데, 커널과 쉘이다.
커널은 공간이라고 생각하면 쉽고, 쉘은 명령어라고 생각하면 쉽다.
- 쉘 : 명령어 해석기
- 커널 : 실제로 수행하는 프로그램
쉘은 사용자가 컴퓨터를 사용할 수 있도록 하는 인터페이스를 제공한다.
- CLI, GUI 환경으로 제공
- 명령어 제공
- 커널 위에서 동작하는 응용 프로그램
- 리눅스 bash, git bash 등
그 외,
1. 시스템 콜(System Call)
- 커널에서 파일을 읽을 수 있게끔 명령을 내리는 함수를 운영체제가 제공함
- 커널을 틀어 → 쉘로 명령어 침 → 시스템 콜 → 파일 읽어옴 → 결과를 사용자에게 제공
- 사용자 모드 : 응용 프로그램 동작 중 중요한 정보를 가지고 동작을 하는 경우(ex-개인정보 오갈 때), 반드시 커널에 요청하여 시스템 콜을 하도록 함, 발생된 결과만 응용 프로그램에 제공함
- 커널 모드 : 중요한 정보들은 운영체제(커널)만 거칠 수 있도록 해놓음
2. API(Application Programming Interface)
- 함수, 라이브러리라고 이해하면 됨
- 함수든 변수든 결국 주소가 있고, 해당 주소에서 코드를 실행하는 형태
✔️ 운영체제의 역할
- 시스템 자원(System Resource) 관리자
- 컴퓨터 하드웨어
- CPU(중앙처리장치), Memory(DRAM, RAM)
- I/O Device(입출력 장치)
- 모니터, 마우스, 키보드, 네트워크
- 저장매체 : SSD, HDD(하드디스크)
- 컴퓨터 하드웨어
- 사용자와 컴퓨터 사이에서 커뮤니케이션 지원 : 쉘, 커널, 시스템 콜
- 응용 프로그램 제어
'IT 개념정리' 카테고리의 다른 글
[CS개념] 리눅스 명령어 : sudo, clear, pwd, cd, chmod, cat, rm (0) | 2023.03.21 |
---|---|
[CS개념] 시스템 소프트웨어 : 리눅스 파일 시스템, 리눅스 쉘 (0) | 2023.03.21 |
[CS개념] 가상 메모리, MMU, TLB (1) | 2023.03.17 |
[CS개념] 경우의 수 : 순열(Permutation), 조합(Combination) (0) | 2023.03.17 |
[CS개념] 프로세스 구조, 컨텍스트 스위칭, 프로세스 간 통신 (0) | 2023.03.16 |