ChinaUnix.net
相关文章推荐:

Linux内核模式 opennamei 设备文件

2.字符设备文件 那么,现在我们是原始级的内核程序员,我们知道如何写不做任何事情的内核模块。我们为自己而骄傲并且高昂起头来。但是不知何故我们感觉到缺了什么东西。患有精神紧张症的模块不是那么有意义。 内核模块同进程对话有两种主要途径。一种是通过设备文件(比如/dev 目录中的文件),另一种是使用proc文件系统。我们把一些东西写入内核的一个主要原因就是支持一些硬件设备,所以我们从设备文件开始。 设备文件的最初...

by davidxueer - 内核/嵌入技术 - 2003-12-27 17:07:22 阅读(724) 回复(0)

相关讨论

2.字符设备文件 那么,现在我们是原始级的内核程序员,我们知道如何写不做任何事情的内核模块。我们为自己而骄傲并且高昂起头来。但是不知何故我们感觉到缺了什么东西。患有精神紧张症的模块不是那么有意义。 内核模块同进程对话有两种主要途径。一种是通过设备文件(比如/dev 目录中的文件),另一种是使用proc文件系统。我们把一些东西写入内核的一个主要原因就是支持一些硬件设备,所以我们从设备文件开始。 设备文件的最初...

by davidxueer - 内核源码 - 2003-12-27 17:07:22 阅读(2031) 回复(0)

  设备文件是用来代表物理设备的。多数物理设备是用来进行输出或输入的,所以必须由某种机制使得内核中的设备 驱动 从进程中得到输出送给设备。这可以通过打开输出设备文件并且写入做到,就想写入一个普通文件。在下面的例子里,这由device_write实现。   这不是总能奏效的。设想你与一个连向modem的串口(技是你有一个内猫,从CPU看来它也是作为一个串口实现,所以你不需要认为这个设想太困难)。最自然要做的事情就是使用设...

by gdlc - Linux文档专区 - 2006-11-17 08:47:48 阅读(586) 回复(0)

著者:Ori Pomerantz 翻译:徐辉 5.和设备文件对话(写和IOCTLS) 设备文件是用来代表物理设备的。多数物理设备是用来进行输出或输入的,所以必须由某种机制使得内核中的设备驱动从进程中得到输出送给设备。这可以通过打开输出设备文件并且写入做到,就想写入一个普通文件。在下面的例子里,这由device_write实现。 这不是总能奏效的。设想你与一个连向modem的串口(技是你有一个内猫,从CPU看来它也是作为一个串口实现,所...

by davidxueer - 内核/嵌入技术 - 2003-12-27 17:10:30 阅读(652) 回复(0)

著者:Ori Pomerantz 翻译:徐辉 5.和设备文件对话(写和IOCTLS) 设备文件是用来代表物理设备的。多数物理设备是用来进行输出或输入的,所以必须由某种机制使得内核中的设备驱动从进程中得到输出送给设备。这可以通过打开输出设备文件并且写入做到,就想写入一个普通文件。在下面的例子里,这由device_write实现。 这不是总能奏效的。设想你与一个连向modem的串口(技是你有一个内猫,从CPU看来它也是作为一个串口实现,所...

by davidxueer - 内核源码 - 2003-12-27 17:10:30 阅读(1867) 回复(0)

来源:天极博客 作者:未知 设备文件是用来代表物理设备的。多数物理设备是用来进行输出或输入的,所以必须由某种机制使得内核中的设备驱动从进程中得到输出送给设备…… 设备文件是用来代表物理设备的。多数物理设备是用来进行输出或输入的,所以必须由某种机制使得内核中的设备驱动从进程中得到输出送给设备。这可以通过打开输出设备文件并且写入做到,就想写入一个普通文件。在下面的例子里,这由device_write实现。...

by elog - Linux文档专区 - 2006-11-19 01:19:13 阅读(697) 回复(0)

设备文件对话(写和 IOCTL)   设备文件应该表现物理设备。大多物理设备既作为输出也作为输入,因此必须有某个机制使内核中的设备驱动程序得到来自进程的输出以便发送到设备。通过为输出打开设备文件并向其写而做到这个,就像写一个普通文件。在下面的例子中,这是用 device_write 实现的。   这不总是足够的。想象你有一个串行口连接到一个调制解调器(即使你有一个内置的调制解调器,从CPU的观点看它仍然是通过串行口连接...

by yishuihe - Linux文档专区 - 2006-10-24 17:39:15 阅读(624) 回复(0)

1.arch/arm/mach-xxx/devices.c文件设置了所有设备的资源(物理地址,中断号等)。把每个device和resource保存在devices数组中;然后platform_add_devices把传入的devices中的每个设备调用platform_device_register注册到系统中。 arch_initcall宏将调用xxx_devices_init函数,注册各个设备。 arch_initcall at6600_devices_init platform_add_devices lm_add_devices platform_device_register lm_device_register device_ini...

by liaojs - Linux文档专区 - 2009-05-29 13:13:11 阅读(689) 回复(0)

从 2.4 到 2.6,linux 内核在可装载模块机制、设备模型、一些核心 API 等方面发生较大改变,设备驱动开发人员面临着将驱动从 2.4 移植到 2.6 内核,或是使驱动同时支持2.4 与 2.6 内核的任务。站在设备驱动开发人员的角度,驱动由一个或几个外部可加载内核模块组成,本文针对 2.6 内核里模块机制的改变对编写设备驱动程序的影响,从内核模块的编译、装载时的版本检查、初始化与退出、模块使用计数、输出内核符号、命令行输入参数、...

by hu200298 - Linux文档专区 - 2008-03-07 21:07:21 阅读(399) 回复(0)
by DerekGuo_lzu - 移动操作系统 - 2011-12-21 08:41:40 阅读(715) 回复(0)

版权声明 本文作者是一位自由软件爱好者,所以本文虽然不是软件,但是本着 GPL 的精神发布。任何人都可以自由使用、转载、复制和再分发,但必须保留作者署名,亦不得对声明中的任何条款作任何形式的修改,也不得附加任何其它条件。您可以自由链接、下载、传播此文档,但前提是必须保证全文完整转载,包括完整的版权信息和作译者声明。 其他作品 本文作者十分愿意与他人共享劳动成果,如果你对我的其他翻译作品或者技术文章有兴趣,...

by coolcoolrain - Linux文档专区 - 2010-01-12 15:40:15 阅读(1416) 回复(0)