Главная » Просмотр файлов » Linux Device Drivers 2nd Edition

Linux Device Drivers 2nd Edition (779877), страница 2

Файл №779877 Linux Device Drivers 2nd Edition (Linux Device Drivers 2nd Edition) 2 страницаLinux Device Drivers 2nd Edition (779877) страница 22018-01-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 2)

A little Unix expertise is needed as well, as we often refer to Unix commands and pipelines.At the hardware level, no previous expertise is required to understand the materialin this book, as long as the general concepts are clear in advance. The text isn’tbased on specific PC hardware, and we provide all the needed information whenwe do refer to specific hardware.Several free software tools are needed to build the kernel, and you often needspecific versions of these tools. Those that are too old can lack needed features,while those that are too new can occasionally generate broken kernels.

Usually,the tools provided with any current distribution will work just fine. Tool versionrequirements vary from one kernel to the next; consult Documentation/Changes inthe source tree of the kernel you are using for exact requirements.Sources of Further InformationMost of the information we provide in this book is extracted directly from the kernel sources and related documentation. In particular, pay attention to the Documentation directory that is found in the kernel source tree.

There is a wealth ofuseful information there, including documentation of an increasing part of the kernel API (in the DocBook subdirectory).There are a few interesting books out there that extensively cover related topics;they are listed in the bibliography.There is much useful information available on the Internet; the following is a sampling.

Internet sites, of course, tend to be highly volatile while printed books arehard to update. Thus, this list should be regarded as being somewhat out of date.http://www.ker nel.orgftp://ftp.ker nel.orgThis site is the home of Linux kernel development. You’ll find the latest kernelrelease and related information. Note that the FTP site is mirrored throughoutthe world, so you’ll most likely find a mirror near you.http://www.linuxdoc.orgThe Linux Documentation Project carries a lot of interesting documents called“HOWTOs”; some of them are pretty technical and cover kernel-related topics.xv22 June 2001 16:32http://openlib.org.uaPrefacehttp://www.linux-mag.com/depts/gear.htmlThe “Gearheads only” section from Linux Magazine often runs kernel-orientedarticles from well-known developers.http://www.linux.it/ker neldocsThis page contains many kernel-oriented magazine articles written by Alessandro.http://lwn.netAt the risk of seeming self-serving, we’ll point out this news site (edited byone of your authors) which, among other things, offers regular kernel development coverage.http://kt.zork.netKernel Traffic is a popular site that provides weekly summaries of discussionson the Linux kernel development mailing list.http://www.atnf.csir o.au/˜rgooch/linux/docs/ker nel-newsflash.htmlThe Kernel Newsflash site is a clearinghouse for late-breaking kernel news.

Inparticular, it concentrates on problems and incompatibilities in current kernelreleases; thus, it can be a good resource for people trying to figure out whythe latest development kernel broke their drivers.http://www.ker nelnotes.orgKernel Notes is a classic site with information on kernel releases, unofficialpatches, and more.http://www.ker nelnewbies.orgThis site is oriented toward new kernel developers. There is beginning information, an FAQ, and an associated IRC channel for those looking for immediate assistance.http://lksr.orgThe Linux Kernel Source Reference is a web interface to a CVS archive containing an incredible array of historical kernel releases.

It can be especiallyuseful for finding out just when a particular change occurred.http://www.linux-mm.orgThis page is oriented toward Linux memory management development. It contains a fair amount of useful information and an exhaustive list of kernel-oriented web links.http://www.conecta.it/linuxThis Italian site is one of the places where a Linux enthusiast keeps updatedinformation about all the ongoing projects involving Linux. Maybe you alreadyknow an interesting site with HTTP links about Linux development; if not, thisone is a good starting point.xvi22 June 2001 16:32http://openlib.org.uaPrefaceOnline Version and LicenseThe authors have chosen to make this book freely available under the GNU FreeDocumentation License, version 1.1.Full licensehttp://www.or eilly.com/catalog/linuxdrive2/chapter/licenseinfo.html;HTMLhttp://www.or eilly.com/catalog/linuxdrive2/chapter/book;DocBookhttp://www.or eilly.com/catalog/linuxdrive2/chapter/bookindex.xml;PDFhttp://www.or eilly.com/catalog/linuxdrive2/chapter/bookindexpdf.html.Conventions Used in This BookThe following is a list of the typographical conventions used in this book:ItalicConstant WidthConstant ItalicConstant BoldUsed for file and directory names, program and commandnames, command-line options, URLs, and new termsUsed in examples to show the contents of files or the output from commands, and in the text to indicate wordsthat appear in C code or other literal stringsUsed to indicate variable options, keywords, or text thatthe user is to replace with an actual valueUsed in examples to show commands or other text thatshould be typed literally by the userPay special attention to notes set apart from the text with the following icons:This is a tip.

It contains useful supplementary information about thetopic at hand.This is a warning. It helps you solve and avoid annoying problems.xvii22 June 2001 16:32http://openlib.org.uaPrefaceWe’d Like to Hear from YouWe have tested and verified the information in this book to the best of our ability,but you may find that features have changed (or even that we have made mistakes!).

Please let us know about any errors you find, as well as your suggestionsfor future editions, by writing to:O’Reilly & Associates, Inc.101 Morris StreetSebastopol, CA 95472(800) 998-9938 (in the United States or Canada)(707) 829-0515 (international/local)(707) 829-0104 (fax)We have a web page for the book, where we list errata, examples, or any additional information. You can access this page at:http://www.or eilly.com/catalog/linuxdrive2To comment or ask technical questions about this book, send email to:bookquestions@or eilly.comFor more information about our books, conferences, software, Resource Centers,and the O’Reilly Network, see our web site at:http://www.or eilly.comAcknowledgmentsThis book, of course, was not written in a vacuum; we would like to thank themany people who have helped to make it possible.I (Alessandro) would like to thank the people that made this work possible. Firstof all, the incredible patience of Federica, who went as far as letting me review thefirst edition during our honeymoon, with a laptop in the tent.

Giorgio and Giuliahave only been involved in the second edition of the book, and helped me stay intouch with reality by eating pages, pulling wires, and crying for due attention. Imust also thank all four grandparents, who came to the rescue when the deadlineswere tight and took over my fatherly duties for whole days, letting me concentrateon code and coffee. I still owe a big thanks to Michael Johnson, who made meenter the world of writing.

Even though this was several years ago, he’s still theone that made the wheel spin; earlier, I had left the university to avoid writing articles instead of software. Being an independent consultant, I have no employerthat kindly allowed me to work on the book; on the other hand, I owe dueacknowledgment to Francesco Magenta and Rodolfo Giometti, who are helpingme as “dependent consultants.” Finally, I want to acknowledge the free-softwareauthors who actually taught me how to program without even knowing me; thisxviii22 June 2001 16:32http://openlib.org.uaPrefaceincludes both kernel and user-space authors I enjoyed reading, but they are toomany to list.I (Jon) am greatly indebted to many people; first and foremost I wish to thank mywife, Laura, who put up with the great time demands of writing a book whilesimultaneously trying to make a “dotcom” business work.

My children, Micheleand Giulia, have been a constant source of joy and inspiration. Numerous peopleon the linux-kernel list showed great patience in answering my questions and setting me straight on things. My colleagues at LWN.net have been most patient withmy distraction, and our readers’ support of the LWN kernel page has been outstanding. This edition probably would not have happened without the presence ofBoulder’s local community radio station (appropriately named KGNU), whichplays amazing music, and the Lake Eldora ski lodge, which allowed me to campout all day with a laptop during my kids’ ski lessons and served good coffee.

Iowe gratitude to Evi Nemeth for first letting me play around in the early BSDsource on her VAX, to William Waite for really teaching me to program, and to RitCarbone of the National Center for Atmospheric Research (NCAR), who got mestarted on a long career where I learned almost everything else.We both wish to thank our editor, Andy Oram; this book is a vastly better productas a result of his efforts.

And obviously we owe a lot to the smart people whopushed the free-software idea and still keep it running (that’s mainly Richard Stallman, but he’s definitely not alone).We have also been helped at the hardware level; we couldn’t study so many platforms without external help.

We thank Intel for loaning an early IA-64 system, andRebel.com for donating a Netwinder (their ARM-based tiny computer). Prosa Labs,the former Linuxcare-Italia, loaned a pretty fat PowerPC system; NEC Electronicsdonated their interesting development system for the VR4181 processor — that’s apalmtop where we could put a GNU/Linux system on flash memory. Sun-Italialoaned both a SPARC and a SPARC64 system. All of those companies and thosesystems helped keep Alessandro busy in debugging portability issues and forcedhim to get one more room to fit his zoo of disparate silicon beasts.The first edition was technically reviewed by Alan Cox, Greg Hankins, Hans Lermen, Heiko Eissfeldt, and Miguel de Icaza (in alphabetic order by first name). Thetechnical reviewers for the second edition were Allan B.

Cruse, Christian Morgner,Jake Edge, Jeff Garzik, Jens Axboe, Jerry Cooperstein, Jerome Peter Lynch, MichaelKerrisk, Paul Kinzelman, and Raph Levien. Together, these people have put a vastamount of effort into finding problems and pointing out possible improvements toour writing.Last but certainly not least, we thank the Linux developers for their relentlesswork. This includes both the kernel programmers and the user-space people, whooften get forgotten. In this book we chose never to call them by name in order toavoid being unfair to someone we might forget. We sometimes made an exceptionto this rule and called Linus by name; we hope he doesn’t mind, though.xix22 June 2001 16:32http://openlib.org.uaCHAPTER ONEAN INTRODUCTION TODEVICE DRIVERSAs the popularity of the Linux system continues to grow, the interest in writingLinux device drivers steadily increases.

Most of Linux is independent of the hardware it runs on, and most users can be (happily) unaware of hardware issues. But,for each piece of hardware supported by Linux, somebody somewhere has writtena driver to make it work with the system. Without device drivers, there is no functioning system.Device drivers take on a special role in the Linux kernel. They are distinct “blackboxes” that make a particular piece of hardware respond to a well-defined internalprogramming interface; they hide completely the details of how the device works.User activities are performed by means of a set of standardized calls that are independent of the specific driver; mapping those calls to device-specific operationsthat act on real hardware is then the role of the device driver. This programminginterface is such that drivers can be built separately from the rest of the kernel,and “plugged in” at runtime when needed.

Характеристики

Тип файла
PDF-файл
Размер
7,36 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6353
Авторов
на СтудИзбе
311
Средний доход
с одного платного файла
Обучение Подробнее