
큐 프로세스를 스케줄링하기 위해 큐를 사용한다. 큐는 줄을 세우고 순서에 따라 처리하는 방식이다. 준비 큐(ready queue) - 준비상태 운영체제에서 준비상태의 있는 프로세스들은 준비 큐(ready queue)에 줄을 세워 가장 먼저 있는 프로세스에게 CPU를 할당한다. 장치 큐(device queue) - 봉쇄상태 자원별로 장치 큐(device queue)를 둔다. 입출력 장치마다 큐를 두어 일처리를 해준다고 생각하면 된다. 디스크 입출력 큐, 키보드 입출력 큐 등이 있다. 자원 큐 - 봉쇄상태 소프트웨어 자원을 위한 큐이다. 공유 데이터에 대한 접근권한을 예로 들 수 있다. 한 프로세스가 공유 데이터를 사용할 때 다른 프로세스가 접근하게 되면 데이터의 일관성이 깨질 수 있기 때문에 자원 큐를 둔..

프로세스란 실행 중인 프로그램(program in execution)을 뜻한다. 프로세스 문맥 시분할 방식에서는 시간별로 CPU 제어권을 가진 프로세스가 바뀐다. CPU 제어권을 획득해서 수행할 때 직전에 어디까지 작업했는지 정보를 가지고 있어야 한다. 정확한 재현을 위해 필요한 정보를 프로세스 문맥이라고 한다. 프로세스 문맥은 크게 하드웨어 문맥, 프로세스의 주소공간, 커널상의 문맥으로 나뉘어 진다. - 하드웨어 문맥 : CPU 수행상태를 나타내는 것으로 프로그램 카운터 값과 각종 레지스터에 저장하고 있는 값 - 프로세스 주소공간 : 독자적인 주소공간 (코드, 데이터, 스택) - 커널상의 문맥 : 커널 주소공간 중 데이터 영역에 있는 PCB, 커널 주소공간 중 스택에 있는 프로세스A의 커널스택 프로세스..

주소공간 컴퓨터 프로그램의 내부구조는 함수들로 구성된다. 프로그램이 CPU에서 명령을 수행하려면 해당 명령이 있는 주소영역이 메모리에 올라가 있어야 한다. 프로그램의 주소영역은 코드, 데이터, 스택 영역으로 구분된다. - 코드 : 작성한 함수의 코드가 CPU에서 수행가능한 기계어 명령어 형태로 변환되어 저장되는 부분 - 데이터 : 전역 변수 등 프로그램이 사용하는 데이터를 저장하는 부분 - 스택 : 함수가 호출될 때 호출된 함수의 수행을 마치고 복귀할 주소 및 데이터를 임시로 저장하는데 사용 PC (Program Counter) CPU가 수행해야 할 메모리 주소를 담고있는 주소이다.CPU는 PC가 가리키는 메모리 위치의 명령을 처리하게 된다. 프로그램의 실행 프로그램의 실행되고 있다의 의미는 1. 디스크..

컴퓨터 시스템 구조 컴퓨터 시스템은 컴퓨터 내부장치 (CPU + memory) + 외부장치 (디스크 + 키보드 + 마우스 + 모니터 + 네트워크 장치 등) 으로 구성되어 있다. 외부장치에서 데이터를 읽어와(입력) 연산을 수행한 후, 외부장치로 내보내는(출력) 방식으로 작동한다. 각 하드웨어 장치에는 컨트롤러가 붙어있어 제어한다. 각 하드웨어에 있는 작은 CPU라고 할 수 있다. 컨트롤러는 장치로부터 들어오고 나가는 데이터를 임시 저장하는데 이 부분을 로컬버퍼라고 한다. (CPU가 메모리를 가지고 있다면, 컨트롤러는 로컬버퍼를 가지고 있다고 이해했다.) 컴퓨터에서 연산하는 작업은 CPU가 일하는 것이고, 데이터가 메모리에 올라가 있어야 프로그램이 수행된다. (프로그램이 CPU 제어권을 획득하여 자신의 프로..

운영체제란 운영체제 (Operating System) 이란 컴퓨터 하드웨어 윗단에 설치되는 소프트웨어를 말한다. 컴퓨터 하드웨어에서 다양한 소프트웨어가 작동할 수 있도록 환경을 제공하는 시스템이라고 이해하였다. 운영체제의 목표 컴퓨터 시스템 자원은 한정적이기 때문에 자원을 효율적으로 관리하는 것이 운영체제의 목표이다. 한정된 CPU와 메모리를 가지고 여러가지 프로그램에게 나눠주어서 운영되는데 그 관리를 어떻게 가장 효율적으로 할 것인가가 목표라고 할 수 있다. 자원에 해당 되는 것은 CPU, 메모리, 하드디스크 등 하드웨어 자원 + 소프트웨어 자원까지 포함된다. 운영체제의 분류 동시작업 지원여부에 따라 단일작업(single tasking), 다중작업(multi tasking)으로 나뉜다. 단일작업에는 윈..
- Total
- Today
- Yesterday
- 우아한테크코스
- React
- Transaction
- 개발공부일지
- 코드스쿼드
- javascript
- python
- 글쓰기미션
- DB
- 마스터즈코스
- 객체지향
- 월간회고
- 회고
- 알고리즘
- 네트워크
- CS
- TIL
- JPA
- 학습로그
- Spring
- 내부코드
- 모의면접준비
- 운영체제
- OS
- 우테코수업
- java
- 카카오
- 인증
- TCP/IP
- 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 |