操作系统课程设计:Linux系统调用/基于模块的文件系统/Linux驱动/统计Linux系统缺页的次数 整合
目录
- 一、可选题目
- 题目1:新增Linux系统调用
- 题目2:实现基于模块的文件系统
- 题目3:新增Linux驱动程序
- 题目4:统计Linux系统缺页的次数
- 二、操作顺序
- 附录:参考资料
- 题1
- 题2
- 题3
- 题4
一、可选题目
题目1:新增Linux系统调用
采用编译内核法,在Linux中增加一个系统调用。
要求:
(1)系统调用实现的功能:计算一个数字的三次方,并打印出来。
(2)另外写一个程序进行调用。
题目2:实现基于模块的文件系统
修改ext3或ext4的源代码,实现新的文件系统。
要求:
(1)复制ext3或ext4的源代码,修改Makefile文件,使用模块编译方式,需要重新编译Linux内核。
(2)可以动态加载和卸载新的文件系统。
(3)至少需要修改文件系统的名称,最好能对文件写操作向系统后台打印出信息。
题目3:新增Linux驱动程序
增加一个驱动程序(使用内存模拟设备),使用模块编译方式。
要求:
(1)可以动态加载和卸载新的驱动。
(2)通过程序或命令行使用该驱动。
(3)至少能通过该驱动保存256MB的数据,还能将这些数据读取出来。
(4)要重新编译Linux内核,可模仿ramdisk的实现方式。
题目4:统计Linux系统缺页的次数
通过在Linux内核中自建变量,并利用/proc文件系统作为中介的方法,统计系统缺页的次数。
要求:
(1)在内核中实现缺页次数统计;
(2)编译并安装新内核;
(3)新建内核模块,并加载到新内核,通过/proc实现用户态下查看缺页次数。
二、操作顺序
题目1与题目4存在的共同点是:在进行内核的编译之前需要修改内核中的文件。题目2、题目3、题目4存在的共同点是:需要编译内核,在编译完成的新内核进行模块的编译。
整合的总体流程如下:首先修改内核源码文件中涉及到题目1与题目4的部分。接下来,进行长达1~2小时的编译内核、编译模块与安装新内核。然后,进入新的内核,传入题目2、题目3、题目4涉及到的源代码文件,安装并卸载相应的模块进行测试。
题目1涉及到的内核源码的文件包括:
arch/x86/entry/syscalls/syscall_64.tbl
kernel/sys.c
include/linux/syscalls.h
题目4涉及到的内核源码的文件包括:
arch/x86/mm/fault.c
include/linux/mm.h
kernel/kallsyms.c
在修改了这几处文件后,对内核进行1-2小时的编译。进入新的内核,在新的内核中,
题目1涉及到的文件testt1.c
题目2涉及到的文件包括:super.c、sysfs.c、file.c、Makefile。将这4个文件放在同一个目录下,进行模块编译。
题目3涉及到的文件包括:zombotany_blkdev.c、Makefile。将这2个文件放在同一个目录下,进行模块编译。
题目4涉及到的文件包括:readpfcount.c、Makefile。将这2个文件放在同一个目录下,进行模块编译。利用模块的形式,对缺页中断次数进行了测试。
附录:参考资料
题1
https://blog.csdn.net/weixin_44191535/article/details/106954861
题2
https://blog.csdn.net/qq_17447307/article/details/103649354
题3
https://blog.csdn.net/qq_46640863/article/details/122952706
题4
https://blog.csdn.net/zouguo1211/article/details/90106347
操作系统课程设计:Linux系统调用/基于模块的文件系统/Linux驱动/统计Linux系统缺页的次数 整合相关推荐
- 操作系统课程设计.doc 高分大作业(97分),共25页word版本
操作系统课程设计 操作系统课程设计.doc 实验列表 实验内容 文档部分截图 关于实验过程截图 文档获取 操作系统课程设计.doc 操作系统课程设计高分大作业(97分),共25页word版本. wor ...
- 基于块的linux驱动程序,基于块的Linux驱动程序 块设备驱动 centos内核编译过程 操作系统课程设计...
操作系统的课程设计,本人也是一头雾水地做完了课程设计,在这里贴下操作过程,放下当时参考的一篇CSDN文章链接:https://blog.csdn.net/cxy_chen/article/detail ...
- linux系统调用记录模块实验报告,华科操作系统实验报告(DOC)
华 中 科 技 大 学 课 程 设 计 报 告 课 程 实 验 报 告 课程名称: 操作系统课程设计 专业班级: 学 号: 姓 名: 指导教师: 报告日期: 计算机科学与技术学院 华 中 科 技 大 ...
- 检索上Linux操作系统课程的教师名,Linux操作系统课程设计.docx
课 程 设 计 报 告 课程名称 Linux操作系统课程设计 指导教师 起止日期 2016-03-21 至 2016-06-13 学 院 信息与通信工程学院 专 业 电子信息工程 学生姓名 班级/学号 ...
- linux课程设计死锁避免,linux操作系统课程设计—车辆死锁.doc
linux操作系统课程设计-车辆死锁.doc 键入文字"操作系统原理"课程设计BX090709吴沛儒操作系统原理课程设计报告姓名吴沛儒班级BX0907学号9指导老师胡静二〇一一年十 ...
- Linux并发程序课程设计报告,网络操作系统课程设计--进程机制与并发程序设计-linux下生产者与消费者的问题实现.doc...
网 络 操 作 系 统 课 程 设 计 网络操作系统课程设计 设计内容:进程机制与并发程序设计inux下生产者与消费者的问题实现进程机制与并发程序设计inux下生产者与消费者的问题实现 (1)掌握基本 ...
- alin的学习之路:嵌入式课程设计总结(基于Linux的Qt版MP3播放器)
嵌入式课程设计总结(基于Linux的Qt版MP3播放器) 废话不多写直接上图上代码,其中有很多不规范的地方,希望大佬们指正. 1.课设题目 设计一个MP3播放器,要求:使用Linux下的madplay ...
- linux课程设计题目主存空间的分配与回收,可变分区分配与回收,哈尔滨理工大学操作系统课程设计报告.doc-资源下载在线文库www.lddoc.cn...
可变分区分配与回收,哈尔滨理工大学 操作系统课程设计报告.doc 哈 尔 滨 理 工 大 学 课 程 设 计 ( 操 作 系 统 ) 题 目 可变分区分配与回收 (首次适应算法) 班 级 计算机科学与 ...
- 华科计算机课程设计,华中科大操作系统课程设计报告(附源码).doc
华中科技大学计算机学院 操作系统课程设计报告 班级: 学号: 姓名:彭博 时间:2010年3月 设计内容一:熟悉和理解Linux编程环境 编写一个C程序,实现文件拷贝功能. 2)编写一个C程序,使用下 ...
最新文章
- php7安装redis6扩展
- 北大图灵班本科生获STOC最佳论文奖!这个对标清华姚班的人才计划,正在频频交出答卷...
- 传感器为什么在低量程偏差大_传感器复习
- 洛谷P4383 林克卡特树
- 【Samba】安装与配置
- 浅谈socket网络编程函数参数(一)
- fluke196c系统语言,原装二手福禄克Fluke196C 电工仪表
- oracle path函数,自定义类似 sys_connect_by_path 功能的函数
- linux常用查看磁盘空间大小的命令
- 全国最新省市县联动mysql_全国省市县区三级联动数据库mysql3500条数据-html资源网...
- CSDN x BSV|区块链工程师能力初级认证正式启动
- 圆锥形怎么画_如何画圆锥体的展开图?
- scratch编程小游戏——黄金矿工
- 实用计算机基础,计算机基础知识考题5[实用].pdf
- linux服务器断电后系统报错,Linux服务器开机启动报错.docx
- linux c alarm系统调用入门
- java手机验证码登陆_在Web项目中手机短信验证码实现的全过程记录
- oracle怎么查看表的唯一约束,查询(看)表的主键、外键、唯一性约束和索引
- canvas-绘制图片
- 计算机绘图cad实训报告,AUTOCAD实训报告.doc