분류
개발
DB·백엔드에서 실제로 터지는 문제와 USB·CD 굽기 교과서를 모았다. 느린 쿼리, 락과 트랜잭션, 장애와 확장, 배포와 관측은 태그로 나눠 찾는다.
96편 · 글 80 · 강 16 · 마지막 글 2026.09.28
교과서굽기 16강
개발 글
96편 중 1–12
굽기는 복사가 아니다
평소에 USB를 쓰는 방식은 파일 복사 다. 파인더에서 사진을 끌어다 놓으면 USB 안에 사진 파일이 하나 생긴다. 이때 USB에는 이미 "정리 체계"가 깔려 있다. 어느 파일이 어디에 있는지 적어 두는 장부다. 복사는 그 장부에 한 줄을 더하고 빈…
디스크는 번호 붙은 칸이다
USB든 CD든 하드디스크든, 저장장치를 가장 밑바닥에서 보면 전부 똑같다. 크기가 같은 칸이 한 줄로 늘어서 있고, 칸마다 0번부터 번호가 붙어 있다. 이 칸을 섹터 라고 하고, 번호를 LBA (논리 블록 주소)라고 부른다. USB와 하드디스크는…
이미지 파일은 칸 전체를 찍은 사진이다
디스크 이미지 는 디스크 하나의 칸을 0번부터 끝까지 순서대로 이어 붙인 파일이다. 장부도 부팅 코드도 파일 내용도 칸에 있던 그대로 들어 있다. 디스크 전체를 한 장으로 찍은 사진이라고 생각하면 된다.
CD는 빛을 튕겨서 읽는다
공장에서 찍어 낸 음악 CD나 게임 CD를 보면, 알루미늄 반사막 위에 아주 작은 홈이 나선형으로 수십억 개 새겨져 있다. 움푹 들어간 곳을 피트(pit) , 평평한 곳을 랜드(land) 라고 한다. 이 나선을 펴면 5km가 넘는다.
CD-R은 염료를 태워서 홈을 흉내 낸다
공장 CD는 금형으로 홈을 찍어 낸다. 집에서는 그럴 수 없으니 CD-R 은 다른 방법을 쓴다. 반사막 위에 유기 염료층 을 한 겹 발라 두고, 굽는 드라이브가 레이저 출력을 확 올려서 원하는 자리의 염료를 열로 변질시킨다. 변질된 자리는 빛을 덜…
한 번 시작하면 끝까지 가야 한다
CD는 돌아가는 원판이다. 레이저가 나선을 따라 쉬지 않고 태워 나가야 한다. 그런데 컴퓨터가 데이터를 제때 못 보내 주면 어떻게 될까? 옛날에는 이걸 버퍼 언더런 이라고 불렀다. 굽는 도중에 줄이 끊기면 그 CD는 버려야 했다. 그래서 "굽는 동안…
ISO 9660 — CD의 장부
2강 에서 칸 위에 장부를 적는 게 파일시스템이라고 했다. CD용 파일시스템 규격이 ISO 9660 이다. 국제표준 번호가 9660번이라서 이런 이름이 붙었고, .iso 확장자도 여기서 왔다.
플래시 메모리는 전자를 가둬서 기억한다
USB 메모리 안에는 레이저도 원판도 없다. NAND 플래시 라는 칩과, 그 칩을 관리하는 작은 컨트롤러 가 들어 있다. 플래시는 아주 작은 방(셀)에 전자를 가두거나 빼서 0과 1을 기억한다. 전원을 빼도 전자가 갇혀 있어서 내용이 남는다.
USB에 굽는다는 건 0번 칸부터 덮어쓰는 것이다
8강 에서 봤듯 USB에는 레이저도 원판도 없다. 태우는 게 아니라 전기로 칸을 덮어쓴다. 그래서 USB에서 "굽는다"는 말은 비유다. 정확히는 이미지를 raw로 쓴다 , 즉 이미지의 첫 바이트를 USB의 0번 칸 첫 바이트에, 그다음 바이트를 그다…
켜지는 순간의 컴퓨터는 파일을 모른다
이게 이 교과서의 핵심이다. 전원을 누른 직후에는 macOS도 윈도우도 아직 없다. 메인보드 칩에 들어 있는 작은 프로그램, 펌웨어 만 깨어난다. 펌웨어가 할 일은 하나다. 저장장치 중 하나에서 운영체제를 불러올 첫 프로그램(부트로더)을 찾아 실행하…
BIOS는 0번 칸 하나만 본다 — MBR
BIOS의 규칙은 아주 단순하다. 저장장치의 0번 칸 512바이트를 읽어서, 마지막 두 바이트가 55 AA 이면 그 칸을 프로그램으로 보고 실행한다. 그게 전부다. 이 0번 칸을 MBR (마스터 부트 레코드)이라고 부른다.
UEFI는 FAT 안의 파일을 찾는다 — GPT와 ESP
UEFI는 BIOS보다 똑똑하다. 0번 칸 코드를 무작정 실행하는 대신 FAT 파일시스템을 직접 읽을 줄 안다. 그리고 디스크에서 FAT으로 된 부팅 전용 파티션을 찾아, 정해진 경로의 파일을 실행한다.
조건에 맞는 글이 없다. 브루니가 숨었나 보다.