자원 관리: CPU, 메모리, 디스크, 네트워크 등 자원을 관리하고 조정한다.
프로세스 관리: 여러 프로세스의 실행을 조정하고 CPU 시간을 분배한다.
메모리 관리: 각 프로세스에 메모리를 할당하고 가상 메모리를 통해 관리한다.
저장 장치 관리: 파일과 데이터를 저장 장치에 관리하고 효율적으로 접근할 수 있도록 한다.
입출력 장치 관리: 다양한 입력 및 출력 장치를 제어하고 관리한다.
보안: 시스템과 사용자 데이터를 보호하며, 자원 접근을 제한한다.
프로세스 관리: 프로세스의 생성, 종료, 스케줄링 및 상태 관리.
메모리 관리: 가상 메모리, 페이징, 메모리 보호 기능.
파일 시스템 관리: 데이터의 저장, 관리, 파일 권한 설정.
입출력 장치 관리: 장치 드라이버를 통해 하드웨어와 통신, I/O 스케줄링.
보안과 접근 제어: 사용자 인증, 파일 보호, 네트워크 보안.
커널 모드: 운영체제가 모든 하드웨어 자원에 직접 접근할 수 있는 모드로, 시스템의 핵심 기능을 수행한다.
유저 모드: 일반 응용 프로그램이 실행되는 모드로, 제한된 자원에만 접근할 수 있습니다. 하드웨어 접근 시 시스템 콜을 통해 커널 모드로 전환해야 한다.
시스템 콜은 유저 모드 프로그램이 커널 모드의 운영체제 서비스에 접근하는 방법이다.
프로그램이 시스템 콜 호출.
유저 모드에서 커널 모드로 전환.
운영체제가 요청된 작업 수행.
결과를 유저 모드로 반환.
운영체제는 커널 모드와 유저 모드를 통해 시스템 자원에 대한 접근을 제어하고, 프로그램 간의 메모리 격리를 통해 시스템의 안정성을 유지, 시스템 콜을 통해 안전하게 하드웨어와 상호작용하게 하며, 보안과 성능을 함께 고려한다.