티스토리 뷰
반응형
프로세스의 연산
프로세스의 구조
· 코드 영역
프로그램의 본문이 기술된 곳으로 텍스트 영역이라고도 한다.
· 데이터 영역
코드가 실행되면서 사용하는 변수나 파일 등의 각종 데이터를 모아놓은 곳이다.
· 스택 영역
운영체제가 프로세스를 실행하기 위해 부수적으로 필요한 데이터를 모아놓은 곳이다.
프로세스의 생성과 복사
▶ fork()
개념 : 실행 중인 프로세스를 그대로 복사하는 함수
장점
- 프로세스의 생성 속도가 빠르다.
- 추가 작업 없이 자원을 상속할 수 있다.
- 시스템 관리를 효율적으로 할 수 있다.
동작 과정
- 프로세스 구분자가 바뀐다.
부모 자식이라도 자기 자신을 칭하는 고유한 번호가 존재한다. - 부모 자식이 차지하고 있는 메모리 위치가 다르므로 메모리 관련 정보도 바뀐다.
프로세스의 전환
▶ exec()
개념 : 기존의 프로세스를 새로운 프로세스로 전환하는 함수
장점
- 이미 만들어진 프로세스의 구조를 재활용
- 재활용을 하면 프로세스 제어 블록, 메모리 영역, 부모 자식 관계를 그대로 사용 가능하여 편리
- 새로운 코드 영역만 가져오면 되기 때문에 운영체제의 작업이 수월
동작 과정
- 기존 코드 지우고 새로운 코드로 변경
- 데이터 영역이 새로운 변수로 채워지고 스택 영역은 리셋
- 각종 레지스터 정보 모두 리셋
프로세스의 계층 구조
장점
- 여러 작업 동시 처리
- 용이한 자원 회수
고아 프로세스
- 프로세스가 종료된 후에도 비정상적으로 남아 있는 프로세스
- 좀비 프로세스라고도 부름
스레드
운영체제 작업 단위 : 프로세스
CPU 작업 단위 : 스레드
CPU 내에 작업 요청을 하는 실행 단위를 스레드라 한다.
*프로세스(운영체제) > 스레드(CPU)
프로세스와 스레드의 차이점
프로세스끼리 연결 : 약한 연결
스레드끼리 연결 : 강한 연결
스레드 관련 용어
- 멀티스레드 : 프로세스 내 작업을 여러 개의 스레드로 분할 -> 작업 부담 ↓
- 멀티태스킹 : 운영체제가 CPU에 작업을 줄 때 시간을 잘게 나누어 배분하는 기법
- 멀티프로세싱 : CPU를 여러 개 사용하여 여러 개의 스레드를 동시에 처리하는 작업 환경
- CPU 멀티 스레드 : 파이프라인 기법을 이용하여 동시에 여러 스레드를 처리하는 병렬 처리 기법
멀티스레드
개념
하나의 프로세스에 여러 스레드로 자원을 공유하며 작업을 나누어 수행
장점
- 응답성 향상
한 스레드가 작업을 안 해도 다른 스레드가 작업을 계속하여 빠르게 응답할 수 있다. - 자원 공유
한 프로세스 내에 독립적인 스레드를 생성하면 모든 스레드가 공유 - 효율성 향상
자원의 중복 제거 - 다중 CPU 지원
다중 CPU가 멀티스레드를 동시에 처리 -> 프로세스 처리 시간 ↓
멀티스레드 모델
- 커널 스레드 : 커널이 직접 생성하고 관리하는 스레드
- 사용자 스레드 : 라이브러리에 의해 구현된 일반적인 스레드
하트 누르면 위 내용 전부 기억하게 됩니다.
728x90
반응형
'운영체제' 카테고리의 다른 글
[쉽게 배우는 운영체제] 4장 : CPU 스케줄링 (1/2) [OS] (0) | 2021.08.30 |
---|---|
[쉽게 배우는 운영체제] 3장 연습문제(심화문제) 정답 [OS] (0) | 2021.08.27 |
[쉽게 배우는 운영체제] 3장 : 프로세스와 스레드 (1/2) [OS] (0) | 2021.08.27 |
[쉽게 배우는 운영체제] 2장 연습문제(심화문제) 정답 [OS] (0) | 2021.08.25 |
[쉽게 배우는 운영체제] 2장 : 컴퓨터의 구조와 성능 향상 (2/2) [OS] (0) | 2021.08.25 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 파이썬
- 연습문제
- py
- Web
- java
- 우종정
- 그리디
- 정렬
- 쉽게 배우는 자바 프로그래밍
- 답
- BFS
- 프로그래머스
- 해답
- 쉽게배우는자바프로그래밍
- 문자열
- 알고리즘
- 자바
- 쉽게배우는
- C++
- Python
- CPP
- 구현
- 정답
- OS
- 자바스크립트
- 정리
- JS
- 운영체제
- 백준
- 풀이
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함