-
프로세스 관리
프로세스란
프로세스는 실행중인 프로그램이다. 프로그램은 디스크에 존재하는 수동적인 개체인 반면 프로세스는 다음 수행할 명령을 지정하는 PC(Program Counter)를 가지고 메모리에 동작하는 능동적인 개체다. 즉 디스크에 존재하는 프로그램이 메모리에 적재되어 실행되면 프로세스라고 불린다. 프로세스는 작업 수행을 위해 자원을 필요로 하며 프로세스가 종료되면 재사용 가능 자원을 반환해야 한다. 그리고 시스템은 프로세스의 집합으로 구성되는데, 프로세스 중 일부는 운영체제 프로세스들이며, 나머지는 사용자 프로세스들이다.
운영체제의 프로세스 관리 활동
- 사용자 프로세스와 시스템 프로세스의 생성과 제거
- CPU에 프로세스와 스레드를 스케쥴링
- 프로세스를 일시 주이(suspend)했다가 재개(resume)할 수 있다.
- 프로세스 동기화와 통신을 위한 메커니즘 제공
- 교착상태 처리를 위한 메커니즘이 있다.
메인 메모리 관리
메인 메모리란
메인 메모리는 다양한 크기의 범위를 갖는 바이트의 대용량 배열이고, 각 바이트는 자신의 주소를 가진다. 처리하기 전후의 모든 데이터는와 실행되기 위한 명령어는 메인 메모리에 있어야만 한다.
운영체제의 메인 메모리 관리 활동
메모리 관리는 언제, 무엇이 메모리에 있어야 하는지를 결정한다. 운영체제가 하는 메모리 관리는 다음과 같다.
- 현재 메모리의 어느 부분이 어느 프로세스에 의해 사용되는지 파악한다.
- 어떤 프로세스들을 메모리에 적재하고 제거할 것인가를 결정한다.
- 필요에 따라 메모리 공간을 할당하고 회수한다.
저장소 관리
저장소란
운영체제는 정보 저장소에 대한 공통적인 논리적 뷰를 제공하는데, 이를 파일(file)이라고 한다. 모든 데이터는 파일과 폴더(리눅스에서는 디렉토리)로 이루어져 있고 각 저장매체(HDD, USB 등)는 장치에 의해 제어된다.
운영체제의 저장소 관리 활동
- 파일과 디렉토리 생성 및 제거
- 파일을 2차 저장소에 매핑
- 파일을 안정적인 저장매체에 백업
- 파일과 디렉토리를 조작할 수 있는 기본 명령어(primiatives)의 제공
- 다음은 리눅스에서 사용하는 명령어다.
- 파일 생성 : touch, vim or vi
- 파일 제거 : rm "파일이름"
- 디렉토리 생성 : mkdir "디렉토리이름"
- 디렉토리 삭제 : rmdir "디렉토리이름"
- 파일 복사 : cp "복사할파일" "복사된파일을 저장할 디렉토리 이름"
운영체제의 대용량 저장소 관련 동작
- 사용 가능 공간 관리
- 저장소 할당
- 디스크 스케쥴링
- 저장장치 분할
- 보호
- 마운팅과 언마운팅
- 마운팅과 언마운팅은 윈도우 사용자에게는 생소한데, 리눅스에서 새로운 저장 장치를 연결할 때 사용하는 기법이다. 호스트에서 USB나 다른 저장 장치가 연결되면 리눅스에서 사용할 수 있게 마운팅을 해줘야 한다.
'시스템 > 운영체제' 카테고리의 다른 글
운영체제 서비스 (0) 2020.05.11 입출력 서브시스템 (0) 2020.05.08 멀티프로그래밍 환경에서의 문제점 (0) 2020.05.07 멀티프로그래밍 및 멀티태스킹 (0) 2020.05.04 클러스터형 시스템(Clustered System) (0) 2020.05.04