카테고리 없음

운영체제 내용 정리

최종군 2024. 12. 6. 15:22

 

운영체제란? 

 

운영체제는 컴퓨터 시스템의 *자원들을 효율적으로 관리하며, 

사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임이다.

 

*자원 : CPU, 주기억장치, 보조기억장치, 프린터, 파일 및 정보등을 의미한다.

 

* 컴퓨터 사용자와 컴퓨터 하드웨어 간의 인터페이스로서 동작하는 시스템 소프트웨어의 일종으로,

다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공해준다. 

 

대표적인 운영체제 종류

  • Windows: Microsoft에서 개발한 운영체제로, 사용자 친화적인 GUI와 다양한 소프트웨어 호환성을 제공한다.
  • macOS: Apple에서 개발한 운영체제로, 고유의 그래픽 사용자 인터페이스와 뛰어난 보안 및 안정성을 제공한다.
  • Linux: 오픈 소스 운영체제로, 서버와 개발 환경에서 많이 사용되며, 다양한 배포판이 존재한다(예: Ubuntu, Fedora, Debian).
  • UNIX: 고대의 운영체제이지만, 현재도 많은 서버 및 기업 환경에서 사용되고 있으며, Linux와 매우 유사하다.

 

운영체제 목적 

 

1. 처리 능력(Throughput) : 일정 시간 내에 시스템이 처리하는 일의 양 (처리량 혹은 전송량)

2. 반환 시간(Turn Around Time) : 시스템에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸리는 시간이다

3. 사용 가능도(Availability) : 시스템을 사용할 필요가 있을 때 즉시 사용 가능한 정도 (가용성 혹은 유효성)

4.신뢰도(Reliability) : 시스템이 주어진 문제를 정확하게 해결하는 정도

 

운영체제 주요 기능 

 

프로세스 관리 : 

 

프로세스는 실행 중인 프로그램을 의미하며, 운영체제는 여러 프로세스가 동시에 실행되는 

멀티태스킹 환경을 관리한다. 

 

프로세스 생성 및 종료 : 새로운 프로세스가 CPU 자원을 효율적으로 공유하도록 스케줄링을 한다  

프로세스 스케줄링 : 여러 프로세스가 CPU 자원을 효율적으로 공유하도록 스케줄링을한다

프로세스 동기화 및 통신 : 여러 프로세스가 협력할 때 발생할 수 있는 충돌을 방지하고, 

서로 통신할 수 있는 메커니즘을 제공한다. 

 

 

메모리 관리 :  

 

메모리 할당 : 각 프로세스에 메모리를 할당하고, 종료된 프로세스의 메모리를 반환한다. 

가상 메모리 : 실제 RAM 용량보다 더 많은 메모리를 사용할 수 있도록 하드 디스크의 일부를 가상 

메모리로 활용한다. (시스템 효율성)

페이지 관리 : 가상 메모리에서 데이터를 페이지 단위로 관리하고, 필요한 페이지를 물리적 메모리로 가져온다. 

 

 

파일 시스템 관리 : 

파일의 생겅, 삭제, 읽기, 쓰기 등의 작업을 관리한다. 

 

파일 저장소 제공 : 데이터를 파일 형식으로 저장하고, 파일을 효율적으로 찾을 수 있도록 디렉토리 구조를 관리한다.

파일 접근 제어 : 파일에 대한 접근 권한을 설정하여 사용자가 파일을 안전하게 사용할 수 있도록 한다. 

파일 입출력 : 파일과 디스크 간의 데이터 전송을 담당한다.  

 

입출력 시스템 관리 : 

컴퓨터의 다양한 입출력 장치(키보드, 마우스, 모니터, 프린터 등)와의 상호 작용을 관리한다.

드라이버 관리 : 각 입출력 장치와 CPU 간에 효율적으로 전달하기 위해 임시 저장소를 사용한다. 

버퍼링 및 캐싱 : 데이터를 입출력 장치와 CPU 간에 효율적으로 전달하기 위해 임시저장소를 사용한다.

장치 제어 : 장치의 상태를 모니터링하고, 장치가 잘 작동하도록 제어한다.

 

사용자 인터페이스 (User Interface, UI)

운영체제는 사용자와 컴퓨터 간의 상호작용을 위한 인터페이스 제공

 

명령줄 인터페이스 (CLI): 사용자가 텍스트 명령어를 입력하여 시스템을 제어하는 방식이다.

예시: Unix의 쉘, Windows의 명령 프롬프트.

 

그래픽 사용자 인터페이스 (GUI): 아이콘, 버튼, 메뉴 등의 그래픽 요소를 통해

직관적으로 시스템을 조작할 수 있는 방식이다. 예: Windows, macOS, Linux의 GNOME, KDE 등.

 

 

보안 및 권한 관리 : 

사용자 인증 : 사용자 이름과 비밀번호를 통해 사용자를 인증하고, 사용자 권한을 설정한다. 

암호화 : 데이터의 기밀성을 보장하기 위해 데이터를 암호화하고, 저장된 데이터를 보호한다

권하 관리 : 파일 및 리소스에 대한 접근 권한을 설정하여, 사용자가 특정 자원에 접근할 수 있는 지 결정 

 

 

네트워킹 (Networking)

운영체제는 네트워크 연결을 관리하고, 데이터가 네트워크를 통해 전달될 수 있도록 지원

 

시스템 성능 관리 (System Performance Management)

운영체제는 시스템 자원의 효율적인 사용을 위해 성능을 모니터링하고 최적화합니다

 

다중 사용자 및 다중 작업 지원 

운영체제는 여러 사용자가 동시에 시스템을 사용할 수 있게 하며, 동시에 여러 작업을 실행할 수 있도록 지원한다: