본문 바로가기

프로세스2

프로세스와 스레드의 차이 프로세스 운영체제로부터 자원을 할당받은 작업의 단위. 실행되고 있는 컴퓨터 프로그램 스레드 프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위. 프로세스의 코드에 정의된 절차에 따라 실행되는 특정한 수행 경로 1. 프로그램 -> 프로세스 프로그램이란, 파일이 저장 장치에 저장되어 있지만 메모리에는 올라가 있지 않은 정적인 상태를 말한다. 프로그램을 실행하는 순간 해당 파일은 컴퓨터 메모리에 올라가게 되고, 이 상태를 동적(動的)인 상태라고 하며 이 상태의 프로그램을 프로세스라고 한다. 2. 프로세스 -> 스레드 한 프로그램을 처리하기 위한 프로세스를 여러 개 만들 수는 없다. 운영체제는 안전성을 위해서 프로세스마다 자신에게 할당된 메모리 내의 정보에만 접근할 수 있도록 제약을 두고 있고, 이를 벗어나는.. 2021. 5. 29.
프로세스와 프로세스의 상태 1. 프로세스란? 프로그램을 구동하여 프로그램 자체와 프로그램의 상태가 메모리 상에서 실행되는 작업 단위 컴퓨터에서 연속적으로 실행되고 있는 프로그램 사용 중인 파일, 데이터, 프로세서 상태, 메모리 영역 주소 공간, 스레드 정보 전역 데이터가 저장된 메모리 부분 등 수 많은 자원을 포함하는 개념 스케줄링의 대상이 되는 작업(task) 2. 프로세스의 메모리 영역 Code(Text) : 실행되는 코드 Data : 전역변수 Heap : 프로그램 런타임 중 동적 할당되는 메모리 Stack : 함수 실행 시 임시적으로 사용되는 저장공간 (지역변수, 매개변수) 3. 프로세스의 상태 커널 내에는 준비 큐, 대기 큐, 실행 큐 등의 자료구조가 있으며 커널은 이것들을 이용해 프로세스 상태를 관리한다. 생성(new/c.. 2021. 5. 25.