일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 상속
- 자바
- 바닐라코딩
- 몰디브
- html
- jvm
- css
- 2022회고
- til
- http
- http 완벽 가이드
- java
- 자바스크립트
- 신혼여행
- 주간회고
- SpringSecurity
- JavaScript
- 소프트웨어장인정신
- 이펙티브자바
- CORS
- 취업회고
- 부트캠프
- HTTP 완벽가이드
- 클로저
- leetcode
- Hibernate Reactive
- 메가테라
- 포트폴리오
- 헤리턴스아라
- Spring
- Today
- Total
codingBird
6. 프로세스 관리 본문
프로세스는 어떻게 만들어지느냐 > 프로세스가 FORK 시스템콜을 통해 운영체제에 요청하여 운영체제가 만듬 > 부모와 똑같은 프로세스가 만들어짐.
부모 프로세스 > 자녀 프로세스 > 손자녀 프로세스 > .... 트리(계층구조)형성이 됨.
자녀 프로세스의 자원은 운영체제로 받고나 간혹 부모와 공유함.
주소공간 > 부모의 공간(BINARY , OS DATA > PC ,REGISTER) 복사함 ( 부모 프로세스가 실행된 위치에서 부터 실행이 됨) > 새로운 프로그램을 돌리고 싶으면 자식은 그 공간에 새로운 프로세스를 올림 EXEC() 시스템콜
프로세스 종료
자발적 > 프로세스가 마지막 명령을 수행하면 운영체제에게 알려줌 (EXIT) > 자식이 부모에게 OUTPUT DATA를 보냄 ( VIA WAIT) > 프로세스의 각종 자원이 운영체제에게 반납됨? 만약 살아있다면 자원낭비
부모가 자식의 수행을 종료시킴(ABORT)
>자식이 할당 자원 한계치를 넘어섬
>자식에게 할 일이 없음 (태스크가 필요하지 않음)
>부모가 먼저 종료됨 > 운영체제는 부모가 종료되는 경우 자식을 더 이상 수행되도록 종료시킴 > 단계적 종료
fork()시스템 콜
> pid=fork(); 아래로 복사됨 (pc,메모리,register)
부모프로세스는 양수 pid를 return
자식프로세스는 pid =0을 return
exec()시스템콜
>execlp를 수행하게 되면 그 뒤로는 다른 프로세스로 수행하려 감으로 아래는 수행되지 않음
프로세스 생성 : https://4legs-study.tistory.com/37
좀비,고아 프로세스 : https://andrew0409.tistory.com/26
프로세스의 개념
프로세스는 현재 시스템에서 실행중인 프로그램을 뜻한다. 리눅스는 기본적으로 다중 프로세스 시스템이므로 여러 개의 프로세스가 동시에 실행된다. 리눅스의 운영에 필요한 다양한 기능을
andrew0409.tistory.com
참고자료 : 운영체제 이화여자대학교 반효경 http://www.kocw.net/home/cview.do?cid=4b9cd4c7178db077
'운영체제' 카테고리의 다른 글
8. OS/ PROCESS 동기화 (0) | 2022.03.13 |
---|---|
5. THREAD (0) | 2022.03.04 |
4. 프로세스의 개념 (0) | 2022.03.03 |
3. 프로그램의 실행 (0) | 2022.03.03 |
2-컴퓨터 시스템의 구조 (0) | 2022.03.01 |