본문 바로가기
컴퓨터 과학(Computer Science)

[컴퓨터배우기 09]: 운영체제(Operating system)

by 우주주민 2023. 1. 12.
반응형

운영체제
운영체제

[운영체제(Operating system)]

 

<01. 운영체제 개념>

 

운영 체제(OS)는 컴퓨터 사용자와 컴퓨터 하드웨어 사이의 중개 역할을 하는 소프트웨어 프로그램입니다. 운영 체제의 주요 기능은 사용자가 편리하고 효율적으로 프로그램을 실행할 수 있는 환경을 제공하는 것입니다.

 

운영 체제의 개념은 몇 가지 주요 구성 요소로 나눌 수 있습니다:

 

1. 자원 관리: 운영 체제는 메모리, 처리 능력 및 스토리지와 같은 자원을 관리하고 할당합니다.

2. 메모리 관리: 운영 체제는 메모리에 대한 액세스를 관리하고 조정합니다.

3. 프로세스 관리: 운영 체제는 다양한 프로세스의 실행을 관리하고 조정합니다.

4. 정보 관리: 운영 체제는 파일과 디렉토리를 관리하고 구성합니다.

5. 보안: 운영 체제는 컴퓨터와 데이터를 무단으로 액세스하는 것 으로부터 보호하는 메커니즘을 제공합니다.

 

이 다섯 가지 개념은 운영체제의 기본 개념을 구성하는 기본 기능입니다. 다만 운영체제의 종류에 따라 기기 관리, 네트워크 관리 등 보다 복잡한 기능을 가질 수 있습니다.

 

 

<02. 프로세스 관리>

 

프로세스 관리는 프로세스의 생성, 실행 및 조정을 담당하는 운영 체제의 핵심 기능입니다.

 

프로세스는 실행 중인 프로그램이며, 프로그램 코드, 데이터 및 실행 컨텍스트를 포함하는 프로그램 실행의 기본 단위입니다. 프로세스에는 자체 메모리 공간, 시스템 리소스 및 실행 상태가 있습니다.

 

프로세스 관리에는 몇 가지 주요 태스크가 포함됩니다:

 

1. 프로세스 생성: 운영 체제는 프로그램 실행을 위한 사용자 요청이나 시스템 초기화 프로세스와 같은 시스템 이벤트에 대응하여 새로운 프로세스를 생성합니다.

2. 프로세스 스케줄링: 운영 체제는 다음에 실행할 프로세스를 결정하고 해당 프로세스에 CPU를 할당합니다.

3. 프로세스 실행: 운영 체제가 프로세스를 메모리에 로드하고 프로세스를 실행합니다.

4. 프로세스 동기화: 운영 체제는 여러 프로세스가 효율적으로 함께 작동하고 서로 간섭하지 않도록 여러 프로세스의 활동을 조정합니다.

5. 프로세스 종료: 운영 체제는 프로세스가 실행을 완료하거나 더 이상 필요하지 않을 때 프로세스를 종료합니다.

 

운영 체제마다 프로세스 관리를 위해 서로 다른 알고리즘과 기술을 사용합니다. 한 번에 하나의 프로세스만 실행할 수 있는 단일 태스크 모델을 사용하는 경우도 있고 여러 프로세스를 동시에 실행할 수 있는 멀티태스킹 모델을 사용하는 경우도 있습니다.

 

일반적으로 운영 체제는 스케줄링 알고리즘을 사용하여 프로세스 응답성, 시스템 처리량 및 리소스 활용도 간의 균형을 유지합니다. 몇 가지 예는 다음과 같습니다:

 

1. FCFS 스케줄링 알고리즘(First Come First Serve))

2. SJF스케줄링

3. 우선순위 스케줄링

4. RR(Round Robin)

 

각 알고리즘은 서로 다른 특성과 트레이드오프를 가지고 있습니다. 일부는 특정 사용 사례에 적합하고 일부는 실시간 시스템에 적합합니다.

 

 

<03. 기억장치 관리>

 

메모리 관리는 RAM(Random Access Memory)으로도 알려진 컴퓨터의 메인 메모리에 대한 액세스를 관리하고 조정하는 운영 체제의 핵심 기능입니다.

 

메모리 관리의 주요 목표는 시스템의 메모리가 효율적으로 사용되고 시스템에서 실행되는 다양한 프로세스가 작업을 실행하는 데 필요한 메모리를 갖도록 하는 것입니다.

 

메모리 관리에는 몇 가지 주요 작업이 포함됩니다:

 

1. 메모리 할당: 운영 체제는 메모리를 할당할 프로세스와 각 프로세스에 할당할 메모리 양을 결정합니다.

2. 메모리 관리 알고리즘: 운영 체제는 다양한 알고리즘을 사용하여 조각화 및 페이징과 같은 메모리의 할당 및 할당 해제를 관리합니다.

3. 메모리 보호: 운영 체제는 하드웨어 및 소프트웨어 메커니즘을 사용하여 한 프로세스의 메모리가 다른 프로세스 또는 운영 체제 자체에 의해 액세스되는 것을 방지합니다.

 

메모리 관리에 사용되는 핵심 기술 중 하나는 메모리 페이징입니다. 페이징 시스템에서 운영 체제는 메모리를 페이지라고 불리는 고정 크기의 블록으로 나누고 프로세스의 가상 메모리도 페이지로 나뉩니다. 프로세스가 메모리에 액세스해야 할 때 운영 체제는 페이지 테이블을 사용하여 프로세스가 사용하는 가상 메모리 주소를 컴퓨터의 하드웨어가 사용하는 물리적 메모리 주소로 변환합니다.

 

메모리 관리에 사용되는 또 다른 기술은 메모리 분할입니다. 세그먼트화는 페이징과 비슷하지만 고정 크기 블록 대신에 메모리는 가변 크기 세그먼트로 나뉘는데, 이 세그먼트는 코드와 데이터와 같은 프로세스의 다른 부분에 해당합니다.

 

각 접근 방식에는 고유한 이점과 절충점이 있으며, 운영 체제마다 메모리 관리 기술의 조합이 다릅니다. 운영 체제가 메모리 관리를 돕기 위해 제공하는 기능 중 일부는 다음과 같습니다:

 

1. 스왑(swap): 일부 시스템에서는 RAM이 가득 차서 프로세스가 더 많은 메모리를 요구할 경우 운영 체제가 일시적으로 프로세스를 하드 디스크로 전송하여 일부 RAM을 다른 프로세스에 사용할 수 있도록 할 수 있습니다.

2. 가상 메모리: 이 기능을 사용하면 운영 체제에서 하드 디스크를 사용하여 시스템에 있는 물리적 RAM보다 더 많은 메모리를 시뮬레이션할 수 있습니다.

 

전반적으로, 메모리 관리의 목표는 시스템 안정성을 유지하고 오류를 방지하는 동시에 실행 중인 프로세스의 요구를 충족하기 위해 컴퓨터의 메모리 리소스를 효과적으로 사용하는 것입니다.

 

 

<04. 정보 관리>

 

정보 관리는 컴퓨터의 저장 장치에 있는 파일과 디렉터리를 관리하고 구성하는 운영 체제의 기능입니다.

 

운영 체제의 파일 관리 시스템은 하드 드라이브와 솔리드 스테이트 드라이브와 같은 컴퓨터의 저장 장치에 있는 파일과 디렉터리를 구성하고 추적하는 역할을 합니다. 파일 관리 시스템은 사용자와 프로그램이 파일과 디렉터리를 만들고, 액세스하고, 수정할 수 있는 방법을 제공합니다.

 

운영 체제에서 정보 관리의 주요 구성 요소는 다음과 같습니다:

 

1. 파일 및 디렉토리 구성: 운영 체제는 파일 및 기타 디렉터리를 포함하는 디렉토리와 함께 계층 파일 시스템의 스토리지 장치에 있는 파일 및 디렉토리를 구성합니다.

2. 파일 액세스: 운영 체제는 사용자와 프로그램이 저장 장치의 파일과 디렉터리에 액세스하고 수정할 수 있는 방법을 제공합니다.

3. 파일 및 디렉토리 보호: 운영 체제는 스토리지 장치의 파일 및 디렉터리를 무단 액세스 또는 수정으로부터 보호하는 메커니즘을 제공합니다.

4. 파일 및 디렉토리 보안: 운영 체제는 멀웨어 및 랜섬웨어와 같은 다양한 유형의 보안 위협으로부터 스토리지 장치의 파일 및 디렉터리를 보호하는 메커니즘을 제공합니다.

 

운영 체제의 파일 관리 시스템은 다음과 같은 다양한 기능을 가질 수 있습니다:

 

1. 파일 및 디렉토리 조작: 만들기, 읽기, 업데이트, 삭제, 복사, 이름 바꾸기, 검색 등.

2. 파일 및 디렉토리 권한: 운영 체제는 파일 및 디렉터리에 권한을 할당하여 파일을 읽고, 쓰고, 실행할 수 있는 사용자를 제어할 수 있습니다.

3. 백업 및 복구: 시스템에서 정보의 가용성과 일관성을 보장하는 기능입니다.

4. 디스크 및 파일 조각 모음: 디스크 액세스 시간을 향상시키기 위해 디스크 저장소의 파일을 재구성하는 프로세스입니다.

 

전반적으로, 정보 관리의 목표는 사용자와 프로그램이 컴퓨터의 저장 장치에 있는 파일과 디렉터리에 접근, 관리 및 구성할 수 있는 편리하고 효율적인 방법을 제공하는 것입니다. 또한 저장된 정보의 데이터 무결성, 보안 및 접근성을 보장하여 시스템의 성능과 안정성을 향상시키는 데 도움이 됩니다.

반응형

댓글