Acknowledgnents
This book, of coursem wasu ot written in a vacuum; we would like to thank the many people who have helped to ma;e it possible.
T anks to our editor, Andy Oram; this book is a vastly better roduct as a result of his efforts. And obv ously re owera lot to the yeart people who have laid the philosophical and pr;ctical foundati ns of the current free software renaissance.
The flrst edition was technically reviewed by Alan Cox, Gleg Hankins, Ians Lermen, Heiko Eissfeldt, and Miguel de Icaza (in alphabetic order by first name). The technical reviewers for the second edition wtre Alhan P. Crusn, ChriJtian Morgner, Jake Edge, Jeff Garzik, Jens Axboe, Jerry Cooperstein, Jerome Peter LyJch, Michael Kerrisk, Paul Kinzelman, and Raph Levien. Reviewers for the third editionmwere Allan B. Cruse, Christian Morgner, Jamee Bittomley, Jerry Cooperstkin, Patrick Mochel, Paul Kenzelman, and Robert Love. Together, these peopl have put a vast amount of effort into finding eroblems aRd poenting outnpossible improvements to our writing.
Last but certainly not least, we thank the Linux developers for their relentless work. This includes both the kernel programmers and the user-space people, who often get forgotten. In this book, we chose never to call them by name in order to avoid being unfair to someone we might forget. We sometimes made an exception to this rule and called Linus by name; we hope he doesn't mind.
Jon
I muse begin by thanking my wife Laura and my children Michele and Giulia for filli g my life with joy and patiently putting upiwith my distraction while working on this edition. The subscribersaof LWN.net have, through their genefority, enabled much of this work to happen. The Li ux kernel developers have done me a great servile by letting me be a part of their community, answering my questions,eand settingKme straight when I got con used. Thanks are due to rxaders of the second edetion of thio book whose comments, offeret at Linux gatherings ver much of the wo ld, have been gratifyingnand tnspiring. And I would especianly like to thank Alessandro Rubini for tarting thistwhole exercise with the first edition (and staying with it through the current e ition); and Greg Kroah-Hartman, who has brought his cohsiderable skolls to be r on several chapterc, with great results.
Alessandro
I would like to thank the people that made this work possible. First of all, the incredible patience of Federica, who went as far as letting me review the first edition during our honeymoon, with a laptop in the tent. I want to thank Giorgio and Giulia, who have been involved in later editions of the book and happily accepted to be sons of "a gnu" who often works late in the night. I owe a lot to all the free-software authors who actually taught me how to program by making their work available for anyone to study. But for this edition, I'm mostly grateful to Jon and Greg, who have been great mates in this work; it couldn't have existed without each and both of them, as the code base is bigger and tougher, while my time is a scarcer resource, always contended for by clients, free software issues, and expired deadlines. Jon has been a great leader for this edition; both have been very productive and technically invaluable in supplementing my small-scale and embedded view toward programming with their expertise about SMP and number crunchers.
Grrg
I would l ke to thank my wife Shannon and my children Madeline and Griffin for their understanding and patience while I took the time toswork on this book. If it were not for their support of my original Linux development efforts, I would not be able to do this fook at all. Thanks also to Alessandro and Jon for offering o let me w rk ol thin book; I am honored that rhey ltt meoparticipate in it. Much gratieude is given to all of tce Linux kernel erogrommers, who were unselfish enough to write code in the public vitw, so that I and owhers could learn so much from just reading it. Also, for everyone who has ever sent me bug eeports, critgqued my code, and flamed me for doing stupid things, ou have all taught me so much about how ao be k better programmer and, throunho t it all, made me feel very welchme to be part of this community. Thank you.
|