운영체제는 컴퓨터와 사용자에게 프로그램과 서비스를 실행할 수 있는 환경을 제공합니다
운영체제는 사용자에게 다양한 서비스를 제공합니다.
- I/O 작업
프로그램에 I/O 장치나 파일이 필요할 수 있습니다.
- 프로그램 실행
시스템은 프로그램을 메모리에 로드하고 그 프로그램을 실행합니다.
그리고 정상적으로 또는 오류가 발생하면 프로그램을 종료할 수 있어야 합니다.
- 사용자 interface
거의 모든 운영체제는 사용자 인터페이스, UI를 가지고 있습니다.
- File System 조작
프로그램은 파일과 디렉토리를 읽고/쓰고, 생성/삭제하고, 검색하고, 파일 정보를 나열하고, 권한 관리를 해야 합니다.
- 통신
통신은 shared memory를 이용하거나 packets의 이동을 통해서 이루어질 수 있다.
네트워크를 통해서 컴퓨터간의 통신을 할 수 있습니다.
- 에러 탐지
운영체제는 가능한 계속해서 에러를 탐지하고 있어야 합니다.
에러에 대해서 운영체제는 컴퓨터가 제대로 작동할 수 있도록 적적한 조치를 취해야 합니다.
// CPU, 메모리, 하드웨어, I/O장치, 사용자 프로그램 등에서 에러가 발생할 수 있습니다.
시스템의 효율적인 운영을 위한 서비스
- 리소스 할당
여러 사용자가 접근하거나 여러 작업이 동시에 실행되는 경우 각각에 리소스를 할당해야 합니다.
🍥 메모리, CPU, I/O장치 등
- Accounting
어떤 사용자가 얼마만큼 어떤 종류의 컴퓨터 리소스를 사용하는지 추적합니다.
이 데이터를 통해 한 유저가 CPU를 너무 오래 사용하면, 다른 CPU를 사용할 수 있게 합니다. 이를 통해서 모든 CPU가 동등한 시간만큼 사용될 수 있도록 합니다.
- Security
외부의 접근으로부터 시스템을 보호하려면 사용자의 인증이 필요합니다.
잘못된 접근으로부터 외부 I/O장치의 보호까지 포함됩니다.
- Protection
모든 시스템 리소스에 대한 모든 접근이 제어가 되고 있는지 확인합니다.