Computer Science
-
[Computer Science] 입출력 장치 : 다양한 입출력방법Computer Science 2024. 5. 17. 11:31
입출력 장치의 세 가지 입출력 방식: 프로그램 입출력, 인터럽트 기반 입출력, DMA 입출력에 대해 정리하였습니다.참조 : 인프런 '개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제'프로그램 명령어를 이용해 입출력장치 속 장치 컨트롤러의 레지스터 값을 읽고 씀으로써 제어하는 방법입니다. Ex : 메모리에 저장된 정보를 하드 디스크에 백업하는 과정1. CPU가 하드 디스크 컨트롤러의 제어 레지스터에 쓰기 명령 내보내기 2. 하드 디스크 컨트롤러는 하드 디스크 상태 확인 -> 상태 레지스터에 준비 완료 표시 3-1. CPU는 상태 레지스터를 주기적으로 읽어보여 하드 디스크의 준비 여부를 확인3-2. 하드 디스크가 준비되었다면 백업할 메모리의 저오를 데이터 레지스터에 쓰기 CPU가 장치 컨..
-
[Computer Science] 입출력 장치 : 장치 컨트롤러와 장치 드라이버Computer Science 2024. 5. 17. 10:04
입출력 장치를 컨트롤하는 장치 컨트롤러와 장치 드라이버에 대해 정리하였습니다.참조 : 인프런 '개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제'입출력 장치는 CPU나 메모리보다 다루기가 까다롭습니다.이를 해결하기 위해 장치 컨트롤러와 장치 드라이버를 사용합니다. [ 첫째, 입출력장치에는 종류가 너무나도 많습니다 ]: 장치가 다양하면 장치마다 속도, 데이터 전송 형식 등도 다양하기 때문에 정보를 주고받는 방식을 규격화하기 어렵습니다. [ 둘째, CPU와 메모리의 데이터 전송률은 높지만 입출력장치의 데이터 전송률은 낮다 ] 보조기억장치와 입출력장치는 딱 잘라서 구분되지는 않습니다. 보조기억장치는 메모리를 보조하는 입출력장치의 한 종류로 볼 수 있습니다. 입출력장치는 장치 컨..
-
[Computer Science] 보조기억장치 : RAID의 정의와 종류Computer Science 2024. 5. 16. 14:19
보조기억장치의 RAID개념에 대해 정리하였습니다.참조 : 인프런 '개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제'데이터의 안정성 혹은 높은 성능을 위해 여러 물리적 보조기억장치를 마치 하나의 논리적 보조기억장치처럼 사용하는 기수입니다. >RAID를 구성하는 기술을 RAID 레벨 이라고 합니다.(RAID 0, RAID 1, RAID 2, ETC.) 스트라잎(stripe) : 마치 줄무늬처럼 분산되어 저장된 데이터스트라이핑(striping) : 분산하여 저장하는 것 [ RAID 0 ]: 데이터를 단순히 나누어 저장하는 구성 방식 [ 장점 ] : 입출력 속도의 향상[ 단점 ] : 저장된 정보가 안전하지 않음 [ RAID 1 ]: 미러링(mirroring)을 이용해 복사본을 만드는 방..
-
[Computer Science] 보조기억장치 : 다양한 보조기억장치Computer Science 2024. 5. 16. 13:37
다양한 보조기억장치 중 가장 대표적으로 사용되는하드디스크와 플래시메모리에 대해 정리하였습니다.참조 : 인프런 '개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제'자기적인 방식으로 데이터를 저장하는 보조기억장치 [ 스핀들 ]플래터를 고정하고 회전시키는 축.RPM(Revolution Per Minute) : 분당 회전수[ 플래터 ] 데이터를 저장하는 자성 물질로 이루어진 실제 저장ㅅ 매체. 일반적으로 플래터 양면 모두 사용. 여러 개의 트랙과 섹터로 나뉨. [ 헤드 ] 플래터의 자성 표면에서 데이터를 읽고 쓰는 작은 장치. 플래터의 양면마다 헤드가 있음.[ 모니터 암 ] 드를 플래터 표면의 원하는 위치로 이동시키는 팔. 하드디스크: 저장 단위 >섹터(sector)가 모여 트랙(tra..
-
[Computer Science] 메모리 : 캐시 메모리Computer Science 2024. 5. 15. 21:25
메모리의 캐시 메모리에 대해 정리하였습니다.참조 : 인프런 '개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제'CPU와 가까운 저장 장치는 빠르고, 멀리 있는 저장 장치는 느리다.속도가 빠른 저장 장치는 저장 용량이 작고, 가격이 비싸다. CPU가 메모리에 접근하는 시간은 CPU의 연산 속도보다 압도적으로 느립니다. 이를 보완하기 위해 캐시 메모리가 탄생했습니다. CPU와 메모리 사이에 위치한, 레지스터봐 용량이 크고 메모리보다 빠른 SRAM 기반의 저장 장치입니다.CPU의 연산 속도와 메모리 접근 속도의 차이를 조금이나마 줄이기 위해 탄생했습니다. [ 계층적 캐시 메모리 ]현대 CPU는 일반적으로 계층적으로 캐시 메모리를 구성합니다. +. 일반적으로 L1 캐시와 L2 캐시는 ..
-
[Computer Science] 메모리 : 메모리의 주소 공간Computer Science 2024. 5. 15. 17:48
메모리의 주소 공간, 주소 체계에 대해 정리하였습니다.참조 : 인프런 '개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제'CPU와 현재 실행 중인 프로그램은 현재 몇 번지에 어떤 프로그램/명령어가 저장되어 있는지 알지 못합니다.이러한 점을 극복하기 위해 메모리의 주소 체계를 논리주소와 물리주소로 나누었습니다. 메모리에 저장된 값들은 시시각각 변하기 때문에 CPU와 현재 실행 중인 프로그램은 메모리의 몇번지에 어떤 프로그램/명령어가 저장되어 있는지 알지 못합니다.새롭게 실행되는 프로그램은 새롭게 메모리에 적재실행이 끝난 프로그램은 메모리에서 삭제같은 프로그램을 실행하더라도 실행할 때마다 적재되는 주소는 달라짐 논리 주소는 CPU와 실행 중인 프로그램 입장에서 바라본 주소입니다.=> ..
-
[Computer Science] 메모리 : RAM의 특징과 종류Computer Science 2024. 5. 15. 13:19
메모리의 특징과 종류에 대해 정리하였습니다.참조 : 인프런 '개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제'RAM은 실행할 대상을 저장하고, 휘발성 저장 장치입니다.(보조기억장치는 보관할 대상을 저장하고, 비휘발성 저장 장치입니다.)RAM의 용량이 클수록 많은 프로그램들을 동시에 실행하는 데에 유리합니다. 주기억장치의 종류에는 크게 RAM과 ROM 두 가지가 있고, 메모리라는 용어는 그 중 RAM을 지칭하는 경우가 많습니다. RAM의 종류에는 크게 DRAM, SRAM, SDRAM, DDR SDRAM 가 있습니다. [ DRAM (Dynamic RAM) ] 저장된 데이터가 동적으로 사라지는 RAM입니다.=> 데이터 소멸을 막기 위해 주기적으로 재활성화 해주어야 합니다. 상대적으..
-
[Computer Science] CPU : 명령어 집합 구조, CISC와 RISCComputer Science 2024. 5. 15. 12:35
CPU의 언어인 명령어 집합 구조에 대해 정리하였습니다.참조 : 인프런 '개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제'CPU가 이해할 수 있는 명령어들의 모음, 즉 CPU의 언어입니다.=> CPU는 명령어 집합에 속해 있는 명령어들만 이해할 수 있습니다.대표적으로 CISC와 RISC가 있습니다. +. 인텔의 CPU는 일반적으로 "x86 (x86-64)" 명령어 집합을, 애플의 CPU는일반적으로 "ARM" 명령어 집합을 따릅니다. +.같은 소스코드를 컴파일 하더라도 CPU의 종류에 따라서 Assemblier의 종류도 달라질 수 있습니다. CISC는 복잡하고 다양한 수의 가변 길이 명령어 집합을 활용하는 CPU를 말합니다.x86, x86-64는 CISC 기반 명령어 집합 구조입니다...