
[Computer Structure] Register
🧩 Memory Hierarchy 현대 컴퓨팅 아키텍처에서 성능의 병목은 더 이상 연산 속도 그 자체가 아닙니다. 문제는 ‘데이터의 이동’입니다. 프로세서가 아무리 강력한 ALU(Arithmetic Logic Unit)를 보유하고 있더라도, 연산에 필요한 피연산자를 적시에 공급받지 못하면 CPU는 그저 무의미한 클록 사이클을 소모하며 대기할 뿐입니다...

🧩 Memory Hierarchy 현대 컴퓨팅 아키텍처에서 성능의 병목은 더 이상 연산 속도 그 자체가 아닙니다. 문제는 ‘데이터의 이동’입니다. 프로세서가 아무리 강력한 ALU(Arithmetic Logic Unit)를 보유하고 있더라도, 연산에 필요한 피연산자를 적시에 공급받지 못하면 CPU는 그저 무의미한 클록 사이클을 소모하며 대기할 뿐입니다...

소프트웨어 아키텍처의 역사는 곧 ‘소통의 경계’를 획정해온 기록입니다. 초기의 모놀리식 시스템 내부에서 함수 호출(Function Call)로 해결되던 데이터 흐름은, 시스템이 물리적으로 파편화되고 네트워크라는 불확실한 매개를 사이에 두게 되면서 거대한 전환점을 맞이했습니다. 이제 통신은 단순히 바이트를 옮기는 행위를 넘어, 서로 다른 생존 주기를 가...

도시를 설계할 때 도로의 폭, 건물의 용도 제한, 상하수도의 위치를 규정하는 법규는 창의성을 제한하는 것처럼 보입니다. 그러나 이러한 제약 덕분에 수백만 명의 시민이 예측 가능한 방식으로 상호작용하며 거대한 유토피아를 유지합니다. 소프트웨어 아키텍처의 세계에서 REST(Representational State Transfer)는 바로 이 ‘도시 계획 ...

🧩 Process 현대 운영체제의 가장 거대한 마법은 ‘독점의 환상’을 만들어내는 데 있습니다. 수십 개의 앱이 동시에 돌아가고 있음에도, 각 프로그램은 마치 자신이 CPU 전체를 점유하고 무한한 메모리 공간을 홀로 사용하는 것처럼 행동합니다. 운영체제는 이 가련하고 이기적인 프로그램들에게 Process라는 추상화된 무대를 제공함으로써 이 환상을 현...

우리는 흔히 아키텍처를 논할 때 모놀리식 마이크로서비스와 같은 배포 구조를 떠올립니다. 그러나 진정한 의미의 아키텍처는 단일 프로세스 내의 코드 조직화(Internal Structure)에서 시작됩니다. 내부 아키텍처의 핵심 목표는 화려한 패턴 적용이 아닙니다. 개발자가 코드를 읽을 때 겪는 인지 부하(Cognitive Load)를 줄이고, 관련된 ...

JVM은 프로그램 실행 중에 사용되는 다양한 데이터 영역을 정의합니다. 이러한 데이터 영역 중 일부는 JVM 시작 시 생성되어 JVM이 종료될 때만 소멸(Shared)됩니다. 다른 데이터 영역은 스레드별로 관리되어 스레드가 생성될 때 생성되고 스레드가 종료될 때 소멸(Per-Thread)됩니다. 🧩 Per-Thread Data Areas (스레드 별...

🧩 Linked List Linked List & Array 연결 리스트는 임의의 메모리 공간에 있는 요소를 연결하여 저장하는 자료구조입니다. 배열과의 비교를 통해 연결 리스트를 더 쉽게 이해할 수 있습니다. 배열은 연속된 공간에 요소를 저장합니다. C에서 다음과 같이 선언할 수 있습니다. int scores[100]; scores[0]...
AI 기술의 발전으로 인해 많은 지식보다 높은 수준의 지식을 제공하는 것이 무엇보다 중요하다 생각됩니다. 본 블로그는 정확한 정보에 기반하여 필자만의 확고한 관점을 제공하는 것을 목표로 합니다.