[운영체제] 컴퓨터 성능 향상 기술

찬들이·2022년 8월 8일
0

컴퓨터공학

목록 보기
8/34

💡컴퓨터 성능 향상 기술

  • 컴퓨터 성능의 저하를 유발하는 이유는 CPU와 메모리에서의 작업 속도일 것이다.
    CPU는 매우 빠른 속도로 작업을 수행하지만, Memory에서 데이터를 가져오게 되면 시간이 너무 많이 걸리기 때문에 성능이 저하된다.

  • 이런 문제들을 해결하기 위해 나온 기술들을 컴퓨터 성능 향상 기술이라 부른다.

    🎯 버퍼

    • 버퍼는 CPU와 보조기억장치에서 입출력 작업 속도 차이를 극복하기 위해 사용되는 임시 저장소이다.
    • 보조기억장치에서 데이터가 처리될 때마다 CPU에 하나씩 전송하게 되면 CPU는 빠른 연산 속도를 가졌음에도 불구하고 들어오는 데이터가 적어 비효율적으로 작업을 처리하게 된다.
      이를 해결하기 위해 보조기억장치는 주기억장치의 버퍼에 데이터를 쌓아 일정 데이터가 쌓였을 때 한 번에 보내는 방식을 취함으로 CPU의 성능 낭비를 최소화한다.
    • 버퍼는 여러 프로그램이 공유해서 사용 가능하다.

    🎯 스풀

    • 개념적인 부분에서는 버퍼와 비슷하지만
      다른 프로그램과 공유를 허용하지 않기 때문에 한 프로그램의 스풀 사용이 끝나야 다른 프로그램을 사용할 수 있다.

    • 스풀은 CPU 명령을 하드디스크나 대용량 저장매체에 저장하여 그 명령을 프린터와 같은 주변장치로 전달하여 처리하는 방식이다. 이를 통해 주변장치는 자신의 속도에 맞춰 작업을 효율적으로 처리할 수 있다.

      🎯 캐시

    • 캐시 메모리는 속도가 빠른 장치와 느린 장치에서 발생하는 병목 현상을 줄이기 위한 메모리이다.

    • 필요한 데이터를 쌓아놓는다는 점에서 버퍼와 유사하다. 캐시메모리는 CPU 간의 속도 차이를 완화하기 위해 메모리의 데이터를 미리 가져와 저장해두는 임시장소로 이후에 CPU에서 사용할 데이터를 미리 예측하여 저장해놓음으로써 CPU가 원하는 데이터가 캐시에 있을 시에 메모리로 접근하지 않고 바로 캐시에 있는 데이터를 반환한다.

    • 즉시 쓰기와 지연 쓰기

      • 캐시에 있는 데이터가 변경되면 메모리에 있는 원래 데이터를 변경해야 한다.
      • 즉시 쓰기는 캐시에 있는 데이터가 변경되었을 때 이를 즉시 메모리에 반영하는 방식이다. 메모리의 최신 값이 항상 유지되지만 성능이 느려진다는 단점이 있다
      • 지연 쓰기는 캐시에 있는 데이터가 변경되어도 이를 즉시 반영시키는 것이 아니라 주기적으로 반영하는 방식으로 메모리의 최신 값을 유지하지는 않지만 반영하는 연산이 즉시 쓰기보다 적어 성능을 덜 저하시킨다.
    • L1 & L2 캐쉬

      • L1캐쉬는 프로세서와 가장 가까운 캐시로 메모리에서 text 영역의 데이터를 다루는 캐시(IC:Instruction Cache)와 메모리에서 text 영역을 제외한 모든 데이터를 다루는 캐시(DC:Data Cache)로 나뉘며 CPU 레지스터에 직접 연결되어 있다.
      • L2캐쉬는 명령어와 데이터 구분 없이 모두 가져오며 메모리에 연결되어 있어 용량이 크다.

    🎯 인터럽트

    • 인터럽트란 CPU가 특정 기능을 수행하는 도중에 다른 연산을 처리하기 위해 사용하는 기능이다.
    • CPU를 사용하기 전에 거쳐야 하는 업무가 완료되었을 때 CPU에 알림을 줌으로 CPU가 무작정 연산이 끝날때까지 기다리는 시간을 없애는 기술이 인터럽트이다.

    🎯 폴링

    • Loop()문 내에서 반복적으로 외부 입력을 감시하는 문법 (절차지향적). 소프트웨어 구현이 간편하다는 장점이 있다.
    • 인터럽트와 하드웨어적 구성은 비슷하지만, 폴링은 Loop문을 돌면서 감시하는 문법이라면, 인터럽트는 이벤트가 발생 했을 시에만 값을 변경하는 용도로 사용 된다.
profile
Junior-Backend-Developer

0개의 댓글