[혼자 공부하는 컴퓨터구조+운영체제] Chapter 03 명령어
·
Computer Science/컴퓨터구조 | 운영체제
Chapter 03 명령어1. 소스 코드와 명령어Key Word: 고급언어 / 저급 언어 / 기계어 / 어셈블리어 / 컴파일 언어 / 인터프리터 언어 컴퓨터: 명령어를 처리하는 기계(01장)-> 명령어: 컴퓨터를 실질적으로 작동시키는 매우 중요한 정보 소스코드 -> 컴퓨터 내부에서 명령어로 변환고급 언어와 저급 언어컴퓨터: C, C++, Java, Python과 같은 프로그래밍 언어 이해 X프로그램 만들 때 사용하는 프로그래밍 언어 != 컴퓨가 이해하는 언어-> 사람이 이해하고 작성하기 쉽게 만들어진 언어 고급 언어 -변환-> 저급 언어 고급 언어(high-level programming language)사람을 위한 언어대부분의 프로그래밍 언어이해하고 작성하기 쉬움더 나은 가독성변수나 함수 같은 편리한 ..
[혼자 공부하는 컴퓨터구조+운영체제] Chapter 02 데이터
·
Computer Science/컴퓨터구조 | 운영체제
컴퓨터 = 코드 입력하면 결과 내놓는 '미지의 대상' 문제 상황 빠르게 " data-og-host="debug.tistory.com" data-og-source-url="https://debug.tistory.com/143" data-og-url="https://debug.tistory.com/143" data-og-image="https://scrap.kakaocdn.net/dn/AmSUl/hyUXVi6X77/oo84bpYBI1uTRzudzJi7jk/img.jpg?width=800&height=1093&face=0_0_800_1093,https://scrap.kakaocdn.net/dn/ECdZe/hyU2ndZcE9/RmaQICIM7czrzougMGZby1/img.jpg?width=800&height=..
[혼자 공부하는 컴퓨터구조+운영체제] Chapter 01 컴퓨터 구조 시작하기
·
Computer Science/컴퓨터구조 | 운영체제
Chapter 01 컴퓨터 구조 시작하기1. 컴퓨터 구조를 알아야 하는 이유문제 해결프로그래밍 언어의 문법만 알고 있는 사람-> 컴퓨터 = 코드 입력하면 결과 내놓는 '미지의 대상' 문제 상황 빠르게 진단문제 해결의 실마리 다양하게 찾음=> 문제 해결 능력 향상 => 미지의 대상이 아닌 '분석의 대상'성능, 용량, 비용컴퓨터 선택에 따라 성능, 용량, 비용이 달라짐=> 저렴한 제품이 무조건 좋은 것 X 개발한 프로그램을 위한 최적의 컴퓨터 환경을 스스로 판단해야 함 => 입출력에만 집중하는 개발 X 성능, 용량, 비용까지 고려하는 개발자 O2. 컴퓨터 구조의 큰 그림Key Word: 데이터 / 명령어 / 메모리 / CPU / 보조기억장치 / 입출력장치 / 시스템 버스  컴퓨터가 이해하는 정보데이터명령어컴..
CH7. Memory Management
·
Computer Science/컴퓨터구조 | 운영체제
#Background 메인 메모리, 레지스터_CPU가 직접 접근할 수O 유일한 저장장치 ㄴ프로그램이 실행되기 위해 -> 메모리로 적재 -메모리 하드웨어 ㄴ주소 + 데이터 읽기 요청/ 주소 + 데이터 쓰기 요청 -기본 하드웨어 레지스터 접근 -> 1 CPU clock 필요 / 메인 메모리; 사이클 ↑ 필요 + 멈춤현상(stall) 발생 / 캐시(Cache); 메인 메모리, CPU 레지스터 사이 존재 올바른 연산 보장 -> 메모리 보호 요구 *기준(Base) 및 상한(Limit) 레지스터 : 논리 주소 공간 정의 CPU_사용자 모드에서 생성 모든 메모리 주소 -> 사용자 기준, 상한 범위에 속하는 지 검사 *하드웨어 주소 보호 메모리 공간의 보호 : CPU 하드웨어가 사용자 모드에서 만들어진 모든 주소와 레..
CH6. CPU Scheduling
·
Computer Science/컴퓨터구조 | 운영체제
#Basic Concepts CPU 스케줄링: 다중 프로그램 운영체제의 기본 ㄴ다중 프로그램 목적: CPU 이용률 최대화 *CPU-I/O Burst Cycle 프로세스 실행: CPU 실행-입출력 대기의 사이클(CPU burst -> I/O burst) -CPU-burst 시간의 히스토그램 주요 관심사: CPU burst 분포 ㄴ짧은 CPU burst ↑ (입출력 중심의 프로그램이 전형적으로 가짐) *CPU 스케줄러(Short-term scheduler) : CPU가 유휴 상태 시, 준비 큐에 있는 프로세스들 중 하나의 프로세스 선택 CPU를 그 프로세스에게 할당/ 큐는 다양한 방식으로 정렬 가능O -CPU 스케줄링 결정이 발생하는 4가지 상황 1) running -> waiting 2) running -..
CH5. Process Synchronization
·
Computer Science/컴퓨터구조 | 운영체제
#배경 *프로세스는 병행 OR 병렬도 실행 데이터의 비일관성 : 언제든지 실행 중 인터럽트 당할 수 있고 부분적으로 완료될 수 있다 *문제 상황 협력적인 순차적 프로세스 OR 스레드로 구성된 시스템 비동기적으로 수행하면서 데이터 공유 ㄴ생산자-소비자 문제: 메모리 공유(=유한 버퍼) *Problem: Producer/ Consumer 문제: 동기화를 위해 (BUFFER_SIZE – 1)개 까지만 버퍼 사용 -Producer while (true) { /* produce an item in next produced */ while (((in+1) % BUFFER SIZE) == out); /* do nothing */ buffer[in] = next_produced; int = (in + 1) % BUFF..
0123suh
'Computer Science/컴퓨터구조 | 운영체제' 카테고리의 글 목록 (3 Page)