일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- FunctionalInterface
- 도커
- django-crontab
- strict stubbing
- custom annotation
- AOP
- sql-mappler
- 운영체제
- task_struct
- java.util.function
- Thread Library
- 롬복주의점
- 함수형 인터페이스
- OS
- none이미지
- functional interface
- 문자열 불변성
- Spring
- ReflectUtils
- spring-data-jpa
- hiberbate
- @Header
- 문자열 리터럴
- Process
- 쓰레드 라이브러리
- 프로세스
- SystemCall
- rainbow table
- Thread Multiplexing
- python-socketio
- Today
- Total
목록Process (2)
JH's Develog
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/GnsQE/btro8wPUjlf/kfNgZXKgQOJKh1xMzmKRp0/img.png)
지난 포스팅에 이어서 프로세스에 대해 알아보겠습니다. PCB PCB(Process Control Block)는 프로세스를 표현하기 위한 자료구조이며 커널안에 존재합니다. PCB는 프로세스에 대한 아래와 같은 다양한 정보들을 담고 있습니다. Process state : New, Running, Wait등의 프로세스 상태 Program counter : 다음 인스트럭션의 주소 CPU register CPU scheduling info : Priority, 스케줄링 큐의 포인터, 스케줄링 파라미터들과 같은 스케줄링에 관련된 정보 Memory-management info : base & limit registers, Page table, Segment Table Accounting info : CPU사용량, P..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/0cWJn/btrpgxTpJ8h/Ld0Y5eiT5VNqqXxEdbU9Pk/img.png)
프로세스란? 프로세스는 실행 중인 프로그램(text segment)이며 작업의 단위입니다. 이뿐만 아니라 다양한 방식으로 표현할 수 있는데 Program Counter가 가리키고 있는 현재의 인스트럭션, 메모리안에 있는 컨텐츠(stack, heap, global variables) 또한 프로세스라고 할 수 있습니다.즉 프로그램은 passive한 개념이고 프로세스는 active한 개념이며 하나의 프로그램으로부터 여러개의 프로세스가 존재할 수 있습니다. 쓰레드와의 차이점 쓰레드는 프로세스 내부에 있는 일련의 Execution이며 하나의 프로세스는 하나 이상의 쓰레드를 가질 수 있습니다. 그리고 각 쓰레드는 프로세스 내부에서 code, data, files는 공유하지만 각자의 Program Counter, S..