스케줄링 목적공평성: 특정 프로세스가 실행되지 않는 경우가 없도록 해야한다.효율성: 자원을 효율적으로 사용해 자원이 사용되지 않는 시간이 없도록 해야 한다.안정성: 우선순위의 프로세스를 먼저 처리하도록 해야한다.반응 시간 보장: 프로세스가 오랜 시간 응답이 없으면 사용자는 시스템이 멈춘 것으로 보기 때문에 일정 시간 내에 응답할 수 있도록 해야한다.무한 연기 방지: 특정 프로세스에 대한 처리가 무한히 연기되지 않도록 스케줄링해야 한다.스케줄링의 단계장기 스케줄링(잡 스케줄링, 승인 스케줄링)준비 큐에서 어떤 프로세스를 넣을지 결정해 메모리에 올라가는 프로세스 수를 조절한다.중기 스케줄링메모리에 로드된 프로세스 수를 동적으로 조절한다. 메모리에 프로세스가 많이 로드되면 스왑 아웃해서 일부 프로세스를 통째로..
1.2.1 프로세스와 스레드프로세스컴퓨터에서 실행중인 프로그램을 의미한다.OS는 프로그램을 실행하면서 디스크에 저장된 데이터를 메모리로 로드한다.프로그램이 실행되면 그 실체가 곧 프로세스가 된다.프로그램 VS 프로세스프로그램: 디스크에 저장되어 있는 정적인 실행 파일이다. 실행되기 전의 코드 덩어리, 즉 .exe, .apk 같은 파일 자체를 의미한다. 프로세스: 그 프로그램이 메모리에 적재되어 실제로 실행중인 동적인 인스턴스이다. CPU와 메모리를 할당받아 동작하고 있는 상태이다.비유하자면, 프로그램은 요리 레시피, 프로세스는 그 레시피를 보고 실제로 요리하고 있는 행위이다.프로그램과 프로세스는 1:N 관계가 가능하다.예를 들어 Chrome 같은 브라우저를 두 개 이상 띄우면 프로그램은 1개이지만, 프로..
운영 체제란운영체제란 하드웨어 위에 설치되어 하드웨어 계층과 다른 소프트웨어 계층을 연결하는 소프트웨어 계층이다.역할컴퓨터 시스템의 자원 관리사용자가 컴퓨터를 사용할 수 있는 환경 제공EX) Mac Os, Linux, Window 등운영체제의 목적처리 기능 향상: OS는 자원 관리를 통해 일정 시간 내에 시스템이 처리하는 일의 양을 향상시킨다.반환 시간 단축: OS는 사용자가 시스템에 요청한 작업을 완료할 때까지 소요되는 시간을 단축시킨다.사용 가능도 향상: 사용자에게 시스템 자원을 얼마나 빨리 제공할 수 있는가이다.CPU와 메모리 구조CPU: 컴퓨터의 뇌이다. 프로그램을 실행하는데 필요한 연산을 처리하고 수행한다. 다른 말로 프로세서 라고한다.메모리: 데이터를 저장하기 위한 기억 장치이다. 두가지 종류..
