1. 컴퓨터 시스템에서 연산 속도CPU 레지스터 > CPU 캐시(Cache) > 메인 메모리(RAM) > 하드 디스크(HDD) 2. 캐시(Cache)를 왜 사용할까?메모리가 CPU 속도를 따라오지 못한다.CPU 성능은 빠르게 향상되었지만, 메모리의 처리 속도는 이를 따라오지 못했다. 아무리 CPU의 처리 속도가 빠르더라도 메모리 속도가 이를 따라오지 못한다면 시스템 성능은 저하될 수밖에 없다.메모리와 CPU 간 속도 차이로 작업이 지연된다.CPU는 초당 수십억 개의 명령어를 처리할 수 있지만, 메인 메모리는 그 속도를 따라오지 못한다. CPU가 데이터를 처리하려면 메모리에서 필요한 데이터를 읽어오거나 쓰는 과정이 필요한데, 메모리 속도가 느리면 CPU는 데이터가 도착할 때까지 대기해야 한다. CPU가 메..
동기 방식은 블로킹 I/O에서는 실행 상태에서 CPU 자원을 사용하던 프로세스가 입출력 작업이 발생하면 대기 상태로 이동한다. 대기 상태로 이동하면 사용하던 CPU 자원은 운영체제의 CPU 스케줄링에 의해 준비 상태에 있는 다른 프로세스에게 할당한다. 입출력 작업이 종료되면 대기 상태에서 준비 상태로 이동되어 CPU 스케줄링을 대기하게 된다. 비동기 방식인 논 블로킹 I/O에서는 실행 상태에 있는 프로세스가 입출력 작업이 발생하더라도 실행 상태를 유지하면서 CPU 자원을 사용한다. 이는 운영체제의 비동기 처리 메커니즘 덕분이다. 이 메커니즘은 CPU가 입출력 작업이 완료되기까지 기다리지 않고, 그 사이에 다른 작업을 할 수 있도록 하여 CPU 자원을 보다 효율적으로 사용할 수 있게 한다. 비동기 방식 메..
1. 캐시 메모리(Cache Memory)캐시 메모리는 CPU와 주 기억장치(메인 메모리, RAM) 사이의 고속 데이터 저장소로 사용된다. 데이터에 빠르게 접근할 수 있도록하여 시스템의 전반적인 성능을 향상시킨다. 캐시 메모리는 CPU가 주 기억장치에 접근하는 것보다 빠른 속도로 데이터에 접근할 수 있도록 해준다. CPU는 먼저 캐시에서 데이터를 찾고 데이터가 없는경우 주 기억장치에서 데이터를 가져온다. 자주 사용되는 데이터나 명령어를 캐시 메모리에 저장하면 CPU는 캐시 메모리에 저장된 정보를 재사용할 수 있다. 이는 반복적인 메모리 접근을 줄인다. 2. 캐시의 지역성(Cache Locality)CPU는 데이터를 가져오기 위해 캐시 메모리에 먼저 접근하고 데이터가 존재하지 않는다면 주 기억장치에 접근..