본문으둜 κ±΄λ„ˆλ›°κΈ°

πŸ“– μœ λ‹‰μŠ€μ˜ 탄생

Chanho Lee
λ‹€μ–‘ν•œ λΆ„μ•Όλ₯Ό κ³΅λΆ€ν•˜κ³  μžˆλŠ” 학생

ℹ️ Book Info​

팁

μ±… 이미지λ₯Ό ν΄λ¦­ν•˜λ©΄ ꡐ보문고 μ‚¬μ΄νŠΈλ‘œ μ΄λ™ν•©λ‹ˆλ‹€!

μ±…

  • 제λͺ©: μœ λ‹‰μŠ€μ˜ 탄생
  • μ €μž: Brian W. Kernighan
  • μ—­μž: ν•˜μ„±μ°½
  • μΆœνŒμ‚¬: ν•œλΉ›λ―Έλ””μ–΄
  • μΆœκ°„: 2020-08-03

🎬 Intro​

이 책도 집 근처 λ„μ„œκ΄€μ—μ„œ 빌렀 읽은 책이닀. 이 책을 처음 μ ‘ν•œ 곳은 ν•œλΉ›λ―Έλ””μ–΄ 페이슀뢁 νŽ˜μ΄μ§€μ˜€λ‹€. κ·Έλ•Œ 마침 λŒ€ν•™μ—μ„œ 운영체제 κ°•μ˜λ₯Ό λ“£κ³  μžˆμ—ˆκΈ° λ•Œλ¬Έμ— 읽어보고 μ‹Άλ‹€λŠ” 생각을 ν–ˆμœΌλ‚˜, ν•™κΈ° μ€‘μ—λŠ” λ„ˆλ¬΄ λ°”λΉ  읽을 μˆ˜κ°€ μ—†μ—ˆλ‹€. 이 책에 λŒ€ν•΄ 아무 생각 없이 지내닀가 λ„μ„œκ΄€μ—μ„œ λ°œκ²¬ν•˜κ²Œ 됐고, "곡곡 λ„μ„œκ΄€μ— μ™œ μžˆμ§€?"λΌλŠ” 의문이 μžˆμ—ˆμœΌλ‚˜ μ–΄μ¨Œλ“  빌렀 읽게 됐닀.

πŸ“– Book Review​

μ–΄λ–€ 책인가?​

μ €μžμΈ λΈŒλΌμ΄μ–Έ μ»€λ‹ˆν•Έμ˜ 회고둝 같은 책이닀. λΈŒλΌμ΄μ–Έ μ»€λ‹ˆν•Έμ€ Cμ–Έμ–΄λ₯Ό μ›μ„œλ‘œ 곡뢀해본 μ‚¬λžŒμ΄λ©΄ μ•„λŠ” The C Programming Language의 μ €μž 쀑 ν•œ λͺ…이닀. 이 책은 Cμ–Έμ–΄ μ°½μ‹œμžμΈ λ°λ‹ˆμŠ€ λ¦¬μΉ˜μ™€ ν•¨κ»˜ 썼닀.

μ €μžκ°€ 벨 μ—°κ΅¬μ†Œμ—μ„œ κ²½ν—˜ν–ˆλ˜ 일듀, λ™λ£Œ κ°œλ°œμžλ“€κ³Ό κ΄€λ ¨λœ μ—¬λ‹΄ λ“± μž¬λ°ŒλŠ” 일화듀을 μ•Œλ €μ€€λ‹€. Cμ–Έμ–΄λ₯Ό λ§Œλ“  λ°λ‹ˆμŠ€ 리치, λ°λ‹ˆμŠ€ λ¦¬μΉ˜μ™€ ν•¨κ»˜ μœ λ‹‰μŠ€λ₯Ό λ§Œλ“€κ³  ν˜„μž¬λŠ” κ΅¬κΈ€μ—μ„œ Goμ–Έμ–΄λ₯Ό 곡동 κ°œλ°œν•œ μΌ„ ν†°ν”„μŠ¨ λ“± μ—„μ²­λ‚œ κ°œλ°œμžλ“€μ˜ 이름이 μ–ΈκΈ‰λ˜λ©°, κ·Έ λ‹Ήμ‹œ 벨 μ—°κ΅¬μ†Œκ°€ μ–Όλ§ˆλ‚˜ μ˜λ¦¬ν•œ μ‚¬λžŒλ“€μ΄ λ§Žμ•˜μœΌλ©° μœ„λŒ€ν–ˆλŠ”μ§€ μ•Œλ €μ€€λ‹€. λ˜ν•œ, μœ λ‹‰μŠ€κ°€ μ–΄λ–»κ²Œ λ§Œλ“€μ–΄μ‘Œκ³  μ–΄λ–»κ²Œ λ°œμ „ν–ˆλŠ”μ§€ λ“± μœ λ‹‰μŠ€μ˜ 역사λ₯Ό 보여쀀닀.

정말 '경이둭닀'λΌλŠ” 말이 μ–΄μšΈλ¦¬λŠ” 책이닀. 쀑간쀑간 μœ λ‹‰μŠ€ 개발 과정을 μ„€λͺ…ν•  λ•Œ μ†Œμ„€ 같은 λŠλ‚Œλ„ μ€€λ‹€. λ˜ν•œ, ν•¨κ»˜ 있던 λ™λ£Œλ“€μ˜ λ©”μΌμ΄λΌλ˜κ°€ 그듀이 직접 ν•œ 인터뷰가 λ‚˜μ˜€λŠ”λ° 그런 뢀뢄을 μ½λŠ” 것도 μž¬λ°ŒλŠ” ꡬ성이라고 μƒκ°ν–ˆλ‹€. μ΄λŸ¬ν•œ 역사λ₯Ό μ–΄λ–»κ²Œ λ‹€ κΈ°μ–΅ν•˜λŠ”μ§€ λ†€λžμ—ˆλ‹€. 기둝을 ν–ˆμ—ˆλ‹€κ³  해도 '이 λ§Žμ€ λ‚΄μš©λ“€μ„ μ–΄λ–»κ²Œ λ‹€ 기둝을 ν–ˆμ—ˆμ§€?'라고 생각이 λ“€ μ •λ„μ˜€λ‹€.

글쓰기에 진심​

벨 μ—°κ΅¬μ†Œμ— κ³„μ…¨λ˜ κ°œλ°œμžλ“€μ€ 글쓰기에 λŒ€ν•œ μ§„μ§€ν•œ νƒœλ„λ₯Ό κ°€μ‘ŒμœΌλ©°, μ„œλ‘œ λΉ„νŒν•΄μ£Όκ³ , κ²½μ˜μ§„μ˜ μ§€μ§€κΉŒμ§€ λ°›μ•˜μ—ˆλ‹€κ³  ν•œλ‹€. 그렇기에 세상에 λͺ¨λ“  κ°œλ°œμžμ—κ²Œ 영ν–₯을 λΌμΉ˜λŠ” 책듀도 μΆœκ°„ν•  수 μžˆμ—ˆμ§€ μ•Šμ•˜μ„κΉŒ. λ‚˜λ„ 이런 λŒ€λ‹¨ν•œ κ°œλ°œμžλ“€μ΄ κ°œλ°œν•œ μ–Έμ–΄λ₯Ό κ³΅λΆ€ν•˜κ³ , μΆœκ°„ν•œ 책듀을 읽으며 κ³΅λΆ€ν•œ 학생이기에 이런 λΆ€λΆ„μ—μ„œ 맀우 감λͺ… κΉŠμ—ˆλ‹€.

λ‚œ 개발자λ₯Ό λͺ©ν‘œλ‘œ κ³΅λΆ€ν•˜λŠ” λŒ€ν•™μƒμ΄μ§€λ§Œ κΈ€μ“°κΈ°λ₯Ό μ’‹μ•„ν•˜λ‹ˆ μ΄λ ‡κ²Œ 책을 λ¦¬λ·°ν•˜κ±°λ‚˜ κ³΅λΆ€ν•œ λ‚΄μš©λ“€μ„ μ •λ¦¬ν•˜λŠ” λΈ”λ‘œκ·Έλ₯Ό μš΄μ˜ν•˜κ³  μžˆλ‹€. λˆ„κ΅°κ°€μ—κ²Œ 도움이 됐으면 ν•˜λŠ” 마음으둜 적고 μžˆλ‹€. μ•žμœΌλ‘œλ„ λ‚˜λŠ” κΈ€μ“°κΈ°λ₯Ό 계속 μ—°μŠ΅ν•˜κ³ , λΈ”λ‘œκ·Έλ₯Ό ν†΅ν•˜μ—¬ 세상에 지식을 λ‚¨κΈ°λŠ” κ°œλ°œμžκ°€ 되고 μ‹Άλ‹€.

μž¬λ°ŒλŠ” 일화​

이 μ±…μ—λŠ” μž¬λ°ŒλŠ” 일화듀이 많이 λ‚˜μ˜¨λ‹€. μœ λ‹‰μŠ€λΌλŠ” 이름도 사싀 λ©€ν‹±μŠ€(Multics, Multiplexed Information and Computing Service)μ—μ„œ λ”°μ˜¨ 말μž₯λ‚œμ΄μ—ˆμœΌλ©°, μ›λž˜ 이름은 UNICSμ˜€λŠ”λ° AT&T λ³€ν˜Έμ‚¬λ“€μ΄ eunuchs(λ‚΄μ‹œ)와 발음이 μœ μ‚¬ν•˜λ‹€κ³  ν•˜μ—¬ UNICSλ₯Ό μ’‹μ•„ν•˜μ§€ μ•Šμ•˜λ‹€κ³  ν•œλ‹€.

Cμ–Έμ–΄λ₯Ό 곡뢀할 λ•Œ 자주 μ“°λŠ” malloc 라이브러리λ₯Ό λ§Œλ“  λ”κΈ€λŸ¬μŠ€ λ§€ν΄λ‘œμ΄μ— λŒ€ν•œ 일화에 κ΄€ν•œ 이야기도 λ‚˜μ˜¨λ‹€. Cμ–Έμ–΄λ₯Ό 곡뢀해본 μ‚¬λžŒμ΄λΌλ©΄ λ”μš± 재밌게 읽을 수 μžˆλŠ” ν¬μΈνŠΈλ‹€. 이밖에도 UNIXμ—μ„œ νŒŒμΌμ„ λ§Œλ“œλŠ” system call 이름이 creat인 μ΄μœ λ„ 사싀 μΌ„ ν†°ν”„μŠ¨μ˜ μ˜€νƒ€μ˜€λ‹€λŠ” μž¬λ°ŒλŠ” 일화도 μ•Œ 수 μžˆλ‹€.

이밖에도 GitHubμ—μ„œ MIT λΌμ΄μ„ μŠ€μ™€ 같이 자주 μ“°μ΄λŠ” BSD λΌμ΄μ„ μŠ€λ„ 사싀 μœ λ‹‰μŠ€ λ•Œλ¬Έμ— λ‚˜μ˜€κ²Œ 된 λΌμ΄μ„ μŠ€λΌλŠ” 것도 μ•Œκ²Œ 됐으며 κ½€ μœ μš©ν•œ 정보듀이 λ§Žμ•˜λ‹€. μ§€κΈˆ μƒκ°λ‚˜λŠ” 것듀은 이게 전뢀이닀. 이 밖에도 μœ μš©ν•˜κΈ°λ„ ν•˜κ³ , μž¬λ°ŒλŠ” 일화듀이 많이 λ‚˜μ˜¨λ‹€. 개발자λ₯Ό λͺ©ν‘œλ‘œ ν•œλ‹€λ©΄ 심심할 λ•Œ ν•œ 번 읽어봐도 μž¬λ°Œμ„ 책이닀.

πŸ”– λŒ€μƒ λ…μžβ€‹

κ°œλ°œμ„ 이제 막 κ³΅λΆ€ν•˜λŠ” μ‚¬λžŒλ“€μ—κ²ŒλŠ” λ³„λ‘œ μΆ”μ²œν•˜μ§€ μ•ŠλŠ”λ‹€. 적어도 운영체제, μ‹œμŠ€ν…œ ν”„λ‘œκ·Έλž˜λ°μ„ κ³΅λΆ€ν–ˆλ˜ κ²½ν—˜μ΄ μžˆμœΌμ‹  μ‚¬λžŒμ—κ²Œ μΆ”μ²œν•˜κ³  μ‹Άλ‹€. λ‚œ 운영체제 κ³Όλͺ©μ„ λ„ˆλ¬΄ λŒ€μΆ© λ“€μ—ˆλŠ”μ§€ 이 책이 이 책은 κ½€ μ–΄λ €μ› λ‹€. 운영체제λ₯Ό 곡뢀해보지 μ•Šμ€ 뢄듀이 λ³΄κΈ°μ—λŠ” 더 μ–΄λ €μšΈ μˆ˜λ„ μžˆλ‹€.

우리 ν•™κ΅λŠ” μ‹œμŠ€ν…œ ν”„λ‘œκ·Έλž˜λ°μ΄λΌλŠ” κ³Όλͺ©μ„ λ°°μ›Œμ„œ 책을 읽을 λ•Œ 쀑간쀑간에 λ‚˜μ˜€λŠ” μ½”λ“œλ“€μ΄λΌλ˜κ°€ μš©μ–΄λ“€μ„ μ–΄λŠ μ •λ„λŠ” μ‰½κ²Œ μ΄ν•΄ν–ˆλŠ”λ° λ‹€λ₯Έ λ…μžλ“€μ€ 어떀지 잘 λͺ¨λ₯΄κ² λ‹€. λͺ¨λ₯΄λŠ” μ½”λ“œλŠ” ꡬ글링을 μ—΄μ‹¬νžˆ ν•΄λ³΄μž. 이제 천천히 μ¦κΈ°λ©΄μ„œ 책을 μ½μ–΄λ³΄μž!