프로세스 상태와 스케쥴러 멀티 프로그래밍 : CPU 활용도를 극대화하는 스케쥴링 알고리즘 Wait: 간단히 저장매체로부터 파일 읽기를 기다리는 시간으로 가정 프로세스 상태 5가지 주요 상태 정보 3가지 ready state : CPU에서 바로 실행가능 상태(실행 대기 상태) running state : 현재 CPU에서 실행상태 => 단일 CPU라면, running state의 프로세스는 1개 또는 0개가 된다. block state : 특정 이벤트 발생 대기 상태(예: 프린팅이 다 되었다!) => waite 상태로 예를 들어 파일 읽기 요청을 기다리는 상태임. 요청이 오면 ready state로 변경됨. new : 프로세스 생성 중 exit : 종료를 진행할때, 프로세스가 가지고 있는 파일, 시스템 리소..
프로세스(process)란? 실행중인 프로그램을 프로세스라고 부른다. 프로세스 : 메모리에 올려져서, 실행중인 프로그램 코드이미지(바이너리): 실행파일, 예:EELF format프로세스라는 용어는 작업, task, job이라는 용어와 혼용되어 쓰인다. 응용 프로그램 =! 프로세스 응용 프로그램은 여러개의 프로세스로 이루어질 수 있음. 하나의 응용 프로그램은 여러개의 프로세스(프로그램)가 상호작용을 하면서 실행될 수 도 있음 간단한 C/C+ 프로그램을 만든다면 -> 하나의 프로세스 여러프로그램을 만들어서, 서로 통신하면서 프로그램을 작성할수도 있음(IPC기법 : 프로세스가 서로 통신하는 기법) 누가 프로세스 실행을 관리할까? => 스케쥴러 스케쥴링 알고리즘 어느 순서대로 프로세스를 실행시킬까? 목표 시분할..
스케쥴링-멀티 프로그래밍 최대한 CPU를 많이 활용하도록 하는 시스템 놀고있는 CPU를 방지하여 시간 대비 CPU 활용도를 높일 수 있음 응용프로그램을 짧은 시간안에 실행 완료를 시킬 수 있음. 응용 프로그램은 온전히 CPU를 쓰기 보다, 다른 작업을 중간에 필요로하는 경우가 많습니다. 응용 프로그램이 실행되다가 파일을 읽는다. => 저장매체에서 파일을 읽음 응용 프로그램이 실행되다가 프린팅을 한다. 코드예시를 보고 멀티프로그래밍을 더 잘 이해해보자. 저장매체에서 해당 파일이 open이 가능한지의 결과값을 가져와야 그 다음 코드를 실행 시킬 수 있음. CPU 활용도(CPU utilization, CPU 활용시간/일정시간 * 100) 메모리 계층 - 컴퓨터 구조 복습 응용프로그램이 파일에 접근을 해야할 때..
명이나물 라이브러리