tailieunhanh - Advanced Linux Programming: 6-Mastering Linux

Tham khảo tài liệu 'advanced linux programming: 6-mastering linux', công nghệ thông tin, hệ điều hành phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | II Mastering Linux 6 Devices 7 The proc File System 8 Linux System Calls 9 Inline Assembly Code 10 Security 11 A Sample GNU Linux Application Devices Linux like most operating systems interacts with hardware devices via modularized software components called device drivers. A device driver hides the peculiarities of a hardware device s communication protocols from the operating system and allows the system to interact with the device through a standardized interface. Under Linux device drivers are part of the kernel and may be either linked statically into the kernel or loaded on demand as kernel modules. Device drivers run as part of the kernel and aren t directly accessible to user processes. However Linux provides a mechanism by which processes can communicate with a device driver and through it with a hardware device via file-like objects appear in the file system and programs can open them read from them and write to them practically as if they were normal files. Using either Linux s low-level i o operations see Appendix B Low-Level I O or the standard C library s I O operations your programs can communicate with hardware devices through these file-like objects. Linux also provides several file-like objects that communicate directly with the kernel rather than with device drivers. These aren t linked to hardware devices instead they provide various kinds of specialized behavior that can be of use to application and system .