在哪下载量 0.46Bootloaders39和Bootloaders46

div style="position: top:20z-index:-1; width:100%; height:1200 background:url(/images/2014cjbj.jpg) no-repeat 50% 0; height:1694 margin:0">
推荐帖子:
&&行业资讯
比iPad mini 3还薄,在华硕MeMO Pad 8中蕴含怎样的秘密?你见过四四方方,用九颗螺丝固定的“方块电池”么?在MeMO Pad 8主板上,缺失的芯片是什么?全贴合技...
Cntronics电子元件技术网的用户可以直接登录!
我爱方案网帐号:
我爱方案网密码:
隔离电源是地电位偏移、浪涌或高噪声环境下无法避免的弊病,该简单但经过验证的设计,可代替采用14个分立元器件的传统方案
采用高品质的工业级驱动器,即使在电“噪声”较大的环境下,LED显示也能始终保持鲜艳明亮获得可靠的视觉反馈。
你是否想过利用适配器或PC板上的一个空闲引脚,为客户提供一个小小的额外功能:板载序列化?
关注官方微信& X
说到iphone3g刷机教程,小编也是经过查找资料以后才明白的,下面小编就来给大家说一说准备工作,首先是我们需要的东西。&&---
标签:iphone3g|刷机教程
iphone3g刷机教程
说到,小编也是经过查找资料以后才明白的,下面小编就来给大家说一说准备工作,首先是我们。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &图1、手机刷机教程
&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&&图2、
以上就是小编所了解到的关于了,希望能对大家有所帮助。
说到iphone3g刷机教程,小编也是经过查找资料以后才明白的,下面小编就来给大家说一说准备工作,首先是我们需要的东西。
同仁的电子信箱:&多个邮箱之间请用 | 隔开
您的电子信箱:
本文链接:
查看全部评论
有人回复时发邮件通知我
‘iphone3g刷机教程’相关内容
开发者论坛
未经版权所有人明确的书面许可,不得以任何方式或媒体翻印或转载本网站的部分或全部内容。精通Linux驱动程序开发(英文版)
基本信息?出版社:人民邮电出版社 ?页码:714 页 ?出版日期:2009年06月 ?ISBN:/3 ?条形码:3 ?版本:第1版 ? ...
精通Linux驱动程序开发(英文版)
精通Linux驱动程序开发(英文版)
基本信息?出版社:人民邮电出版社 ?页码:714 页 ?出版日期:2009年06月 ?ISBN:/3 ?条形码:3 ?版本:第1版 ?装帧:平装 ?开本:16 ?正文语种:英语 ?丛书名:图灵程序设计丛书
《精通Linux驱动程序开发(英文版)》是Linux设备驱动程序领域的权威著作。全书基于2.6内核,不仅透彻讲解了基本概念和技术,更深入探讨了其他书没有涵盖或辄止浅尝的许多重要主题和关键难点,如PCMCIA、I2C和USB等外部总线、视频、音频、无线连网和闪存等技术。在解释每一个技术时,均讲解了相关的内核源码文件,并给出了完整的开发实例。《精通Linux驱动程序开发(英文版)》适合中高级Linux 开发人员阅读。
Sreekrishnan Venkateswaran,世界顶级Linux开发技术专家。在IBM工作多年,有丰富的嵌入式Linux和驱动程序开发经验,曾经将Linux移植到了手表、音乐播放器、VoIP电话、心脏起搏器以及远程门诊监控系统等各种设备上。目前负责IBM印度公司的嵌入式解决方案组。他曾担任Linux Magazine的特邀编辑,内核技术专栏作。
目前最全面深入的Linux设备驱动程序著作,世界级Linux技术大师力作,大量技术内幕首次公开。“这是我读过的最全面的Linux设备驱动程序著作。”   ――Alan Cox,Linux内核维护者“这本书涵盖了各种Linux设备驱动程序,全面而翔实。”  ――Theodore Ts’o,Linux基金会CTO,北美第一位内核开发者
在回顾了驱动开发的各种基础知识和最新的Linux 2.6内核相关特性之后,《精通Linux驱动程序开发(英文版)》的作者不仅讲述了其他设备驱动程序中都会涉及的较容易的内容,更迎难而上,深入探讨了驱动开发包括嵌入式Linux开发中必须面对的难点,比如PCMCIA、USB、I2C、视频、音频、闪存、无线通信等,揭示了许多内幕技术的秘密。对每种驱动程序,书中在剖析关键技术之外,还带你查看相关的内核源代码,提供完整的实例。时至今日,Linux操作系统以其跨平台、开源、支持众多应用和网络协议等优点,已经成为应用最广泛的开发平台。在这部贴近实战、实例丰富的著作中,世界上经验最丰富的Linux驱动程序开发者之一系统全面地阐述了如何为各种设备开发可靠的驱动程序。
Chapter 1 Introduction 1 Evolution 2 The GNU Copyleft 3 Kernel.org 4 Mailing Lists and Forums 4 Linux Distributions 5 Looking at the Sources 6 Building the Kernel 10 Loadable Modules 12 Before Starting 14 Chapter 2 A Peek Inside the Kernel 17 Booting Up 18 Kernel Mode and User Mode 30 Process Context and Interrupt Context 30 Kernel Timers 31 HZ and Jiffies 31 Long Delays 33 Short Delays 36 Pentium Time Stamp Counter 36 Real Time Clock 37 Concurrency in the Kernel 39 Spinlocks and Mutexes 39 Atomic Operators 45 Reader-Writer Locks 46 Debugging 48 Process Filesystem 49 Allocating Memory 49 Looking at the Sources 52 Chapter 3 Kernel Facilities 55 Kernel Threads 56 Creating a Kernel Thread 56 Process States and Wait Queues 61 User Mode Helpers 63 Helper Interfaces 65 Linked Lists 65 Hash Lists 72 Work Queues 72 Notifier Chains 74 Completion Interface 78 Kthread Helpers 81 Error-Handling Aids 83 Looking at the Sources 85 Chapter 4 Laying the Groundwork 89 Introducing Devices and Drivers 90 Interrupt Handling 92 Interrupt Context 92 Assigning IRQs 94 Device Example: Roller Wheel 94 Softirqs and Tasklets 99 The Linux Device Model 103 Udev 103 Sysfs, Kobjects, and Device Classes 106 Hotplug and Coldplug 110 Microcode Download 111 Module Autoload 112 Memory Barriers 114 Power Management 114 Looking at the Sources 115 Chapter 5 Character Drivers 119 Char Driver Basics 120 Device Example: System CMOS 121 Driver Initialization 122 Open and Release 127 Exchanging Data 129 Seek 136 Control 137 Sensing Data Availability 139 Poll 139 Fasync 142 Talking to the Parallel Port 145 Device Example: Parallel Port LED Board 146 RTC Subsystem 156 Pseudo Char Drivers 157 Misc Drivers 160 Device Example: Watchdog Timer 160 Character Caveats 166 Looking at the Sources 167 Chapter 6 Serial Drivers 171 Layered Architecture 173 UART Drivers 176 Device Example: Cell Phone 178 RS-485 191 TTY Drivers 192 Line Disciplines 194 Device Example: Touch Controller 195 Looking at the Sources 205 Chapter 7 Input Drivers 207 Input Event Drivers 210 The Evdev Interface 210 Input Device Drivers 216 Serio 217 Keyboards 217 Mice 220 Touch Controllers 227 Accelerometers 228 Output Events 228 Debugging 230 Looking at the Sources 231 Chapter 8 The Inter-Integrated Circuit Protocol 233 What’s I2C/SMBus? 234 I2C Core 235 Bus Transactions 237 Device Example: EEPROM 238 Initializing 238 Probing the Device 241 Checking Adapter Capabilities 244 Accessing the Device 244 More Methods 246 Device Example: Real Time Clock 247 I2C-dev 251 Hardware Monitoring Using LM-Sensors 251 The Serial Peripheral Interface Bus 251 The 1-Wire Bus 254 Debugging 254 Looking at the Sources 255 Chapter 9 PCMCIA and Compact Flash 257 What’s PCMCIA/CF? 258 Linux-PCMCIA Subsystem 260 Host Controller Drivers 262 PCMCIA Core 263 Driver Services 263 Client Drivers 264 Data Structures 264 Device Example: PCMCIA Card 267 Tying the Pieces Together 271 PCMCIA Storage 272 Serial PCMCIA 272 Debugging 273 Looking at the Sources 275 Chapter 10 Peripheral Component Interconnect 277 The PCI Family 278 Addressing and Identification 281 Accessing PCI Regions 285 Configuration Space 285 I/O and Memory 286 Direct Memory Access 288 Device Example: Ethernet-Modem Card 292 Initializing and Probing 293 Data Transfer 301 Debugging 308 Looking at the Sources 308 Chapter 11 Universal Serial Bus 311 USB Architecture 312 Bus Speeds 314 Host Controllers 315 Transfer Types 315 Addressing 316 Linux-USB Subsystem 317 Driver Data Structures 317 The usb_device Structure 318 USB Request Blocks 319 Pipes 321 Descriptor Structures 322 Enumeration 324 Device Example: Telemetry Card 324 Initializing and Probing 325 Accessing Registers 332 Data Transfer 335 Class Drivers 338 Mass Storage 339 USB-Serial 345 Human Interface Devices 348 Bluetooth 348 Gadget Drivers 348 Debugging 349 Looking at the Sources 351 Chapter 12 Video Drivers 355 Display Architecture 356 Linux-Video Subsystem 359 Display Parameters 361 The Frame Buffer API 362 Frame Buffer Drivers 365 Device Example: Navigation System 365 Console Drivers 380 Device Example: Cell Phone Revisited 382 Boot Logo 387 Debugging 387 Looking at the Sources 388 Chapter 13 Audio Drivers 391 Audio Architecture 392 Linux-Sound Subsystem 394 Device Example: MP3 Player 396 Driver Methods and Structures 399 ALSA Programming 409 Debugging 412 Looking at the Sources 412 Chapter 14 Block Drivers 415 Storage Technologies 416 Linux Block I/O Layer 421 I/O Schedulers 422 Block Driver Data Structures and Methods 423 Device Example: Simple Storage Controller 426 Initialization 427 Block Device Operations 430 Disk Access 432 Advanced Topics 434 Debugging 436 Looking at the Sources 437 Chapter 15 Network Interface Cards 439 Driver Data Structures 440 Socket Buffers 441 The Net Device Interface 443 Activation 444 Data Transfer 444 Watchdog 445 Statistics 445 Configuration 446 Bus Specific 448 Talking with Protocol Layers 448 Receive Path 448 Transmit Path 449 Flow Control 449 Buffer Management and Concurrency Control 450 Device Example: Ethernet NIC 451 ISA Network Drivers 457 Asynchronous Transfer Mode 458 Network Throughput 459 Driver Performance 459 Protocol Performance 461 Looking at the Sources 461 Chapter 16 Linux Without Wires 465 Bluetooth 467 BlueZ 469 Device Example: CF Card 471 Device Example: USB Adapter 471 RFCOMM 473 Networking 475 Human Interface Devices 477 Audio 477 Debugging 478 Looking at the Sources 478 Infrared 478 Linux-IrDA 480 Device Example: Super I/O Chip 482 Device Example: IR Dongle 483 IrComm 486 Networking 486 IrDA Sockets 487 Linux Infrared Remote Control 488 Looking at the Sources 489 WiFi 489 Configuration 490 Device Drivers 494 Looking at the Sources 496 Cellular Networking 496 GPRS 496 CDMA 498 Current Trends 500 Chapter 17 Memory Technology Devices 503 What’s Flash Memory? 504 Linux-MTD Subsystem 505 Map Drivers 506 Device Example: Handheld 506 NOR Chip Drivers 511 NAND Chip Drivers 513 User Modules 516 Block Device Emulation 516 Char Device Emulation 517 JFFS2 517 YAFFS2 518 MTD-Utils 518 Configuring MTD 519 eXecute In Place 520 The Firmware Hub 520 Debugging 524 Looking at the Sources 524 Chapter 18 Embedding Linux 527 Challenges 528 Component Selection 530 Tool Chains 531 Embedded Bootloaders 531 Memory Layout 535 Kernel Porting 537 Embedded Drivers 538 Flash Memory 538 UART 539 Buttons and Wheels 539 PCMCIA/CF 540 SD/MMC 540 USB 540 RTC 541 Audio 541 Touch Screen 541 Video 541 CPLD/FPGA 542 Connectivity 542 Domain-Specific Electronics 542 More Drivers 543 The Root Filesystem 544 NFS-Mounted Root 544 Compact Middleware 546 Test Infrastructure 548 Debugging 548 Board Rework 549 Debuggers 550 Chapter 19 Drivers in User Space 551 Process Scheduling and Response Times 553 The Original Scheduler 553 The O(1) Scheduler 553 The CFS Scheduler 555 Response Times 555 Accessing I/O Regions 558 Accessing Memory Regions 562 User Mode SCSI 565 User Mode USB 567 User Mode I2C 571 UIO 573 Looking at the Sources 574 Chapter 20 More Devices and Drivers 577 ECC Reporting 578 Device Example: ECC-Aware Memory Controller 579 Frequency Scaling 583 Embedded Controllers 584 ACPI 585 ISA and MCA 587 FireWire 588 Intelligent Input/Output 589 Amateur Radio 590 Voice over IP 590 High-Speed Interconnects 591 InfiniBand 592 RapidIO 592 Fibre Channel 592 iSCSI 593 Chapter 21 Debugging Device Drivers 595 Kernel Debuggers 596 Entering a Debugger 597 Kernel Debugger (kdb) 598 Kernel GNU Debugger (kgdb) 600 GNU Debugger (gdb) 604 JTAG Debuggers 605 Downloads 609 Kernel Probes 609 Kprobes 609 Jprobes 614 Return Probes 617 Limitations 619 Looking at the Sources 620 Kexec and Kdump 620 Kexec 620 Kexec with Kdump 621 Kdump 622 Looking at the Sources 629 Profiling 629 Kernel Profiling with OProfile 629 Application Profiling with Gprof 633 Tracing 634 Linux Trace Toolkit 634 Linux Test Project 638 User Mode Linux 638 Diagnostic Tools 638 Kernel Hacking Config Options 639 Test Equipment 640 Chapter 22 Maintenance and Delivery 641 Coding Style 642 Change Markers 642 Version Control 643 Consistent Checksums 643 Build Scripts 645 Portable Code 647 Chapter 23 Shutting Down 649 Checklist 650 What Next? 651 Appendix A Linux Assembly 653 Debugging 659 Appendix B Linux and the BIOS 661 Real Mode Calls 662 Protected Mode Calls 665 BIOS and Legacy Drivers 666 Appendix C Seq Files 669 The Seq File Advantage 670 Updating the NVRAM Driver 677 Looking at the Sources 679 Index 681……
20世纪90年代末,我们IBM的一群同事进行了一项将Linux内核移植到一种智能手表上的工作。目标设备虽然微不足道,但是移植Linux的任务却相当艰巨。在当时,内核中还不存在MTD(MemoryTechnologyDevice,内存技术设备)子系统,这意味着在文件系统能够运行在这种手表的闪存之前,我们不得不从头开发必要的存储驱动器。由于当时内核的输入事件驱动接口尚未诞生,因此手表的触摸屏与用户应用程序的接口非常复杂。让XWindows运行在手表的LCD上十分困难,因为XWindows和帧缓冲设备驱动程序搭配得并不好。如果你戴着一块防水的Linux智能手表,却不能躺在浴缸里实时获得股票行情,那么这块手表还有什么用?Linux几年前就已集成了蓝牙技术,而当时我们却花费了数月的时间将一种专有的蓝牙协议栈移植到手表上,从而使得这种手表具备了Internet连网能力。电源管理系统可以让这种手表的电池多运行几个小时,因此我们又设计了一个省电方案。那时候,Linux红外项目Linux-Infrared还不稳定,我们十分小心地用红外协议栈,设计出使用红外键盘作为手表的数据输入设备。最后,由于当时还没有能应用于消费类电子产品的成型的编译器发行版,我们也不得不编译出编译器,并交叉编译出一个紧凑的应用程序集。时光飞逝,当年嗷嗷待哺的企鹅宝宝已经成长为一名健壮的少年。过去我们编写了成千上万行代码并耗时一年完成的任务,若采用现在的内核,只需要几天的时间就可以完成。但是,要成为一名能巧妙地解决多种问题的高级内核工程师,你需要理解今天的Linux内核提供的各种功能和设施。关于本书在Linux内核源代码树提供的各个子系统中,drivers/目录是其中最大的一个分支,它比其他子系统大数倍。随着各种新技术的广泛应用,内核中新的设备驱动程序的开发工作正在稳步加速。最新的Linux内核支持多达70余种设备驱动程序的庞大家族。本书主要讲解Linux设备驱动程序,介绍了目前内核所支持的主要设备类型的设计与开发,其中包括当年我在开发Linux-on-Watch项目时未遇到的设备。本书在讲解每种设备驱动程序家族的时候,先介绍与该驱动程序相关的技术,接着给出一个实际的开发例子,最后列出相关的内核源代码文件。在踏入Linux设备驱动程序领域之前,本书先介绍了内核以及Linux2.6的重要特性,重点讲解了设备驱动程序编写者感兴趣的内核知识。
插图:Linux has trekked many a terrain and is now state of the art, so you can use it as avehicle to understand operating system concepts, processor architectures, and evenindustry domains. When you learn a technique used by a device driver subsystem,look one level deeper and probe the underlying reasons behind that design choice.  Wherever not explicitly stated, the text assumes the 32-bit x86 architecture. Thebook is, however, mindful of the fact that you are more likely to write device driversfor embedded devices than for conventional PC-compatible systems. The chapter onserial drivers, for example, examines two devices: a touch controller on a PC deriva-tive and a UART on a cell phone.&or&the chapter on I2C device drivers looks at anEEPROM on a PC system and a Real Time Clock on an embedded device. The bookalso teaches you about the core infrastructure that the kernel provides for most driverclasses, which hides architecture dependencies from device drivers.  Device driver debugging techniques are discussed near the end of the book inChapter 21, so you might find it worthwhile to forward to that chapter as you developdrivers while reading the book.  This book is based on the 2.6 kernel, which has substantial changes across the boardfrom 2.4, touching all major subsystems. Hopefully, you have installed a 2.6,basedLinux on your system by now and started experimenting with the kernel sources. Eachchapter takes the liberty, of profusely pointing you to relevant kernel source files fortwo main reasons:
(作者:bkbk954590 编辑:kind887)
本文网址:
关于的文章

我要回帖

更多关于 pdf阅读器下载 的文章

 

随机推荐