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

谷歌网站建设代理营销存在的问题及改进

谷歌网站建设代理,营销存在的问题及改进,怎么做网络推广品牌哪家强,校园网站建设宣传目录 一、设备类型 二、模块 构建模块 安装模块 载入模块 一、设备类型 在 Linux 以及 Unix 系统中,设备被分为以下三种类型: 块设备(blkdev):以块为寻址单位,块的大小随设备的不同而变化&#xff1…

目录

一、设备类型

二、模块

构建模块

安装模块

载入模块


一、设备类型

在 Linux 以及 Unix 系统中,设备被分为以下三种类型:

  • 块设备(blkdev):以块为寻址单位,块的大小随设备的不同而变化;块设备通常支持重定位(seeking)操作,也就是对数据的随机访问。如硬盘、蓝光光碟和 Flash 这样的存储设备都是块设备。块设备是通过称为 ”块设备节点“ 的特殊文件来访问的,并且通常被挂载为文件系统。
  • 字符设备(cdev):不可寻址,只提供数据的流式访问,即一个一个字符或字节地访问。如键盘、鼠标和打印机等都是字符设备。字符设备是通过称为 ”字符设备节点“ 的特殊文件来访问的,与块设备不同,应用程序通过直接访问设备节点与字符设备交互。
  • 网络设备:有时也被称为以太网设备(ethernet devices),提供了对网络的访问,这是通过一个物理适配器和一种特定的协议进行的。它不是通过设备节点来访问,而是通过套接字 API 这样的特殊接口来访问。

并不是所有设备驱动都表示物理设备。有些设备驱动是虚拟的,仅仅提供访问内核功能而已。这种设备被称为 ”伪设备“ (pseudo device),如内核随机数发生器(/dev/random)、空设备(/dev/null)等。

二、模块

尽管 Linux 是 ”单块内核“(monolithic)的操作系统,但 Linux 内核时模块化组成的,它允许内核在运行时动态地向其中安装或卸载一个模块。

下面编写一个 Hello,World!的模块程序:

#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.hengruixuexiao.com/news/19871.html

相关文章:

  • 建设部举报网站高级搜索技巧
  • 如何制作公司宣传片seo需要付费吗
  • 怎么做网站的导航无锡seo
  • 免费素材视频网站哪个最好联赛积分榜排名
  • 商城网站开发需要哪些人员河源市企业网站seo价格
  • 网站建设与管理 吴振峰成都私人网站制作
  • 网站开发者 敬请期待广州高端网站建设公司
  • 凡客优品官方网站对网站提出的优化建议
  • 自适应网站怎么做m站厦门人才网
  • 包头网络资深seo顾问
  • 河北省唐山市建设规划局的网站seo网站推广多少钱
  • python开源代码网站产品推广的渠道
  • 免费域名网站创建seo快排技术教程
  • 制作微信商城网站开发台州seo优化公司
  • 网站快速备案真的假的网站制作的重要性及步骤详解
  • 网站建设 精品课程网站一键生成
  • 厦门哪家做网站好公司网站建站要多少钱
  • 十八哥公司网站开发重庆的seo服务公司
  • 买一个域名多少钱一个电脑优化系统的软件哪个好
  • 做交互的网站深度搜索
  • 网站上资源截图怎么做seo查询平台
  • 宜兴专业做网站公司seo人员培训
  • 国外经典平面设计网站互联网行业最新资讯
  • 手机网站图片锚链接怎么做下载浏览器
  • wordpress需求规划书南京百度seo排名
  • 一般小型教育网站的建设和开发seo标题关键词怎么写
  • wordpress自动设置缩略图seo优化推广专员招聘
  • 黑龙江做网站公司大连百度推广公司
  • 苹果CMS如何做视频网站游戏推广工作好做吗
  • 政府网站集群建设工作方案seo推广服务哪家好