Starbucks Caramel Frappuccino
본문 바로가기
  • 그래 그렇게 조금씩

Computer Science/컴퓨터 구조18

17. 다양한 입출력 방법 📱다양한 입출력 방법📱 1. 프로그램 입출력 프로그램 속 명령어로 입출력장치에 연결된 장치 컨트롤러를 제어하는 방법. 입출력 명령어를 통해 장치 컨트롤러와 상호작용 메모리에 저장된 정보를 하드디스크에 백업하는 상황을 가정해보자. (하드 디스크에 새로운 데이터 쓰기) -> CPU가 장치 컨트롤러의 레지스터 값을 읽고 쓰면서 프로그램 입출력 방식이 이루어짐. 그런데 CPU는 여러 장치컨트롤러의 레지스터들을 어떻게 알까? 방법 1. 메모리 맵 입출력 똑같이 메모리에 접근하기 때문에 명령어가 다를 필요가 없음. 방법 2. 고립형 입출력 입출력 전용 명령어가 실행되면 입출력장치에 접근(제어버스) 2. 인터럽트 기반 입출력 CPU 사이클을 효율적으로 관리할 수 있음. cf. 프로그램 입출력 방식에서는 CPU가 상태.. 2023. 8. 27.
16. 장치 컨트롤러, 장치 드라이버 📱장치 컨트롤러, 장치 드라이버📱 보조기억장치 포함, 모니터, 프린터, 헤드폰, 스피커 등 입력 장치들은 컴퓨터 내부와 어떻게 데이터를 주고받을까? '규격화의 어려움' '낮은 전송률' 장치 컨트롤러(하드웨어) - CPU와 입출력장치 간의 통신중개 (번역해준다고 생각) - 오류 검출 - 데이터 *버퍼링 * 전송률이 높은 장치와 낮은 장치 사이에 주고받는 데이터를 '버퍼'라는 임시 저장 공간에 저장해서 전송률을 비슷하게 맞추는것. 장치 컨트롤러의 구조 장치 드라이버(소프트웨어) 장치 컨트롤러의 동작을 감지하고 제어하는 프로그램 컴퓨터(운영체제)가 연결된 장치의 드라이버를 인식하고 실행할 수 있다면, 컴퓨터 내부와 정보를 주고받을 수 있다. 학습 출처: https://www.youtube.com/watch?v.. 2023. 8. 24.
15. RAID 📱RAID📱 RAID(Redundant Array of Independent Disks) - 하드 디스크와 SSD로 사용하는 기술 - 데이터의 안정성 or 높은 성능을 위해 여러 물리적 보조기억장치를 하나의 논리적 보조기억장치처럼 사용하는 기술 RAID 0 RAID 1 but 백업 및 복구가 편리하다는 장점이 있음. RAID 4 RAID 1보다 적은 하드디스크로도 데이터를 안전하게 보관할 수 있다. but 패리티 비트가 있는 디스크에 병목 현상이 생기는 단점이 있음. RAID 5 RAID 6 이렇게 각 RAID 레벨마다 장, 단점이 존재하기 때문에 요구사항에 맞게 RAID 레벨을 선택하는 것이 필요하겠다. 입출력 속도가 중요하거나.. 백업본이 중요하거나.. 학습 출처: https://www.youtube.. 2023. 8. 22.
14. 보조기억장치(하드디스크, 플래시 메모리) 📱보조기억장치(하드디스크, 플래시 메모리)📱 하드 디스크 자기적인 방식으로 데이터 저장. ex.CD ROM, 플로피 디스크 하드디스크의 저장 단위 연속된 정보를 한 실린더에 기록해야 헤드를 움직이지 않고 데이터를 읽을 수 있음. 하드디스크가 저장된 데이터에 접근하는 시간. 1. 탐색 시간(seek time) 2. 회전 지연 (rotational latency) 3. 전송 시간(transfer time) 아래 이미지를 보면 알 수 있듯이, 캐시메모리 < 메모리 < 하드디스크 순으로 시간이 많이 걸린다. 플래시 메모리 전기적으로 데이터를 읽고 쓰는 반도체 기반 저장 장치 ex.SSD, USB, SD 플래시 메모리는 범용성이 높아서 보조기억장치에만 속한다고 말하기는 어려움. (ex. 주기억 장치인 ROM으로도.. 2023. 8. 22.
13. 캐시 메모리 📱캐시 메모리📱 CPU가 메모리에 접근하는 시간은 CPU 연산 속도보다 훨씬 느리다! 저장 장치 계층 구조(memory hierarchy)_여기서 memory는 RAM이 아니라 일반적인 저장장치 1. CPU와 가까운 저장 장치는 빠르고(ex. 레지스터), 멀리 있는 저장 장치는 느리다.(ex.메모리, USB) 2. 속도가 빠른 저장 장치는 저장 용량이 작고 비싸다. 캐시 메모리 CPU와 메모리 사이에 있으며, 레지스터보다 용량이 크고, 메모리보다 빠른 SRAM 기반의 저장장치. CPU의 연산 속도와 메모리 접근 속도의 차이를 줄이기 위해 탄생. CPU가 매번 메모리에 접근하는 것은 시간이 오래 걸리기 때문에, 메모리에서 CPU가 사용할 데이터의 일부를 미리 캐시 메모리로 가지고 와서 쓰는 것.(ex. 이.. 2023. 8. 21.
12. 메모리의 주소 공간 📱메모리의 주소 공간📱 메모리의 주소는 논리 주소, 물리 주소로 나눌 수 있다. CPU와 실행 중인 프로그램(프로세스)는 현재 메모리 몇 번지에 무엇이 저장되어 있는지 다 알고 있을까? 모른다. why? 메모리에 저장된 값들은 시시각각 변하기 때문이다. - 새로 실행되는 프로그램은 새롭게 메모리에 적재됨. - 실행이 끝난 프로그램은 메모리에서 삭제됨. - 같은 프로그램이더라도 실행할 때마다 적재되는 주소는 달라짐. -> 이런 점을 극복하기 위해 주소를 물리 주소와 논리 주소로 나눔 물리 주소 메모리 입장에서 바라보는 주소. 정보가 실제로 저장된 하드웨어상의 주소. 논리 주소 CPU와 실행 중인 프로그램 입장에서 바라보는 주소. 실행 중인 프로그램 각각에게 부여되는 0번지부터 시작하는 주소. 위 예시를 보.. 2023. 8. 20.