Notice
Recent Posts
Recent Comments
05-21 07:17
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

Byeol Lo

2.1 Operating-System Services 본문

OS/OS Design

2.1 Operating-System Services

알 수 없는 사용자 2024. 4. 7. 15:30

 운영체제는 프로그램을 실행하기 위한 환경을 제공하는데, 프로그램 및 해당 프로그램의 사용자에게 일부 서비스를 제공한다고 보면 된다.

 

  • User Interface - 거의 모든 운영 체제에는 사용자 인터페이스(UI)가 있다. 이 인터페이스는 여러 형태로 나타날 수 있는데, 가장 흔한 것은 GUI이다. 그 외에 CLI, NUI 등등 많다.
  • Program Execution - 시스템은 프로그램을 메모리로 로드하고 그 프로그램을 실행할 수 있어야 한다. 프로그램은 실행을 정상적으로 또는 오류가 일어나는 형태로 종료할 수 있어야 한다.
  • I/O Operations - 실행 중인 프로그램은 파일 또는 I/O 장치를 사용할 수 있으며, 특정 장치에 대해서는 특별한 기능이 필요할 수 있다(예: 네트워크 인터페이스에서 읽기 또는 파일 시스템에 쓰기). 사용자는 효율성과 보호를 위해 일반적으로 I/O 장치를 직접 제어할 수 없기 때문에 운영 체제는 I/O를 수행하기 위한 방법을 제공해야 한다.
  • File-System Manipulation - 파일 시스템은 프로그램이며, 파일 및 디렉토리를 쓰는 것이 필요하다. 또한, 이름으로 파일을 생성하고, 삭제하고, 특정 파일을 찾고, 파일 정보를 나열해야 한다. 마지막으로 일부 운영체제는 파일 소유권에 따라 파일이나 디렉토리에 대한 액세스를 허용하거나 거부하기 위한 권한 관리를 포함한다. 많은 운영체제는 다양한 파일 시스템을 제공하여 개인의 선택을 허용하거나 특정 기능이나 성능 특성을 제공하기도 한다.
  • Communications - 프로세스와 프로세스 간의 정보 교환을 담당한다. 보통 통신은 공유 메모리를 통해 구현될 수 있고, 두 개 이상의 프로세스가 메모리의 공유 메모리를 읽어서 통신을 한다. 또는 메시지 전달을 통해서도 구현될 수 있으며, 여기서 운영체제에 의해 사전 정의된 형식의 정보 패킷이 프로세스 간에 이동된다.
  • Error Detection - 운영체제는 지속적으로 오류를 감지하고 수정해야 하는데, 오류는 CPU 및 메모리 하드웨어 I/O 장치 그리고 사용자 프로그램에서 발생할 수있다. 각 유형의 오류에 대해 운영체제는 올바른 및 일관된 컴퓨팅을 보장하기 위해 적절한 조치를 취해야 하며, 해당 오류가 발생한 프로세스를 종료하거나 오류 코드를 반환하여 프로세스가 오류를 감지하고 필요한 경우 수정할 수 있도록 할 수 있다.

 

  • Resource Allocation - 동시에 여러 프로세스가 실행 중일 때, 각각에게 자원을 할당해야 한다. 운영 체제는 많은 다양한 자원을 관리한다. 일부 자원은 특별한 할당 코드를 갖고 있을 수 있고, 다른 자원은 훨씬 일반적인 요청 및 해제 코드를 가지고 있을 수 있다.
  • Logging - 어떤 프로그램이 얼마나 많은 컴퓨터 자원을 사용하는지 기록하는 용도이다. 이 기록은 회계 또는 단순히 사용량 통계를 축적하기 위해 사용될 수 있으며, 사용량 통계는 컴퓨팅 서비스를 개선하기 위해 시스템 관리자가 시스템을 재구성하려는 경우에 유용한 도구일 수 있다.

 

'OS > OS Design' 카테고리의 다른 글

2.3 System Calls  (1) 2024.04.08
2.2 User and Operating-System Interface  (0) 2024.04.07
1.9 Kernel Data Structures  (0) 2024.04.06
1.8 Distributed Systems  (0) 2024.04.06
1.7 Virtualization  (0) 2024.04.06
Comments