목록코딩공부/OS (18)
개발세발
스레드 프로세스 CPU 입장에서의 작업 단위 (= 프로세스로부터 전달받은 스레드) 운영체제 입장에서의 작업 단위 - 운영체제는 코드와 데이터를 메모리에 가져오고, 프로세스 제어 블록을 생성하고, 작업에 필요한 메모리 영역을 확보한 후 준비된 프로세스를 준비 큐에 삽입함 - 프로세스가 생성되면 CPU 스케쥴러는 프로세스가 해야할 일을 CPU에 전달하고 실제 작업은 CPU가 수행한다 : CPU 스케줄러가 CPU에 전달하는 일 하나 = 스레드 * 작업의 상대적인 크기 처리(job) > 프로세스 (task) > 스레드 (operation) * 일괄 작업 batch job - 여러 개의 스레드가 모여 프로세스를 이루고, 여러 개의 프로세스가 모여 처리가 되며, 여러 개의 프로세스를 모아서 한꺼번에 처리하는 방법 ..
📍프로세스의 구조 프로세스 설명 코드 영역 code area 프로세스의 본문이 기술되어 있음 ( 텍스트 영역, text area) - 프로그래머가 작성ㅎ안 프로그램은 코드 영역에 탑재됨 - 탑재된 코드는 읽기 전용으로 처리됨 읽기 전용 데이터 영역 data area 프로세스의 데이터 - 코드가 실행되면서 사용하는 변수 variable나 파일 등의 각종 데이터를 모아놓은 곳 읽기 / 쓰기 스택 영역 stack area - 운영체제가 프로세스를 실행하기 위해 부수적으로 필요한 데이터를 모아 놓은 곳 - 운영체제가 사용자의 프로세스를 작동하기 위해 유지하는 영역이므로 사용자에게는 보이지 않음 숨김 영역 📍프로세스의 생성과 복사 - 프로세스는 1️⃣ 프로그램을 실행하거나 2️⃣실행 중인 프로세스로부터 새로운 프..
📍 프로세스 제어 블록 [TCB (Task Control Block) ] : 프로세스를 실행하는 데 필요한 중요한 정보를 보관하는 자료 구조 - 모든 프로세스는 고유의 프로세스 제어 블록을 가지며, 프로세스 제어 블록은 프로세스 생서 시 만들어져서 프로세스가 완료하면 폐기됨 포인터 프로세스 상태 프로세스 구분자 프로그램 카운터 프로세스 우선순위 각종 레지스터 정보 메모리 관리 정보 할당된 자원 정보 계정 정보 PPID 와 CPID . . . 📍포인터 : 프로세스 제어 블록을 연결하여 준비 상태나 대기 상태의 큐를 구현할 때 포인터를 사용 (준비 상태나 대기 상태는 큐로 운영하므로 ) *프로세스 상태 : 프로세스가 어떤 상태에 있는지를 나타냄 - 프로세스 상태로는 생성, 준비, 대기, 보류 준비, 보류 대..
📍 프로세스 : 실행을 위해 메모리에 올라온 동적인 상태 ( 운영체제에서 프로세스는 하나의 작업 단위 ) - 프로그램으로 작성된 작업 절차를 실제로 실행에 옮긴다는 뜻으로, 누군가가 작성한 프로그램이 실행되면 프로세스가 된다 ↔️ 프로그램 : 저장장치에 저장되어 있는 정적인 상태 - 어던 데이터를 사용하여 어떤 작업을 할지 그 절차를 적어 놓은 것 📍 태스크 task : 컴퓨터 시스템의 작업 단위 📍 프로세스 제어 블록 Process Control Block, PCB : 하나의 프로세스를 실핼ㅇ하기 위한 여러 정보를 보관하는 데이터 구조 - 운영체제가 해당 프로세스를 위해 관리하는 데이터 구조이기 때문에 운영체제 영역에서 만들어짐 - 프로세스가 종료되면 프로세스가 메모리에서 삭제되고, 프로세스 제어 블록..