작성자 : 권수호
제목 : Linux Kernel Internal & Embedded Linux
저자의 말
난 아마추어다. 난 아마추어이기에 기꺼이 이런 글을 쓸 수 있다. Linux는 그런 아마추어가 만든 것이며,
이젠 서서히 상업 시장으로의 발길을 재촉하고 있다. 어려운 용어들이 난무하고 디지털이 어쩌구 한다.
Linux는 어쩌면 이러한 어려운 용어들 속에서 쉽게 개발자와 친근해 질 수 있는 친구로서, 네트워크화
된 사회에서 나올 수 밖에 없는 필연적인 결과 물( 혹은 중간 결과 물 ) 일지도 모른다.
예전에 군대를 갔다가 복학했을 때가 생각난다. 숙제를 FTP를 이용해서 제출하라는 말에, 멍한 눈으로
교수를 응시했다가, 옆에 앉은 후배를 다그쳐서 그게 뭔지를 알게 되었을 때이다. 결국 난 숙제를 그냥
디스켓에 담아서 냈다. 인터넷은 그렇게 내게 별로 관대하지 못했다. 복학생이 뭘 알기에... 조금 더
후에 친구 녀석이 Linux라는 것을 디스켓으로 70여장에 가깝게 주었을 때, 이게 어떤 것인가를
고민하다가 X-Window까지 올리는데 무려 3개월이 걸렸다. 친구 녀석은 내게서 3개월간의 밤을 빼앗아
갔던 것이다. 요즘은 1시간도 안될 꺼리를... 그 좋은 CD-ROM을 두고서 말이다.
결국 난 지금에서야 인터넷의 도움으로 쇼핑도 하고, 책과 자료들도 찾고 ADSL로 집에서 상영되지
않은 영화도 열심히 다운 받아서 본다. 바로 이 편리함 속에서 그 방대한 양의 지식들이 불과 몇 초
사이에 지구를 몇 바퀴나 돌고 있는 것이다. 아직 인터넷의 “인”자가 참을 “인”자로 생각되는 곳에서도
많은 사람들이 Linux의 코드를 열심히 분석하고 있고, 더 나은 것을 만들려고 노력하고 있다. 난 그
중의 한 사람이며 그들 개발자들보다 더 많이 알지도 못한다. 다만 그들의 지적 노력의 산물을 내
나름대로 분석하고 내 나름대로 정의해서 보고 있을 뿐이다.
이 글을 읽는 사람이라면, 적어도 책의 첫 몇 페이지는 넘긴 사람일 것이다. 그런 사람들을 위해서 책의
내용이 어떤 것을 말하는 지를 알리고자 다음에 몇자 적어본다. 참고하기 바라지만 절대적인 기준은 못
된다.
이런 사람이라면 이 글을 읽어볼 만 하다고 생각한다.
제목 : Linux Kernel Internal & Embedded Linux
저자의 말
난 아마추어다. 난 아마추어이기에 기꺼이 이런 글을 쓸 수 있다. Linux는 그런 아마추어가 만든 것이며,
이젠 서서히 상업 시장으로의 발길을 재촉하고 있다. 어려운 용어들이 난무하고 디지털이 어쩌구 한다.
Linux는 어쩌면 이러한 어려운 용어들 속에서 쉽게 개발자와 친근해 질 수 있는 친구로서, 네트워크화
된 사회에서 나올 수 밖에 없는 필연적인 결과 물( 혹은 중간 결과 물 ) 일지도 모른다.
예전에 군대를 갔다가 복학했을 때가 생각난다. 숙제를 FTP를 이용해서 제출하라는 말에, 멍한 눈으로
교수를 응시했다가, 옆에 앉은 후배를 다그쳐서 그게 뭔지를 알게 되었을 때이다. 결국 난 숙제를 그냥
디스켓에 담아서 냈다. 인터넷은 그렇게 내게 별로 관대하지 못했다. 복학생이 뭘 알기에... 조금 더
후에 친구 녀석이 Linux라는 것을 디스켓으로 70여장에 가깝게 주었을 때, 이게 어떤 것인가를
고민하다가 X-Window까지 올리는데 무려 3개월이 걸렸다. 친구 녀석은 내게서 3개월간의 밤을 빼앗아
갔던 것이다. 요즘은 1시간도 안될 꺼리를... 그 좋은 CD-ROM을 두고서 말이다.
결국 난 지금에서야 인터넷의 도움으로 쇼핑도 하고, 책과 자료들도 찾고 ADSL로 집에서 상영되지
않은 영화도 열심히 다운 받아서 본다. 바로 이 편리함 속에서 그 방대한 양의 지식들이 불과 몇 초
사이에 지구를 몇 바퀴나 돌고 있는 것이다. 아직 인터넷의 “인”자가 참을 “인”자로 생각되는 곳에서도
많은 사람들이 Linux의 코드를 열심히 분석하고 있고, 더 나은 것을 만들려고 노력하고 있다. 난 그
중의 한 사람이며 그들 개발자들보다 더 많이 알지도 못한다. 다만 그들의 지적 노력의 산물을 내
나름대로 분석하고 내 나름대로 정의해서 보고 있을 뿐이다.
이 글을 읽는 사람이라면, 적어도 책의 첫 몇 페이지는 넘긴 사람일 것이다. 그런 사람들을 위해서 책의
내용이 어떤 것을 말하는 지를 알리고자 다음에 몇자 적어본다. 참고하기 바라지만 절대적인 기준은 못
된다.
이런 사람이라면 이 글을 읽어볼 만 하다고 생각한다.
- 밤이 깊어도 잠이 오지 않아 이리저리 뒤척이는 사람.
- 인터넷에 널린 문서들과 서점의 외국어 책 가판 대에 진열된 많은 Linux관련 도서를 다 읽기는
싫고, 영어실력도 못 따라가는 사람. 그렇다고, 영어 공부도 할 수 없는 사람. 하지만, 기본적인
영어는 아는 사람이며, 적어도 영한 사전을 책상 위에 하나쯤은 두고 사는 사람. - 적어도 Linux를 가지고 밥을 먹고자 하는 사람.(아마 나 자신일지도 모른다. 하지만 배가 고픈
것도 사실이다. ^^;) - 인터넷 서점에서 Linux를 키워드로 책을 찾았지만, next라는 표시와 함께 한도 끝도 없이 많은
책들로 어떤 책을 사야 할지를 고민하는 사람. 그리고, 그 많은 책들을 다 볼 시간도 없는
사람.
하지만., 정작 책장을 넘기면 이런 사람들이 읽어야 할 것이다.
- Linux는 설치하고 ls와 cd를 칠 줄은 알지만, 더 많은 것을 알기를 원하는 사람.
- 실제적인 개발에 조금이라도 도움을 원하는 사람.(정말 조금 밖에는 도움이 안될지 모르지만)
- 디바이스 드라이버 입문 책은 다 보았지만, 정작 구현하려고 관련된 소스 코드를 찾았지만
뭐가 뭔지 구분이 안 되는 사람.
하지만, 이런 사람에게는 다른 책을 권하고 싶다.
- Linux를 이용하지만, 커널이나 기타 구조에 대해서는 관심이 없는 사람.
- Linux 명령어를 배우려고 공부하는 사람.
- C 언어는 알지만 Hello world이외의 프로그램을 해본 경험이 없거나, Assembly어는 노가다를
좋아하는 사람만 한다고 생각하는 사람. - 운영체제를 자세히 알거나, 운영체제의 이론을 처음으로 배우려고 하는 사람.
- 기타등등의 앞에서 나열한 사람들에 속하지 않는 사람들.
어쨌든 어떤 사람들에게는 유용한 자료가 될 것이지만, 다른 사람들에게는 치명적인 자료가 될지도
모른다. 헛된 시간을 낭비하지 않기를 바란다. 이제 이 책은 내 책상 위의 컴퓨터 속에 한 폴더를
벗어나 세상으로 나가려고 한다. 내 목소리를 흉내내지만 내가 아니며, 나의 글 쓰는 스타일을 틀어쥐고
있지만 나의 밥 먹는 스타일은 아니다. 잘못된 지식을 전파하는 것은 나쁜 일이기에 섣불리 꺼내
놓기가 두려운 것도 사실이다. 그럼에도 불구하고 이 글을 출판하는 것은... 역시 나는 아마추어이기
때문이다. 용서 하기 바란다. 더 좋은 글을 쓸 수 있도록 노력하길 빌어주었으면 한다.
2002년 월드컵의 해에 드립니다.
권 수 호.