michile

导航

上一页 1 ··· 3 4 5 6 7 8 9 10 11 12 下一页

2013年2月6日

LDD3--模块编程注意事项

摘要: 因为没有库连接到模块中, 源文件不应当包含通常的头文件, <stdarg.h>和非常特殊的情况是仅有的例外. 只有实际上是内核的一部分的函数才可以在内核模块里使用. 内核相关的任何东西都在头文件里声明, 这些头文件在你已建立和配置的内核源码树里; 大部分相关的头文件位于 include/linux 和 include/asm, 但是别的 include 的子目录已经添加到关联特定内核子系统的材料里了。另外一个在内核编程和应用程序编程之间的重要不同是每一个环境是如何处理错误: 在应用程序开发中段错误是无害的, 一个调试器常常用来追踪错误到源码中的问题, 而一个内核错误即使不终止整个系 阅读全文

posted @ 2013-02-06 17:51 michile 阅读(193) 评论(0) 推荐(0) 编辑

LDD3--驱动设备分类

摘要: 字符设备一个字符( char ) 设备是一种可以当作一个字节流来存取的设备( 如同一个文件 ); 一个字符驱动负责实现这种行为. 这样的驱动常常至少实现 open, close, read, 和 write 系统调用. 文本控制台( /dev/console )和串口( /dev/ttyS0 及其友 )是字符设备的例子, 因为它们很好地展现了流的抽象. 字符设备通过文件系统结点来存取, 例如 /dev/tty1 和 /dev/lp0. 在一个字符设备和一个普通文件之间唯一有关的不同就是, 你经常可以在普通文件中移来移去, 但是大部分字符设备仅仅是数据通道, 你只能顺序存取.然而, 存在看起来象 阅读全文

posted @ 2013-02-06 17:07 michile 阅读(241) 评论(0) 推荐(0) 编辑

LDD3--linux内核角色【copy】

摘要: 进程管理内核负责创建和销毁进程, 并处理它们与外部世界的联系(输入和输出). 不同进程间通讯(通过信号, 管道, 或者进程间通讯原语)对整个系统功能来说是基本的, 也由内核处理. 另外, 调度器, 控制进程如何共享 CPU, 是进程管理的一部分. 更通常地, 内核的进程管理活动实现了多个进程在一个单个或者几个 CPU 之上的抽象.内存管理 计算机的内存是主要的资源, 处理它所用的策略对系统性能是至关重要的. 内核为所有进程的每一个都在有限的可用资源上建立了一个虚拟地址空间. 内核的不同部分与内存管理子系统通过一套函数调用交互, 从简单的 malloc/free 对到更多更复杂的功能.文件系统 阅读全文

posted @ 2013-02-06 16:58 michile 阅读(213) 评论(0) 推荐(0) 编辑

2013年2月5日

IIPC--share memory

摘要: 5.1 Shared MemoryOne of the simplest interprocess communication methods is using shared memory.Shared memory allows two or more processes to access the same memory as if they allcalled mallocand were returned pointers to the same actual memory.When oneprocess changes the memory, all the other proces 阅读全文

posted @ 2013-02-05 22:32 michile 阅读(343) 评论(0) 推荐(0) 编辑

IPC 类型

摘要: *Shared memory permits processes to communicate by simply reading and writing to a specified memory location.*Mapped memory is similar to shared memory, except that it is associated with afile in the filesystem.*Pipes permit sequential communication from one process to a related process.*FIFOs are s 阅读全文

posted @ 2013-02-05 22:14 michile 阅读(139) 评论(0) 推荐(0) 编辑

上一页 1 ··· 3 4 5 6 7 8 9 10 11 12 下一页