목록운영체제 (12)
내가 보려고 만든 블로그
다시 돌아갈 주소를 계속 저장 프로세스마다 id가 있음. 컨텍스트 스위칭 프로스세스간 커뮤니케이션 원래 프로세스는 다른 프로세스의 공간을 접근 못함 파일 공유로하면 실시간적으로 커뮤니케이션이 안되고 불편함
STACK : 동적인 변수들 , 함수의 인자들 , return 값등이 들어감. HEAP: 동적 메모리 DATA : global로 선언한 변수들이 들어감 , CODE: 코드가 컴파일 되어 저장되는 곳 프로그램 카운터가 코드 한줄한줄을 가르키고 스택포인터는 스택에서 위치 나타냄 함수실행하면 return 할 주소가 스택에 담기고 heap에 동적으로 메모리( 공간) 을 생성 어떻게 , 얼마만큼 메모리가 필요할지모르니까 공간을 마련해주는 느낌 2의 주소값이 스택에 또 들어감
1- 데이터 input 이 끝날때까지 block 상태가 됨. (block = pending) 2- block을 제외하고 ready 상태의 프로세스를 찾아서 실행함 3- 스케줄러가 프로세스를 pick 해서 실행 4- block -> Reday 로 상태가변함
프로세스란: 실행중인 프로그램을 프로세스라고 함. 응용프로그램 != 프로세스 응용프로그램이 여러개의 프로세스로 이뤄 질 수 있음. 스케줄러가 프로세서를 관리하게 된다. 어느 순서대로 프로세스를 실행시할지를 결정하는 스케줄링 알고리즘에 다양한 것들이 있다. 1. FCFS 스케줄러 첫번째 들어오는게 먼저 실행되는 단순한 형태 배치처리시스템임 2. SJF 최단시간 우선 가장 짧게 끝나는 것을 우선으로 실행시킴 3. Priority-Based 스케줄러 프로세스마다 우선순위 미리 지정 ( 정적 우선순위) 4. 동적우선순위 스케줄러가 상황에 따라 우선순위를 동적으로 변경 5. Round Robin 스케줄러 특정시간동안 실행이 끝이안나면 뒤로 보내버림