^
Начало
Установить закладку
+ Настройки
14 | 16 | 18 | 20 | 22 | 24
Ширина текста:
50% | 60% | 70% | 80% | 90% | 100%
Шрифт:
Цвет текста:
Установить
Цвет фона:
Установить
Сбросить настройки
Foreword
Preface
Practical Advice for the Practicing Embedded Developer
Intended Audience
What This Book Is Not
Conventions Used
Organization of the Book
Follow Along
GPL Copyright Notice
Acknowledgments
About the Author
Chapter 1. Introduction
1.1. Why Linux?
1.2. Embedded Linux Today
1.3. Open Source and the GPL
1.4. Standards and Relevant Bodies
1.5. Chapter Summary
1.5.1. Suggestions for Additional Reading
Chapter 2. Your First Embedded Experience
2.1. Embedded or Not?
2.2. Anatomy of an Embedded System
2.3. Storage Considerations
2.4. Embedded Linux Distributions
2.5. Chapter Summary
Chapter 3. Processor Basics
3.1. Stand-alone Processors
3.2. Integrated Processors: Systems on Chip
3.3. Hardware Platforms
3.4. Chapter Summary
Chapter 4. The Linux KernelA Different Perspective
4.1. Background
4.2. Linux Kernel Construction
4.3. Kernel Build System
4.4. Obtaining a Linux Kernel
Chapter 5. Kernel Initialization
5.1. Composite Kernel Image: Piggy and Friends
5.2. Initialization Flow of Control
5.3. Kernel Command Line Processing
5.4. Subsystem Initialization
5.5. The init Thread
5.6. Chapter Summary
Chapter 6. System Initialization
6.1. Root File System
6.2. Kernel's Last Boot Steps
6.3. The Init Process
6.4. Initial RAM Disk
6.5. Using initramfs
6.6. Shutdown
6.7. Chapter Summary
Chapter 7. Bootloaders
7.1. Role of a Bootloader
7.2. Bootloader Challenges
7.3. A Universal Bootloader: Das U-Boot
7.4. Porting U-Boot
7.5. Other Bootloaders
7.6. Chapter Summary
Chapter 8. Device Driver Basics
8.1. Device Driver Concepts
8.2. Module Utilities
8.3. Driver Methods
8.4. Bringing It All Together
8.5. Device Drivers and the GPL
8.6. Chapter Summary
Chapter 9. File Systems
9.1. Linux File System Concepts
9.2. ext2
9.2.1. Mounting a File System
9.2.2. Checking File System Integrity
9.3. ext3
9.4. ReiserFS
9.5. JFFS2
9.6. cramfs
9.7. Network File System
9.8. Pseudo File Systems
9.9. Other File Systems
9.10. Building a Simple File System
9.11. Chapter Summary
Chapter 10. MTD Subsystem
10.1. Enabling MTD Services
10.2. MTD Basics
10.3. MTD Partitions
10.4. MTD Utilities
10.5. Chapter Summary
Chapter 11. BusyBox
11.1. Introduction to BusyBox
11.2. BusyBox Configuration
11.3. BusyBox Operation
11.4. Chapter Summary
Chapter 12. Embedded Development Environment
12.1. Cross-Development Environment
12.2. Host System Requirements
12.3. Hosting Target Boards
12.4. Chapter Summary
Chapter 13. Development Tools
13.1. GNU Debugger (GDB)
13.2. Data Display Debugger
13.3. cbrowser/cscope
13.4. Tracing and Profiling Tools
13.5. Binary Utilities
13.6. Miscellaneous Binary Utilities
13.7. Chapter Summary
Chapter 14. Kernel Debugging Techniques
14.1. Challenges to Kernel Debugging
14.2. Using KGDB for Kernel Debugging
14.3. Debugging the Linux Kernel
14.4. Hardware-Assisted Debugging
14.5. When It Doesn't Boot
14.6. Chapter Summary
Chapter 15. Debugging Embedded Linux Applications
15.1. Target Debugging
15.2. Remote (Cross) Debugging
15.3. Debugging with Shared Libraries
15.4. Debugging Multiple Tasks
15.5. Additional Remote Debug Options
15.6. Chapter Summary
Chapter 16. Porting Linux
16.1. Linux Source Organization
16.2. Custom Linux for Your Board
16.3. Platform Initialization
16.4. Putting It All Together
16.5. Chapter Summary
Chapter 17. Linux and Real Time
17.1. What Is Real Time?
17.2. Kernel Preemption
17.3. Real-Time Kernel Patch
17.4. Debugging the Real-Time Kernel
17.5. Chapter Summary
Appendix A. GNU Public License
Preamble
Terms and Conditions for Copying, Distribution and Modification
No Warranty
Appendix B. U-Boot Configurable Commands
Appendix C. BusyBox Commands
Appendix D. SDRAM Interface Considerations
D.1. SDRAM Basics
D.2. Clocking
D.3. SDRAM Setup
D.4. Summary
Appendix E. Open Source Resources
Source Repositories and Developer Information
Mailing Lists
Linux News and Developments
Open Source Insight and Discussion
Appendix F. Sample BDI-2000 Configuration File