연습문제 1. 프로그램이 프로세스가 되려면 운영체제로부터 무엇을 받아야 하는가? 프로세스 제어 블록(PCB) 2. 프로세스의 상태 중 CPU를 할당받기 위해 기다리는 상태는 무엇인가? 준비 상태 3. 프로세스의 상태 중 입출력 작업을 하기 위해 이동하는 상태는 무엇인가? 대기 상태 4. CPU 스케줄러가 준비 상태에 있는 프로세스 중 하나를 골라 CPU를 할당하는 작업을 무엇이라고 하는가? 디스패치 5. 유닉스에서 Ctrl + Z 키를 눌러 프로세스가 중단되면 프로세스는 어떤 상태로 바뀌는가? 휴식 상태 6. 실행 상태에서 하나의 프로세스가 나가고 새로운 프로세스가 들어오는 상황을 무엇이라고 하는가? 문맥 교환 7. 실행 중인 프로세스로부터 새로운 프로세스를 복사하는 시스템 호출은 무엇인가? fork()..
프로세스의 연산 프로세스의 구조 · 코드 영역 프로그램의 본문이 기술된 곳으로 텍스트 영역이라고도 한다. · 데이터 영역 코드가 실행되면서 사용하는 변수나 파일 등의 각종 데이터를 모아놓은 곳이다. · 스택 영역 운영체제가 프로세스를 실행하기 위해 부수적으로 필요한 데이터를 모아놓은 곳이다. 프로세스의 생성과 복사 ▶ fork() 개념 : 실행 중인 프로세스를 그대로 복사하는 함수 장점 프로세스의 생성 속도가 빠르다. 추가 작업 없이 자원을 상속할 수 있다. 시스템 관리를 효율적으로 할 수 있다. 동작 과정 프로세스 구분자가 바뀐다. 부모 자식이라도 자기 자신을 칭하는 고유한 번호가 존재한다. 부모 자식이 차지하고 있는 메모리 위치가 다르므로 메모리 관련 정보도 바뀐다. 프로세스의 전환 ▶ exec() ..
프로세스의 개요 프로세스의 개념 프로그램은 저장장치에 저장되어 있는 정적인 상태 프로세스는 실행을 위해 메모리에 올라온 동적인 상태 프로세스는 컴퓨터 시스템의 작업 단위로 태스크(Task)라고도 부른다. *프로세스 제어 블록(PCB) - 프로세스 실행 시 운영체제가 만드는 작업 지시서 ☞ 프로세스를 처리하는 데 필요한 다양한 정보가 들어 있다. 다양한 정보 중 대표적인 세 가지 정보에 대해 알아보자 #프로세스 제어 블록(PCB)의 세 가지 대표적인 정보 프로세스 구분자 메모리에는 여러 개의 프로세스가 존재 그러므로 각 프로세스를 구분하는 프로세스 구분자(PID)가 있다. 메모리 관련 정보 CPU는 실행하려는 프로세스가 어디에 저장되어 있는지 알아야 한다. 그래서 프로세스 제어 블록(PCB)에 위치 정보가..
연습문제 1. CPU의 구성에 대해 설명하시오. 산술논리 연산장치(ALU), 제어장치, 레지스터로 구성되어 있다. 2. 폰노이만 구조의 가장 중요한 특징을 설명하시오. 모든 프로그램은 메모리에 올라와야 실행할 수 있다. 3. 버스의 종류를 나열하시오. 제어 버스, 주소 버스, 데이터 버스 4. 단방향 버스에 대해 설명하시오. 자료가 한 방향으로 전달되는 버스 5. 다음에 실행할 명령어의 주소를 가지고 있는 레지스터는 무엇인가? 프로그램 카운터(PC) 6. 현재 실행 중인 명령어를 보관하는 레지스터는 무엇인가? (문제가 잘못되어 자체적으로 수정함) 명령어 레지스터(IR) 7. 메모리 주소를 보관하는 레지스터는 무엇인가? 메모리 주소 레지스터(MAR) 8. 메모리에 저장할 데이터나 메모리에서 가져온 데이터를..
컴퓨터 향상 기술 CPU와 메모리 간 속도 차이를 개선하고 시스템의 작업 속도를 올리기 위해 개발된 기술이 있다. 버퍼 버퍼는 일정량의 데이터를 모아 옮김으로써 두 장치 사이에서 속도의 차이를 완화하는 역할을 한다. 일정량의 데이터를 모아 옮김으로써 속도의 차이를 완화하는 장치다. 스풀 스풀은 CPU와 입출력 장치가 독립적으로 동작하도록 고안된 소프트웨어적인 버퍼다. 예)프린터 프린터에 사용되는 스풀러는 인쇄할 내용을 순차적으로 출력하는 소프트웨어다. 캐시 캐시는 메모리와 CPU 간의 속도 차이를 완화하기 위해 메모리의 데이터를 미리 가져와 저장해두는 임시 장소이다. 캐시는 CPU 안에 있으며 CPU 내부 버스의 속도로 작동한다. #즉시 쓰기와 지연 쓰기 즉시 쓰기 : 캐시에 있는 데이터가 변경되면 즉시..
하드웨어의 구성 컴퓨터는 중앙처리장치(CPU), 메인 메모리, 입력장치, 출력장치, 저장장치로 구성된다. 필수장치 : 중앙처리장치(CPU), 메인 메모리(RAM) 주변장치 : 입력장치, 출력장치, 저장장치 # CPU 명령어를 해석하여 실행하는 장치 # 메모리 작업에 필요한 프로그램과 데이터를 저장하는 장소 # 입출력 장치 외부의 데이터를 컴퓨터에 입력하는 장치 #저장장치 속도가 느리지만 가격이 저렴 #메인보드 - 컴퓨터의 다양한 부품은 버스로 연결 - CPU와 메모리 등 다양한 부품을 연결하는 커다란 판 폰노이만 구조 폰노이만 구조는 CPU, 메모리, 입출력 장치, 저장장치가 버스로 연결되어 있는 구조를 말한다. ※ 폰노이만 구조의 가장 중요한 특징 모든 프로그램은 메모리에 올라와야만 실행할 수 있다. ..
연습문제 1. 사용자에게 편리한 인터페이스 환경을 제공하고 컴퓨터 시스템의 자원을 효율적으로 관리하는 소프트웨어는 무엇인가? 운영체제 2. 가전제품과 같이 CPU의 성능이 낮고 메모리 크기도 작은 시스템에 내장하도록 만든 운영체제를 무엇이라고 하는가? 임베디드 운영체제 3. 사용자가 원하는 기능을 수행하기 위해 컴퓨터 자원을 사용하는 소프트웨어는 무엇인가? 응용 프로그램 4. 운영체제가 없는 컴퓨터에서는 어떤 문제가 발생하는지 설명하시오. 만든 당시 기능 외에 기능을 추가하거나 향상하기가 매우 어렵고 번거롭다. 5. 기계와 사용자 사이에 명령을 전달하고 처리한 결과를 알려주는 것을 무엇이라고 하는가? 인터페이스 6. 프로그램과 데이터를 한 번에 입력한 후 작업의 최종 결과만 얻는 운영체제 방식을 무엇이라..
[쉽게 배우는 운영체제] 1장 : 운영체제의 개요 (1/2) 3. 운영체제의 구조 커널이란? 커널은 프로세스 관리, 메모리 관리, 저장장치 관리와 같은 운영체제의 핵심적인 기능을 모아놓은 것이다. 자동차의 엔진이라고 생각하면 쉽다. 운영체제는 크게 두 개의 부분으로 나뉜다. 1. 인터페이스 2. 커널 시스템 호출과 디바이스 드라이버 ☞ 시스템 호출 커널이 자신을 보호하기 위해 만든 인터페이스 ☞ 드라이버 하드웨어는 드라이버가 담당 커널의 구성 ① 단일형 구조 커널 초창기 운영체제 구조, 커널의 핵심 기능을 구현하는 모듈들이 구분 없이 하나로 구성되어 있다. ■ 장점 -모듈간 통신 비용이 줄어들어 효율적인 운영 가능 ■ 단점 -모듈이 하나여서 오류처리 어려움 -상호의존성이 높아 큰 오류 발생 확률 높음 -..
- Total
- Today
- Yesterday
- 문자열
- Python
- 정리
- 정렬
- 알고리즘
- 우종정
- 프로그래머스
- 쉽게배우는
- C++
- 파이썬
- 연습문제
- BFS
- JS
- 쉽게 배우는 자바 프로그래밍
- 해답
- py
- 구현
- OS
- 운영체제
- 풀이
- 자바
- 답
- 정답
- 쉽게배우는자바프로그래밍
- CPP
- 백준
- 그리디
- Web
- java
- 자바스크립트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |