当前位置: 首页 > news >正文

松江网站建设漳州网站建设优化推广

松江网站建设,漳州网站建设优化推广,免费的wordpress主题好,校园门户网站建设项目技术支持目录 一、设备类型 二、模块 构建模块 安装模块 载入模块 一、设备类型 在 Linux 以及 Unix 系统中#xff0c;设备被分为以下三种类型#xff1a; 块设备#xff08;blkdev#xff09;#xff1a;以块为寻址单位#xff0c;块的大小随设备的不同而变化#xff1…目录 一、设备类型 二、模块 构建模块 安装模块 载入模块 一、设备类型 在 Linux 以及 Unix 系统中设备被分为以下三种类型 块设备blkdev以块为寻址单位块的大小随设备的不同而变化块设备通常支持重定位seeking操作也就是对数据的随机访问。如硬盘、蓝光光碟和 Flash 这样的存储设备都是块设备。块设备是通过称为 ”块设备节点“ 的特殊文件来访问的并且通常被挂载为文件系统。字符设备cdev不可寻址只提供数据的流式访问即一个一个字符或字节地访问。如键盘、鼠标和打印机等都是字符设备。字符设备是通过称为 ”字符设备节点“ 的特殊文件来访问的与块设备不同应用程序通过直接访问设备节点与字符设备交互。网络设备有时也被称为以太网设备ethernet devices提供了对网络的访问这是通过一个物理适配器和一种特定的协议进行的。它不是通过设备节点来访问而是通过套接字 API 这样的特殊接口来访问。 并不是所有设备驱动都表示物理设备。有些设备驱动是虚拟的仅仅提供访问内核功能而已。这种设备被称为 ”伪设备“ (pseudo device)如内核随机数发生器/dev/random、空设备/dev/null等。 二、模块 尽管 Linux 是 ”单块内核“monolithic的操作系统但 Linux 内核时模块化组成的它允许内核在运行时动态地向其中安装或卸载一个模块。 下面编写一个 HelloWorld的模块程序 #include linux/init.h #include linux/module.h #include linux/kernel.h/* 初始化函数当模块装载时被调用 */ static int hello_init(void) {printk(KERN_ALERT Module installed!\n);return 0; }/* 退出函数当模块卸载时调用 */ static void hello_exit(void) {printk(KERN_ALERT Module removed!\n); }module_init(hello_init); module_exit(hello_exit);MODULE_LICENSE(GPL);这是一个非常非常简单的内核模块程序hello_init() 是模块的入口点它通过 module_init() 例程注册到系统中在内核装载时调用。这个 init 函数仅仅打印了一行简单的信息但在实际的模块中该函数还会注册资源、初始化硬件、分配数据结构等。而 hello_exit() 函数负责对 init 函数以及在模块生命周期过程中所作的一切事情进行撤销与清理工作。 构建模块 下面开始构建模块。有两种方法来构建模块 第一种是放在内核源代码树中。这样构建的模块会正式成为 Linux 内核中的一部分设备驱动程序存放在内核源码树根目录下的 /drivers 的子目录下根据不同的设备类型字符设备存放于 /drivers/char块设备存放于 /drivers/block 等。 假如我们编写的模块类型是字符设备那就把模块文件移动到 /drivers/char 目录下然后往 /drivers/char 目录下的 Makefile 文件中添加一行 obj-m hello.o 然后编译内核重新装载内核即可。 第二种是放在内核代码外。将 hello.c 放到 /drivers/char 目录下后在内核代码外创建一个 Makefile 文件内容如下 # -C 后为你的内核源码树所在位置 # make -C /root/linux_kernel_learning/linux-2.6 modulesobj-m hello.o然后执行如下指令来构建模块  make -C /root/linux_kernel_learning/linux-2.6 SUBDIRS$PWD modules 安装模块 编译后模块将被装入到目录 /lib/modules/version/kernel/drivers/char 下 下面的构建命令用来安装编译的模块在内核源码树目录下执行 make modules_install 载入模块 载入一个模块 insmod hello.ko 卸载一个模块 rmmod hello.ko
http://www.pierceye.com/news/19391/

相关文章:

  • 为什么做游戏网站被封深圳网站建设(信科网络)
  • 坦洲网站建设公司网站屏幕自适应代码
  • 深圳网站设计服务商哪个网站可以做片头
  • wordpress花生壳lamp河源市企业网站seo价格
  • 内蒙做网站黄石网站建设哪家好
  • 天心区网站建设深圳被点名批评
  • 合肥网站排名怎么看一个网站用什么语言做的
  • 网站开发趋势泰安北京网站建设公司哪家好
  • 网站开发合同技术目标免费网站开发模板
  • 公司网站建设费属于宣传费吗在线观看视频的免费网站
  • wordpress 显示 列表seo网络推广培训班
  • 做网站和网站维护需要多少钱上海中学门户网站登陆
  • 做黄金的人喜欢逛那些网站广告投放系统源码
  • 青岛鲁icp 网站制作 牛商网鲁谷网站建设
  • 网站旁边的小图标怎么做的河南郑州网站建设
  • t和p在一起怎么做网站银川软件开发公司
  • 网站开发用的软件网站建设兼职挣多少钱
  • 建广告网站需要多少钱快速刷排名seo软件
  • 直播教育网站建设普宁市做网站
  • 南阳高质量建设大市网站学习网站建设
  • 源码论坛网站需要多大的空间网络广告是什么意思
  • 自己做网站制作流程拓客软件哪个好用
  • 电子商务网站平台建设策划购物商城模板
  • 八宝山做网站公司公司起名字大全免费评分
  • 九口袋网站建设网站主题咋做
  • 深圳网页服务开发与网站建设城乡住建局官网
  • 集团网站建设调研报告深圳市龙华区观澜街道
  • 网站域名到期会怎么样免费的seo网站
  • 旅游景区网站开发的政策可行性html编辑器安卓版手机版软件
  • 只买域名不建网站wordpress主题 xueui