2023年linux嵌入式实验报告.docx
《2023年linux嵌入式实验报告.docx》由会员分享,可在线阅读,更多相关《2023年linux嵌入式实验报告.docx(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、大连理工大学本科实验报告实验名称:嵌入式操作系统学院(系):计算机学院实验专 业: 计算机系班 级:070 3学 号:学生姓名:m q 1 z202 3 年 1 2 月 6 H实验一:linux内核裁剪# i nclude / * COPY_TO_US ER*/static struct f il e _opera t ions m y driv e r_op s =o w r i t e : mydriver_w r it e ,r e ad:mydr i ver_re a d,oopen: mydr i ver_ope n ,release:。m y driver_r e lease, ;
2、int i n it mydriv e r_ i nit(vo i d) “nt re s ult;” e g i ster_chrdev(demo_M A JOR,Hmy d r i verl d r ive r _ops); 4f( r e sult0) oprin t k(nregister e rrn );return r e sul t ;/ / printk(DEVI C E_N A ME nin i t o kn n );叩ri ntk (nin i t oknH);r e t ur n 0;vo i d exi t mydriver_e x it(void) unregi s
3、te r _chrdev(d e mo_MAJO R , mydriverl);V/p r i ntk(D E VIC E N A ME H e x i toknn);叩 ri ntk ( n exi t o kn n );modul e _in i t(mydrive r _ini t );mod u 1 e exi t (m y d r iver_e x it);3、 编译文献Makefi 1 eDI R =/u s r/src / linux_2.4.2 0 -8C C= armv41un k nown-linuxg c cFLG=-D KERNEL_ -DMODULE - I $(D
4、I R)/includ ea 1 l:mydr i v e r . c,$(CC) -c $(F LG) $Aclean:rm f * o /4、 动态安装(1)创建设备文献。m k nod /dev/mydriver c ma j or minorc是指字符设备,ma j or是主设备号,就是在/p r oc/d evice s里看到的。minor是从设备号,设立成0就可以了。安装设备, in s mod - f myd r i v e r .o假如安装成功,在/proc/devices文献中就可以看到设备my d r i ver,并可以看到它的主 设备号。(3)卸载设备$ rmmod my
5、d r i v er总结报告一、实验结果编写的驱动程序很好的运营,完毕预定的功能二、实验总结通过一天的实验,让我学会了很多以前没有接触过的有趣的知识进一步的掌握了 linux 环境下的一些she 命令和对v i的运用,但是在里面也碰到了一些问题,比如编完程序 由于对编译工具make的掌握不够纯熟又不想照搬书上的东西,所以花了很长时间在研 究ma k e上,导致最后的实验进度落后同学很多,但是最终还是学会了写makefil e文献 的方法,最后写出了一个完美的ma kefi 1 e文献,通过这个实验使我对1 i nux驱动编程产 生强烈的爱好,以后的生活中linux的应用场合一定会越来越多,比如
6、andr o id,假如掌握 它的驱动开发对以后的工作会非常有帮助。预习报告一、实验目的:1、了解Linux内核源代码的目录结构及各目录的相关内容2、了解Linux内核各配置选项内容和作用3、掌握Linux内核配置文献的作用4、握Li nux内核的编译过程5、掌握将新增内核代码加入到Lin ux内核结构中的方法二、实验原理L i nux对于计算机硬件、网络和文献系统等部件的驱动程序支持既可以放在系统 内核中,也可以作为一个可加载的模块(modules)使用。必当驱动程序放在系统内核中时, Li nux假定该硬件是存在于系统中的;而作为可加载模块使用时,只有在知道该硬件 存在于系统时才会作为系统
7、内核的一部分,当Lin u x检测到硬件时,该模块才被加 入到系统内核中。三、实验环节1、检查编译器的版本用低版本的编译器去编译高版本的内核有也许不能编译或 使内核不能使用。要查看编译器版本,可以执行命令:A#g C C -V”进入系统内核源代码目录。一般系统内核的源代码放在/usr/src/目录下。用1 s -1命令 查看也许显示如下:用Is - 1 /u s r / s rcT o tai 3 oAJrw x rwxrwx 1 root root, 1 2 M a y4 14:36linux2.4-linux-2.4.2 0-8o d r w xr- x rx1 5 root root 1
8、 0 2 4 May 1 4 11: 37 lin u x -2.4 . 20-8A d r wxr- x r -x 3r o ot root 1 024 May 4 14:38 sendmai 1 4G 其中、L i nux 2.4是一个链接文献,它的链接目的是指向linux-2 . 4. 20-8 目录,因此、cd li n ux-2.4 就是进入 lin u x-24 2。-8 目录。2、删除过时的目的文献A进入/usr/src/lin UX2. 4. 20-8目录,运营make mrproper命令以清除过时、旧的目的文献。这是由于通过多次编译后系统会 留下部分目的文献,假如没有清除干
9、净也许导致本次编译犯错。假如没有编译过或者是 系统升级的新解压缩目录,则这一环节可以省略。3、重新设立系统内核配置系统内核的目的是建立一个适合大小、满足需求的系统内核;因此,用户必须根据自 己所设计系统的需要对Linux系统支持的硬件和软件进行适当淘汰,即从配置内容中选 择相应的硬件类型和合适的设备驱动程序。不同的内核版本显示的配置内容有所不同, 这里以Linux内核2-420版本为例说明。配置内容共有35个类别,如下表所示:编 号类别含义1Co d e m a turi t y 1 ev e 1 op t ion s代码成熟级别2Loadab 1 e modu 1 e suppo r t可装
10、载模块支持3P r o c e ssor type and f e atu r es解决器类型与特性4G e neral set u p一般设立5Memory T e c h n ology Dev i ceMTD设备支持6Par a 1 1 el port s upport并行口支持7P 1 ug a n d Play config u rat i o n即插即用支持8Block de v i c e s块设备支持9Multi-devic e su p p ort (RAID an d L VM)多设备支持10C r ypto g raphy su p po r t密码系统支持11N etw
11、or k in g options网络选项1 2Tel e p hon y Support电话支持13ATA/IDE/MFM/RLL suppor t多种接口存储设备支持1 4S C SI sup p ortSCSI设备的支持1 5Fusi o n MPT d e vice suppo r tFu s ion MPT设备支持16IEEE 13 94 (FireW i re) su p p ortIEEE 1394防火墙设备支持1712 0 dev ices uppor t120设备支持18N e two r k devi c e s u pp o r t网络设备支持1 9Amateur R a
12、 dio s u p p or t业余无线电支持20I r D A (infrared) s up p ort红外线支持21IS DN sub s y s t emISDN子系统22Old CD-R OM dr i ve r s(not S C SE notIDE)非 SCSI/IDE 接口的 CD-ROM 设备23i nput core s u p po r t输入核心支持24Char act e r d ev i ce s字符设备25Multimedia devi c es多媒体设备26Cryp t o Hardwar e su p portC r y p t 0硬件支持27F i le
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 linux 嵌入式 实验 报告
限制150内