全球旧事资料 分类
mycopysys_mycopy
同时将u
def__NR_syscalls后面的数字加1
7、编译核
○1首先进入解压目录cdusrsrcli
uxsource2635。运行
命令makeclea
○2makeme
uco
fig
○3makebzImage
○4cparchx86bootbzImageboo
○5makemodules
○6makemodules_i
stall
○7makei
stall
○8cdboot
○9mki
itramfsoi
itrdimg263320263320
○10修改grubcfg增加一个启动项代码如下
me
ue
tryUbu
tuwithLi
ux263320classubu
tuclassg
uli
uxclassg
uclassos
recordfail
i
smodpart_msdos
i
smodext2
fsetroothd0msdos1
search
ofloppyfsuuidset64f525ed3b344403bb0496bf47d14da1
li
uxbootvmli
uz263320
rootUUID64f525ed3b344403bb0496bf47d14da1roquietsplash
i
itrdbooti
itrdimg263320
○11settimeout20
○12重启计算机选择新的核进入。
d程序运行结果
开机显示新编译的核见图5
图5开机显示新编译的核li
ux263320
进入新的核后查看usr目录下的文件atxt见图6。
图6文件atxt的容
拷贝前btxt的容见图7。
f图7拷贝前文件btxt的容
运行测试程序test_mycopy将文件atxt的容拷贝到文件btxt结果见图8。
图8拷贝后btxt的容
三、掌握增加设备驱动程序的方法。通过模块方法增加一个新
的设备驱动程序。
a任务分析
系统调用是操作系统核和应用程序之间的接口而设备驱动程序是操作系统核和机器硬件之间的接口。设备驱动程序为应用程序屏蔽了硬件
的细节这样在应用程序看来硬件设备只是一个设备文件应用程序
可以象操作普通文件一样对硬件设备进行操作。设备驱动程序是核的一
部分它完成以下的功能
1对设备初始化和释放
2把数据从核传送到硬件和从硬件读取数据
3读取应用程序传送给设备文件的数据和回送应用程序请求的数据
检测和处理设备出现的错误。
Li
ux支持三中不同类型的设备字符设备characterdevices、块设备blockdevices和网络设备
etworki
terfaces。字符设
备和块设备的主要区别是在对字符设备发出读写请求时实际的硬件
IO一般就紧接着发生了块设备则不然它利用一块系统存作缓冲区
当用户进程对设备请求能满足用户的要求就返回请求的数据如果不
能就调用请求函数来进行实际的IO操作块设备是主要针对磁盘等慢
速设备设计的以免耗费过多的CPU时间来等待。
用户进程是通过设备文件来与实际的硬件打交道每个设备文件都都有其文件属性cb表示是字符设备还是块设备。另外每个文件都有两
个设备号第一个是主设备号标识驱动程序第二个是从设备号标
识使用同一个设备驱动程序的不同的硬件设备比如有两个软盘就可
以用从设备号来区分他们设备文件的的主设备号必须与设备驱动程序
在登记时r
好听全球资料 返回顶部