3장 - 4장 DeepDive 5개만 발표용
발표용이자 공유용
1. 정렬되지 않은 접근이 문제가 되는 이유
🏙️ 비유로 이해하는 메모리 정렬
🏘️ 건물(포플렉스) = 메모리 블록
🚌 버스 = 데이터 버스
🧩 문제 상황: 정렬이 맞지 않을 때
🐢 왜 이게 문제일까?
2. 클럭을 만들어주는 클리스털 발진기 는 어디에 있을까?
🧠 즉, 발진자가 곧 클록이다!
🖥️ 그럼 발진자는 어디 있냐?
예를 들어
🔍 덧붙여서…
3. “일반적인 논리 회로 설계 오류는 최댓값이나 최솟값을 사용하지 않고 전형적인 값을 사용하기 때문에 생긴다.”
🤔 무슨 상황일까?
❗ 그런데 문제는 뭐냐면…
💥 예시로 정리해보자
🔍 그래서 안전하게 설계하려면?
🧠 요약하면?
항목
설명
4. 인버터와 OR 게이트 래치의 차이
🔄 인버터(=NOT 게이트)는?
🧩 그런데 OR 게이트는?
OR 게이트는?
🔍 예시로 따라가보자!
초기 상태:
그다음, in을 1로 바꿔!
이제 다시 in을 0으로 바꿔볼까?
🎯 핵심 차이: 인버터는 반전, OR은 고정화
회로
특징
결과
💡 인버터는 ‘동그라미’가 핵심
5. 디스크, 메모리, CPU 중 100% 넘을 수 없는 것? 넘으면 어떻게 되는가?
💻 CPU: 100% 넘는 것처럼 보일 수 있다 (멀티코어 때문)
1) CPU 사용률은 어떻게 계산될까?
2) CPU 100%면 무슨 일이 일어날까?
💾 디스크 I/O: 100%가 넘는다기보단 병목이 생김
📌 확인 방법:
🧠 메모리: 100% 넘으면? → 스왑(SWAP) 사용 → 시스템 느려짐
정리 ✨
자원
100%일 때 현상
넘어가면?
컨텍스트 스위칭
💬 그래서 "100% 넘을 수 있나요?" 요약하면:
6. 재미 있는 이야기들 모음
1) 🧠 주소는 그냥 숫자가 아니다: 주소 체계와 주소 바인딩의 뒷이야기
2) 🧱 메모리는 도시다? 포플렉스 고속도로 비유가 말이 되는 이유
3) 🧩 명령어가 명령어를 부른다: 마이크로코드라는 '숨겨진 작은 컴퓨터'
4) 🧮 ALU의 조건 코드 레지스터: 계산 결과만큼 중요한 부가 정보
5) 🎨 GPU는 왜 컬러링북을 닮았을까? 병렬성과 메모리 접근 속도의 마법
6) 🎮 게임할 때 '렉'이 생기는 진짜 이유는 뭘까?
👉 버스 충돌과 캐시 미스, 메모리 병목이 원인일 수 있어!
7) 롬은 비휘발성인데 왜 프로그램은 전원이 꺼지면 다 날라갈까?
8) 왜 스마트폰은 부팅이 빠른데, PC는 느릴까?
9) “32GB 메모리 노트북”이 실제로 다 쓸 수 없는 이유는?
10) 노트북을 오래 쓰면 왜 점점 느려지는 걸까?
7. 🧱 ALU는 사칙연산만 하던데, 시프트 연산은 왜 따로 존재할까?
👉 시프트는 연산이 아니라 '비트 재배열'이기 때문!
8. 개발자가 맥을 좋아하는 이유가 뭘까?
🧠 애플(Mac) vs 삼성/LG(Windows 노트북)

1. CPU 아키텍처가 다르다: Intel/AMD vs Apple Silicon (M1/M2/M3)
2. 메모리 구조 (RAM + 통합성)
3. 운영체제: macOS vs Windows
4. 왜 개발자들이 애플을 선호할까?
5. 그럼에도 불구하고 Windows가 나은 경우는?
💬 요약하자면…
항목
애플 Mac (M 시리즈)
삼성/LG Windows 노트북
Last updated