Data Structures (Process Control Blocks)

2024. 3. 10. 13:31·CS/OS
728x90
반응형

PCB (Process Control Blocks)

프로세스의 정보를 저장하고 있는 데이터 블럭

 

Linux Kernel > /include/linux/sched.h

칼리 리눅스의 운영체제 정보

 

struct task_struct {
...
}

> PCB 역할을 해주는 구조체

 

volatile long state;

unsigned int  __state;
unsigned int saved_state;

> 현재 프로세스의 상태를 나타내줌

 

  • running → TASK_RUNNING
  • ready → TASK_RUNNING (X)
  • bocked → TASK_INTERRUPIBLE 등 (blocked의 종류에 따라 달라짐)
void *stack;

> Pointer to the kernel-mode stack

프로세스 마다 스택이 존재함 → user-mode stack / kernel-mode stack

 

unsigned int cpu;

int recent_used_cpu;
int wake_cpu;

> CPU에 대한 정보

  • cpu : 몇 번 cpu 코어를 사용하는지
  • recent_used_cpu : task를 수행하는데 사용된 마지막 cpu
struct mm_struct *mm;
struct mm_struct *active_mm;

> memory virtualization에 대한 정보

 

struct task_struct *parent;
struct list_head children;

> fork()로 인해 발생하는 부모, 자식 프로세스에 대한 정보

  • parent : recipient of SIGHLD, wait4() reports
  • children : children information 
struct files_struct *files;

> open 한 파일들에 대한 정보

 

 

728x90
반응형

'CS > OS' 카테고리의 다른 글

운영 모드  (0) 2025.01.12
CPU Scheduling  (2) 2024.08.12
Limited Direct Execution  (0) 2024.04.28
Process  (5) 2024.04.28
Disk Scheduling (디스크 스케줄링)  (0) 2024.02.05
'CS/OS' 카테고리의 다른 글
  • CPU Scheduling
  • Limited Direct Execution
  • Process
  • Disk Scheduling (디스크 스케줄링)
min_zu
min_zu
  • min_zu
    민주제도
    min_zu
  • 전체
    오늘
    어제
    • ._. (176)
      • AI (2)
        • DeepLearning (2)
        • CS231n (0)
      • Web (2)
        • ReactJS (0)
      • CS (83)
        • OS (7)
        • Data Structure (23)
        • Computer Architecture (8)
        • Computer Network (20)
        • Algorithm (25)
      • Linux (3)
        • KaliLinux (0)
        • Docker (1)
      • Hacking (83)
        • Write Up (25)
        • Pwnable (13)
        • Reversing (2)
        • Cryptography (12)
        • Web Hacking (4)
        • Window (6)
        • Network (7)
        • Web3 (13)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Web
    WinAFL
    Search
    Sort
    ComputerArchitecture
    UTM
    Linux
    Mac
    OS
    AI
    Tree
    DataStructure
    DeepLearning
    Graph
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
min_zu
Data Structures (Process Control Blocks)
상단으로

티스토리툴바