운영체제란
하드웨어를 포함한 리소스를 제어하고
(리소스: 시스템 자원 어떤 목적에 이용할 수 있는 하드웨어 포함한 모든 것)
(메모리를 의미
각 프로그램은 운영체제가 남의 리소스를 함부로 침범 못하게 되어있음 )
프로그램을 실행해주는 시스템 소프트웨어
(프로그램을 만드는 사람이 모든 시스템을 알지 못하더라도
프로그램을 작성하 수 있게 도와줌)
운영체제의 기능
프로그램이 잘 실행될 수 있도록 도와주는 소프트 웨어
-프로세스 관리
프로세스는 실행중인 프로그램
- 리소스 관리 : 프로세스에게 필요한 리소스를 할당하는 기능
- 프로세스 상태 관리 : 각 프로세스의 상태를 관리하는 기능
- 멀티 프로세싱 : 동시에 여러 프로세스를 실행하는 기능
-메모리 관리
CPU에서 실행될 수 있도록 메모리에 정보를 올리거나 내림
- 메모리 관리 : 메모리에 프로그램을 올리고 프로세스에게 필요한 메모리를 할당함
- 가상 메모리 : 실제 메모리가 적더라도 프로세스를 실행할 수 있도록 도와주는 기술
실제 주소가 아닌 가상의 주소로 메모리를 관리한다
정보보호 : 프로세스가 실제 주소를 모르기에 메모리 주소를 악용한 침범이 불가능
연속 주소 제공 : 프로세스가 보는 주소는 연속된 주소로 처리할 수 있어서 효율적인 처리가 가능
-파일시스템 관리
어떤 방식을 사용하든지 프로그램에서 고민하지 않고 읽고 쓰게 해주는 기능
파일 시스템 : 저장 장치에 파일을 읽고 쓰는 방법
-네트워크 관리
프로토콜을 지원하여 통신이 가능하도록 함
다양한 프로토콜을 지원하여 프로그램이 네트워크를 사용할 수 있도록 함
포트를 관리하여 이미 사용중인 포트는 사용할 수 없도록 제어
운영체제의 종류
-윈도우
-mac
-리눅스
-컨테이너화
docker
실행에 필요한 모든 환경과 패키지를 포함하여 하나로 묶는 기술
내가 사용하는 운영체제에 상관없이 동일한 개발환경을 구성할 수 있음
'공부기록 > CS' 카테고리의 다른 글
11주차 블로그 챌린지 - 네트워크 (0) | 2023.11.01 |
---|---|
11주차 블로그 챌린지 - 메모리 (2) | 2023.10.31 |
혼공 chapter 10 - 1 프로세스 개요 (0) | 2023.10.30 |
프로세스 (0) | 2023.10.30 |