Book Learning - IT/혼공컴운

Book Learning - IT/혼공컴운

[6] 메모리와 캐시(캐시 메모리)에 대해서

메모리, RAM(Random Access Memory) RAM은 Random Access Memory로 어떤 위치건(Random) 접근(Access)할 수 있는 기억장치(Memory)입니다. 메모리라고 하면 컴퓨터에서는 대부분 RAM을 말합니다. 램이라고 부르는 이 저장장치는 휘발성(Volatile) 저장장치로, 전원이 꺼지면 안에 있던 명령어나 데이터가 없어집니다. 반면에 하드디스크 드라이브, 솔리드 스테이트 드라이브(SSD)는 전원이 꺼져도 내부 데이터가 남아있어 비휘발성 저장장치로 분류됩니다. 메모리의 필요성과 휘발/비휘발 램은 왜 있을까요? 초기에 공부했던 것처럼, 램이 필요한 이유는 프로그램의 명령어와 데이터는 CPU 내부의 레지스터에 모두 저장할 수 없는 크기이기 때문에 필요한 데이터나 명령어..

Book Learning - IT/혼공컴운

[5] CPU 설계 기법으로 알아보는 성능

안녕하세요, 이번 챕터는 조금 쉬어가는 느낌입니다. 클럭, 코어, 스레드 데스크탑이나 노트북의 CPU를 알아보시다 보면 클럭, 코어, 스레드(쓰레드, Thread) 라는 용어들을 많이 접하실 거에요. 이것들이 무엇이고 어떻게 쓰이는지 간략하게 정리해보겠습니다. 먼저 CPU 입니다. CPU는 판매되는 중앙처리장치 패키지 전체를 지칭하는 용어입니다. 실제 연산을 하는 건 그 안의 코어입니다. 컴퓨터 안에서 부품들은 많은 것들이 동시에, 빠르게 움직입니다. 앞뒤 순서가 뒤집어지면 그 컴퓨터가 내놓는 연산 결과는 믿을 수가 없겠죠. 이런 순서를 지켜주기 위해서 컴퓨터의 부품들은 클럭 신호를 기준으로 움직입니다. 메트로놈 같이 순서를 맞춰주는 기준이 있다는 것입니다. 모두가 하나의 메트로놈을 기준으로 일을 하는데..

Book Learning - IT/혼공컴운

[4] CPU는 어떻게 동작할까

ALU와 플래그 레지스터 앞서 [1]장에서 Arithmetic and Logic Unit, Control Unit, Register 들로 이뤄진 CPU의 Core에 대해 이야기했었습니다. 이번에는 이러한 내용을 좀 더 자세히 알아보겠습니다. *대학 전공수업에서는 실제 회로로 어떻게 구현하는지를 함께 수업하지만, 여기서는 그러한 내용은 생략하도록 하겠습니다. 위 그림은 ALU가 어떻게 정보를 받아들이고 내보내는지를 알 수 있는 그림입니다. ALU는 레지스터를 통해 피연산자(오퍼랜드)를 받아들이고, CU로부터 수행할 연산이 무엇인지 제어 신호(Control Signal)를 받아들입니다. CU는 IR로부터 어떤 명령어를 ALU에게 전달해야 할 지를 받아들입니다. ALU가 주어진 명령어를 처리하면 이 또한 레지..

Book Learning - IT/혼공컴운

[3] 고급 언어와 저급 언어, 명령어의 구조

고급 언어와 저급 언어 Java, C, C++, C#, Python, Ruby, Javascript ... 모든 프로그램을 만드는 소스코드는 명령어로 변환된 이후에 실행될 수 있습니다. 위에서 언급한 프로그래밍 언어는 공통점이 있습니다. 바로 사람이 이해할 수 있는 '고급 언어(High-level programming language)'라는 것입니다. 컴퓨터 구조를 배울 때나 특정 환경에서는 간혹 '저급 언어(Low-level programming language)를 사용하기도 합니다. 저급 언어는 두 종류로 나뉘며 이는 어셈블리어와 기계어를 말합니다. 기계어는 0과 1의 비트들로 이루어진 명령어들입니다. 이는 이진수로 표현될 수 있으며, 너무 길게 표현되어 가독성이 떨어져서 16진수로 표현하는 경우가 ..

azcz
'Book Learning - IT/혼공컴운' 카테고리의 글 목록