운영체제.
운영체제는 컴퓨터 시스템의 핵심 소프트웨어로,
하드웨어와 응용 프로그램 사이에서 중개자 역할을 수행하는 시스템 소프트웨어입니다.
운영체제는 컴퓨터 자원을 효율적으로 관리하고, 응용 프로그램이 원활하게 실행될 수 있는 환경을 제공합니다.
- 컴퓨터 하드웨어를 관리하는 프로그램
- 응용 프로그램의 토대를 제공해주는 프로그램
- 컴퓨터의 사용자와 컴퓨터 하드웨어 사이에 중간 매개체 역할을 해주는 프로그램
컴퓨터 시스템의 구성요소.
하드웨어 / 운영체제 / 응용프로그램 / 사용자
커널((Kernel).
커널(Kernel)은 운영체제의 핵심 부분으로,
하드웨어와 응용 프로그램 사이에서 상호 작용하는 핵심 소프트웨어 컴포넌트입니다.
커널은 운영체제의 핵심 기능을 수행합니다.
시스템 쉘(System Shell).
시스템 쉘(System Shell)은 사용자와 운영체제 간의 인터페이스 역할을 수행하는 프로그램입니다.
쉘이 제공하는 명령어를 통해 사용자는 운영체제에게 작업을 요청하고 결과를 받을 수 있습니다.
쉘은 사용자의 명령을 해석하고 실행하며, 이를 위해 커널과 상호 작용합니다.
쉘은 CLI(Command Line Interface) 형태일 수도 있고, GUI(Graphical User Interface) 형태일 수도 있습니다.
주로 텍스트 기반의 명령줄 인터페이스를 사용하여 명령어를 입력하고 실행합니다.
커널과 시스템 쉘이 함께 작동하여 사용자가 운영체제와 상호 작용할 수 있도록 합니다.
사용자는 시스템 쉘을 통해 명령어를 입력하여 커널의 기능을 활용하고,
커널은 이를 실행하여 요청된 작업을 수행합니다.
운영체제의 역할 관점에 따른 분류.
컴퓨터의 용도에 따라 운영체제의 설계 방향이 달라진다.
사용자 관점.
한 사용자가 자원을 독점하는 경우에는 최대한 편리함을 유지하고
자원 관리를 신경쓸 필요가 없으며 개인 PC 등이 있다.
여러 사용자와 상호작용 하는 경우 통신에 신경써야하며,
터치 스크린, 음성인식 등이 있다.
인터페이스가 거의 없는 경우라면 사용자 관점을 제외해서 기획하고
임베디드 장치가 있다.
시스템 관점.
- 자원할당자
모든 자원들을 어떻게 할당할 건지 결정, 자원들을 효율적으로 쓸 수 있게끔 한다.
CPU시간, 메모리 공간, 파일 저장 공간, 입출력 장치
- 제어 프로그램
I/O 장치들, 사용자의 프로그램의 실행을 관리하고, 오류와 오용을 방지한다.
운영체제의 목적.
- 사용자에게 컴퓨터 프로그램을 효율적이고 편리하게 실행할 수 있는 환경을 제공
- 컴퓨터 자원의 할당, 이 할당은 공정해야하며 효율적으로 이루어져야 함
- 제어 프로그램으로 사용자 프로그램의 실행을 감독하여
오류와 컴퓨터 오용을 방지하고 입출력 장치의 제어와 동작을 관리
운영체제의 역할.
자원 관리: 운영체제는 컴퓨터 시스템의 하드웨어 자원인 중앙처리장치(CPU), 메모리, 디스크 공간, 입출력 장치 등을 관리합니다. 이는 자원의 할당, 스케줄링, 접근 제어 등을 포함합니다. 운영체제는 다양한 응용 프로그램들이 자원을 공유하며 효율적으로 사용할 수 있도록 조절합니다.
프로세스 관리: 운영체제는 실행 중인 응용 프로그램을 관리하고 제어합니다. 프로세스 스케줄링을 통해 다수의 프로세스를 동시에 실행하고, 프로세스 간의 통신과 동기화를 담당합니다. 또한, 프로세스의 생성, 종료, 일시 정지, 재개 등의 기능을 제공합니다.
메모리 관리: 운영체제는 시스템의 메모리를 효율적으로 관리합니다. 이는 프로그램의 실행에 필요한 메모리 공간을 할당하고, 메모리의 주소 변환을 처리하는 것을 포함합니다. 또한, 가상 메모리 기법을 사용하여 실제 물리적인 메모리보다 큰 프로그램을 실행할 수 있도록 합니다.
파일 시스템 관리: 운영체제는 디스크 공간을 관리하고 파일을 조직화하여 저장합니다. 파일의 생성, 삭제, 읽기, 쓰기 등의 작업을 처리하고, 파일에 대한 접근 권한을 관리합니다. 또한, 디렉토리 구조를 제공하여 파일들을 계층적으로 관리할 수 있도록 합니다.
입출력 관리: 운영체제는 입출력 장치와의 효율적인 통신을 관리합니다. 입출력 장치 드라이버를 통해 장치의 제어와 데이터 전송을 처리하고, 입출력 장치와의 동기화를 담당합니다.
사용자 인터페이스: 운영체제는 사용자와 컴퓨터 간의 상호 작용을 가능하게 하는 사용자 인터페이스를 제공합니다. 이는 명령줄 인터페이스(Command Line Interface, CLI)나 그래픽 사용자 인터페이스(Graphical User Interface, GUI) 형태로 제공될 수 있습니다.
이와 같은 역할들을 통해 운영체제는 컴퓨터 시스템을 관리하고, 응용 프로그램의 실행 환경을 제공하여 사용자에게 편리하고 안정적인 컴퓨팅 환경을 제공합니다.
'COMPUTER SCIENCE' 카테고리의 다른 글
CPU 스케쥴링 및 스케쥴링 알고리즘 (0) | 2023.06.07 |
---|---|
프로세스 개념과 프로세스 스케쥴링 (0) | 2023.06.07 |
반가산기와 전가산기 그리고 Oscillator (0) | 2023.06.05 |
논리회로 게이트 종류 - AND, OR, NOT, NAND, NOR, XOR, XNOR (0) | 2023.06.05 |
컴퓨터 시스템과 컴퓨터 주요 구성 요소 (0) | 2023.06.05 |