일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자료구조
- 그리디
- #코린이 #코딩 #할 수 있다
- 스택
- c언어 제어문
- 인텔리제이
- 참고X
- 운체 1주차
- Git
- Workbench
- python기초
- 데베시 1주차
- 파이썬 알고리즘 인터뷰
- 최단거리
- 코딩테스트
- DP
- 백준
- 인스타
- git기초
- c언어 기본
- 1주차(1)
- python기본
- git 오류
- 코테
- git오류
- 도커
- c언어
- python자료형
- 4장
- 5장
- Today
- Total
하루살이 개발자
[운영체제] 1. Computer System Overview 본문
1. Operating System
- 하나 이상의 프로세서의 하드웨어 리소스 이용
- 시스템 사용자에게 일련의 서비스 제공
- 보조 메모리 및 I/O 장치 관리
2. 컴퓨터 구성 요소(하드웨어) *
컴퓨터 기본 구성요소 4가지: 프로세스, I/O 모듈, 시스템 버스, 메인 메모리
1) Processor 처리기
- 중앙처리장치(CPU: central processing unit)
- 데이터 연산, 논리 연산(ALU), 제어(control unit)
- 레지스터(register)
2) Main Memory 주기억장치
- 저장 장치
- 휘발성(volatile): 전원이 꺼지면 내용 날라감
- 데이터와 프로그램 저장(real memory)
- 메모리 셀: 메모리 내의 개별적인 저장공간
3) I/O modules
- 입출력 장치들이 있는 모듈
- storage
- communication equipment 통신 장치
- terminals
4) System Bus 통신장치
- 프로세스, 메인 메모리, 입출력 모듈 사이 통신
- 데이터를 보내기 위해 연결해주는 장치
3. Top-Level Components 프로세스 구조
1) 레지스터
- 메모리 주소 레지스터(MAR): 다음 read/write 주소 저장
- 메모리 버퍼 레지스터(MBR): 메모리에 기록된 데이터를 포함하거나 메모리에서 읽은 데이터를 수신한다.
- I/O 주소 레지스터(I/O AR)
- I/O 버퍼 레지스터(I/O BR)
2) memory module
- 순차적으로 번호가 매겨진 주소로 정의된 위치
- 각 위치에는 명령 또는 데이터라는 비트 패턴이 포함되어 있다.
3) I/O 모듈
- 장치와 프로세서 간 데이터 교환(메모리)
- 내부에 버퍼 포함
4. 마이크로 프로세서의 발전
1) Microprocessor 마이크로 프로세서
- 프로세서를 하나의 칩 안에!
- 가장 빠른 범용 프로세서
- 멀티프로세서로 발전: 하나의 칩에 코어라고 불리는 여러개의 프로세서 포함
2) GPU(graphical processing unit)
- 단일명령 다중데이터 처리(SIMD: single-instruction multiple data)
- 고급 그래픽 렌더링 뿐만 아니라 범용 수치처리에서도 사용
3) DSP(digital signal processors)
- 오디오와 비디오 같은 스트림형 시그널 처리를 위한 프로세서
4) SoC(system on a chip)
- CPU와 캐시 뿐만 아니라 DSP, GPU, I/O 디바이스, 주기억장치 등이 하나의 칩에 내장되어 있다.
- ex) 라즈베리파이
5. Instruction Execution
1) Instruction
- 프로그램은 일련의 명령으로 구성된다.
- 각 명령은 opcode, 피연산자 및 레이블로 구성된다.
- 가장 간단한 형태로 명령어 처리는 2단계로 구성된다: fetch, execution
- 메인 메모리에 들어있는 instructions을 가져와서(fetch) 실행함(execution)
fetch: 프로세서가 메모리에서 명령을 읽음
execution: 프로세서가 각 명령을 실행
2) Instruction Cycle
start -> [ Fetch -> Execute ] -> end
[ ] 부분 반복
6. Instruction Fetch and Execution
1) Fetch stage
- program counter(PC): next instruction 주소를 가지고 있음
- 가져온 명령이 명령 레지스터에 배치됨
- 프로그램 카운터는 가져올 때마다 incremente(제어문에 의해 변경됨)
2) Instruction Register(IR)
Fetche된 instruction이 IR로 로드된다.
- Processor-memory 처리기-메모리: 처리기와 메모리간 데이터 전달
- Processor-I/O: 주변장치로(또는 주변 장치로부터) 데이터 전달
- Data processing 데이터 처리: 데이터에 산술 또는 논리 연산
- Control 제어: 실행 순서의 변경
7. 가상적 기계의 특성