[운영체제] 프로세스와 스레드(Process vs Thread), 메모리 영역
서로 다른 프로세스 간에 데이터를 주고 받는 메커니즘을 의미한다.한 프로세스의 출력이 다른 프로세스의 입력으로 사용될 수 있도록 한다.데이터를 파일에 저장해서 공유하는 방식장점구현이 간단디버깅 용이모든 운영체제에서 지원데이터가 영구적으로 저장되어서 프로세스가 종료되어도
여러개의 CPU, 또는 CPU의 여러 코어들이 여러 독립적인 프로세스를 동시에 처리하는 방식높은 처리 성능과 강력한 병럴처리 능력을 제공한다.장점전체 시스템 성능 향상각 프로세스는 독립적인 주소공간을 가져서 하나의 프로세스에서 오류를 발생시켜도 영향을 끼치지 않는다.단
CPU가 실행해야할 프로세스가 여러 개일때 CPU 스케줄링을 통해 관리하는 것을 말한다.이때 CPU 는 각 프로세스의 정보와 상태(Process Metadata)를 알아야 관리가 가능하다.프로세스의 정보와 상태(Process Metadata)를 저장하는 공간을 말한다.
현재 진행하고 있는 Task(Process, Thread)의 상태를 저장하고다음 진행할 Task의 상태 값 을 읽어 적용하는 과정보통 인터럽트가 발생 하거나, 실행 중인 CPU 사용 허가시간을 모두 소모 하거나,입출력을 위해 대기해야 하는 경우 에 Context Swi
[운영체제] 프로세스 상태 - new ,ready, running waiting, terminated
여러 프로세스와 스레드가 동시에 실행되는데,스케줄러는 이들 중 어느 것이 CPU를 사용할지 결정한다.스케줄러는 공정하게 처리하고, 시스템 성능을 최적화하며,사용자에게 반응적인 시스템을 제공하는데 목적을 준다.한재 시스템 내에 있는 모든 프로세스의 집합현재 메모리 내에
여러 프로세스나 스레드가 공유자원에 접근하거나특정 조건을 만족시키기 위해서 서로 기다리는 과정을 의미한다. 즉 프로세스들 사이에 수행시기를 맞추는 것을 의미한다.수행 시기를 맞춘다는 것은 크게 두가지를 말한다.실행 순서 제어 프로세스를 올바른 순서대로 실행한다.상호 배
어떤 작업을 요청했을 때 그 작업이 종료될 때까지 기다린 후 다음 작업을 동작한다.데이터를 주고받는 '순서'가 중요할때 사용된다.요청한 작업만 처리하면 되기 때문에 전체적인 수행 속도는 빠를 수 있다. (일만 하면 된다)한 작업에 대한 시간이 길어질 경우, 전체 응답이
일어나지 않을 사건을 기다리며 무한히 기다리는 현상게임 프로세스와 웹 브라우저 프로세스가 동시에 실행 중에 있다고 가정하자두 프로세스는 공유 자원 A와 B를 모두 필요로한다.게임 프로세스의 자원 필요 순서는 A->B,웹 브라우저 프로세서의 자원 필요 순서는 B->A 이
프로세스 A는 A의 크기 만큼 메로리 주소를 할당 받아 연속적으로 배치한다.프로세스 B는 A 이후에 B의 크기만큼 연속적인 메모리 주소를 할당받아 배치한다.이렇게 프로세스에 연속적인 메모리 공간을 할당하는 방식을 연속 메모리 할당이라고 한다.메모리에 적재된 프로세스들
가상메모리란 실행하고자 하는 프로그램의 일부만 메모리에 적재하여 실제 물리메모리보다 더 큰 프로스세스를 실행할 수 있게 하는 기술 가상메모리를 관리하는 기법으로 페이징과 세그멘테이션이 있다.
프로세스를 메모리에 적재할 때 처음부터 모든 페이진를 적재하지 않고필요한 페이지만 메모리에 적재하는 기법실행에 요구되는 페이지만 적재하는 기법이다.CPU가 특정 페이지에 접근하는 명령어를 실행한다.해당 페이지가 현재 메모리에 있을 경우(유효 비트가 1일 경우) CPU는