본문 바로가기

공부/CSOS8

입출력장치 -장치 컨트롤러와 장치 드라이버 장치 컨트롤러 입출력 장치가 다루기 까다로운 이유 첫째, 입출력장치에는 종류가 너무나도 많습니다. 둘째, 일반적으로 CPU와 메모리의 데이터 전송률은 높지만 입출력장치의 데이터 전송률은 낮습니다. 이와 같은 이유로 입출력장치는 컴퓨터에 직접 연결하지 않고 장치 컨트롤러라는 하드웨어를 통해 연결됩니다. 장치 컨트롤러는 입출력 제어기, 입출력 모듈등으로 다양하게 불리기도 합니다. 모든 입출력장치는 각자의 장치 컨트롤러를 통해 컴퓨터 내부와 정보를 주고받고, 장치 컨트롤러는 하나 이상의 입출력장치와 연결되어 있습니다. 장치 컨트롤러는 대표적으로 다음과 같은 역할을 통해 앞에서 언급한 문제들을 해결합니다. *CPU와 입출력장치 간의 통신 중개 *오류 검출 *데이터 버퍼링 입출력장.. 2023. 2. 26.
보조기억장치 -다양한 보조기억장치 하드디스크(HDD) 하드 디스크는 자기적인 방식으로 데이터를 저장하는 보조기억장치입니다. 자기 디스크의 일종으로 지칭하기도 합니다. 하드 디스크에서 실질적으로 데이터가 저장되는 곳은 동그란 원판입니다. 플래터라고 합니다. 플래터는 자기 물질로 덮여 있어 수많은 N극과 S극을 저장합니다. N극과 S극은 각각 0과 1의 역할을 수행합니다. 플래터를 회전 시키는 구성 요소를 스핀들이라고 합니다. 속도는 분당 회전수를 나타내는 RPM이라는 단위로 표현됩니다. 플래터를 대상으로 데이터를 읽고 쓰는 구성 요소는 헤드입니다. 마치 바늘같이 생긴 부품으로 데이터를 읽고 씁니다. 헤드는 원하는 위치로 헤드를 이동시키는 디스크 암에 부착되어 있습니다. 플래터는 트랙과 섹터라는 단위로 데이터를 저장합니.. 2023. 2. 15.
메모리와 캐시 메모리 -RAM의 특징과 종류 RAM의 특징 RAM에는 실행할 프로그램의 명령어와 데이터가 저장됩니다. 전원을 끄면 저장된 내용이 사라지는 저장 장치를 휘발성 저장 장치라고 합니다. 반면 전원이 꺼져도 내용이 유지되는 저장 장치는 비휘발성 저장 장치라고 합니다. 하드 디스크나 SSD, CD-ROM, USB메모리 같은 보조기억장치가 대표적인 비휘발성 저장 장치입니다. 일반적으로 보조기억장치인 비휘발성 저장 장치에는 보관할 대상을 저장하고, 휘발성 저장장치인 RAM에는 실행할 대상을 저장합니다. RAM의 용량과 성능 RAM 용량이 크면 많은 프로그램들을 동시에 빠르게 실행하는 데 유리합니다. 용량이 커지면 프로그램 실행 속도가 어느 정도 증가하는 것은 맞지만, 용량이 필요 이상으로 커졌을 때 속도가 그에 비례하여 .. 2023. 2. 12.
CPU 성능 향상 기법 -빠른 CPU를 위한 설계 기법 클럭 클럭 속도가 높은 CPU는 일반적으로 성능이 좋습니다. 그래서 클럭 속도는 CPU 속도 단위로 간주 되기도 합니다. 클럭 속도는 헤르츠 단위로 측정합니다. 이는 1초에 클럭이 몇 번 반복되는지를 나타냅니다. 클럭 속도를 높이는 것은 분명 CPU를 빠르게 만들지만, 클럭 속도만으로 CPU의 성능을 올리는 것에는 한계가 있습니다. ***클럭 속도는 일정하지 않다, 최대 클럭 속도를 강제로 더 끌어올릴 수 있는데 이런 기법을 오버 클러킹 이라고 합니다. 코어와 멀티코어 CPU의 성능을 높이는 방법에는 코어와 스레드 수를 늘리는 방법이 있습니다. 우리가 지금까지 CPU의 정의로 알고 있었던 명령어를 실행하는 부품은 오늘날 코어라는 용어로 사용됩니다. 8코어는 명령어를 실행하.. 2023. 2. 3.
CPU의 작동 원리 -ALU와 제어장치 ALU는 레지스터를 통해 피연산자를 받아들이고, 제어장치로부터 수행할 연산을 알려주는 제어신호를 받아들여 산술연산, 논리 연산등 당양한 연산을 수행합니다. 결과값은 바로 메모리에 저장되지 않고 일시적으로 레지스터에 저장합니다. (속도가 원인) ALU는 계산결과와 더불어 플래그(추가정보, 추가적인 상태 정보)를 내보냅니다. 플래그 종류 부호 플래그, 제로 플래그, 캐리 플래그(올림수나 빌림수), 오버플로우 플래그, 인터럽트 플래그, 슈퍼바이저 플래그 플래그들은 플래그 레지스터에 저장됩니다. 제어장치는 제어 신호를 내보내고, 명령어를 해석한는 부품이라고 설명했습니다. 일종의 전기신호입니다. 1. 제어신호는 클럭신호를 받아들입니다. 클럭이란 컴퓨터의 모든 부품을 일사불란하게 움직일 수 있게.. 2023. 1. 22.
명령어 -고급언어와 저급언어 사람을 위한 언어를 고급 언어라고 합니다. 여러분이 알고 있는 대부분의 프로그래밍 언어가 고급 언어에 속합니다. 컴퓨터가 직접 이해하고 실행할 수 있는 언어를 저급 언어라고 합니다. 저급 언어에는 두 가지 종류가 있습니다. 바로 기계어와 어셈블리어입니다. 기계어란 0과 1의 명령어 비트로 이루어진 언어입니다. 이진수로 나열하면 너무 길어지기 때문에 가독성을 위해 십육진수로 표현하기도 합니다. 0과 1로 표현된 기계어를 읽기 편한 형태로 번역한 언어가 어셈블리어입니다. -컴파일 언어와 인터프리터 언어 (고급언어 → 저급언어) 컴파일 언어는 컴파일러에 의해 소스 코드 전체가 저급 언어로 변환되어 실행되는 고급 언어입니다. (ex. C) 코드 전체가 저급 언어로 변환되는 과정을 컴파일이라.. 2023. 1. 8.
데이터 정보 단위 0과 1을 나타내는 가장 작은 정보 단위를 비트라고 합니다. n비트는 2의 n승 가지 정보를 표현할 수 있습니다. 바이트는 여덟 개의 비트를 묶은 단위로, 비트보다 한 단계 큰 단위입니다. 1바이트는 8비트와 같으니 2의 8승 (256)개의 정보를 표현할 수 있겠죠. 1바이트 1000개를 묶은 단위를 1킬로바이트라고 합니다. 1킬로바이트 1000를 묶은 단위를 1메가바이트, 1메가바이트 1000개를 묶은 단위를 1기가바이트, 1기가바이트 1000개를 묶은 단위를 1테라바이트라고 합니다. 워드 : 워드란 CPU가 한 번에 처리할 수 있는 데이터 크기를 의미합니다. 한 번에 16비트를 처리할 수 있다면 1워드가 16비트, 32비트면 1워드가 32비트가 됩니다. 절반 크기를 하프 워드, 1배 크기를.. 2023. 1. 1.
컴퓨터 구조 시작하기 컴퓨터 구조 → 컴퓨터가 이해하는 정보 → 데이터, 명령어 → 컴퓨터의 네 가지 핵심 부품 데이터 : 컴퓨터가 이해하는 숫자, 문자, 이미지, 동영상과 같은 정적인 정보 명렁어 : 컴퓨터를 실질적으로 작동시키는 더 중요한 정보, 데이터를 움직이고 컴퓨터를 동작시키는 정보 즉, 명령어는 컴퓨터를 작동시키는 정보이고 데이터는 명령어를 위해 존재하는 일종의 재료 컴퓨터의 4가지 핵심 부품 중앙처리장지 (CPU) - 컴퓨터의 두뇌, 메모리에 저장된 명령어를 읽어 들이고, 읽어 들인 명령어를 해석하고, 실행하는 부품입니다. CPU 내부 구성 요소 중 가장 중요한 세 가지는 산술논링연산장치(ALU), 레지스터, 제어장치 입니다. ALU는 쉽게 말해 계산기입니다. 레지스터는 CPU 내부의 작은 임시 저장 장치입니다... 2023. 1. 1.