添加内核模块
//注意自己的系统的版本,我用的14版的ubuntu
kello.c

//-----------------------------------------------------------------
//kello.c.:演示了一个最简单的内核模块框架:只有初始化和撤销函数。
// 注意 printk函数
// 按如下步骤操作:
//  编译命令: $ make kello 或者 $ make
//  安装命令: $ sudo insmod kello.ko
//  内核日志信息显示命令:  $ dmesg
//  撤销命令: $ sudo rmmod kello
//programmer: sdustos
//-----------------------------------------------------------------#include <linux/module.h>      // for printk()int kello_init( void )
{printk( "\n   Hello, students from SDUST! This is in kernel space! \n" );return  0;
}void kello_exit( void )
{printk( "\n   Goodbye now... students from SDUST! \n" ); }MODULE_AUTHOR("SDUSTOS <fangs99@126.com>");
MODULE_LICENSE("GPL");
module_init(kello_init);
module_exit(kello_exit);

Makefile


ifneq   ($(KERNELRELEASE),)
obj-m   := kello.o else
KDIR    := /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
default:    $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules rm -r -f .tmp_versions *.mod.c .*.cmd *.o *.symvers endif

操作系统实验一 添加内核模块相关推荐

  1. 操作系统实验:添加系统调用修改主机名(hostname)

    实验环境配置 Ubuntu18.04.5,Linux内核:5.9.6,VMware Workstation Pro,内存:4G,CPU:4x1=4核,外存:128G. ubuntu安装.内核源码下载及 ...

  2. 操作系统实验:Linux内核模块编程

    实验内容 (1)设计一个模块,要求列出系统中所有内核线程的程序名.PID.进程状态.进程优先级.父进程的PID. (2)设计一个带参数的模块,其参数为某个进程的PID号,模块的功能是列出该进程的家族信 ...

  3. 杭电操作系统实验二 --- Linux 内核模块编程(arm架构华为云)

    一.题目介绍 掌握Linux 内核模块的基本概念 ·阅读教材7.3.2节Linux内核模块简介 ,网上查找资料,了解Linux内核模块的基本概念. ·阅读教材7.3.3内核模块编程基础 ,网上查找资料 ...

  4. 杭电操作系统实验二---linux内核模块编译(完整实验报告)

    一 题目介绍 题目内容: (1)当模块被载入内核时会向系统日志文件中写入"hello,world":当被卸载时,会向系统写入"goodbye". (2)设计一个 ...

  5. 实验一 添加最简单的Linux内核模块kello

    实验一 添加最简单的Linux内核模块kello 目录 实验一 添加最简单的Linux内核模块kello 实验环境 一.实验目的 二.实验内容 三.实验步骤 四.实验总结 实验环境 操作系统版本:ub ...

  6. 西电软工操作系统实验:编译Ubuntu18.04新内核并添加系统调用(含代码以及详细分析)

    西电软工操作系统实验一:编译Linux内核 目录 (一)前言 (二)实验内容 (三)实验环境 (四)实验过程 4.1安装虚拟机 4.2虚拟机换源 4.3 添加系统调用内核 4.4 下载编译所需的软件依 ...

  7. HDU操作系统 实验1.2·1.3——设计和添加Linux系统调用

    实验介绍 上篇文章已经介绍了Linux内核的编译与安装,我们已经掌握了Linux系统内核的编译和启用.接下来,我们将学习掌握如何添加Linux的系统调用,学习掌握测试Linux系统调用. 什么是系统调 ...

  8. 杭电操作系统实验一----Linux内核编译及添加系统调用(完整实验报告)

    一 题目介绍 Linux是开源操作系统.在系统中根据需要添加新的系统调用是修改内核的一种常用手段,通过本次实验,我们可以理解Linux系统处理系统调用的流程以及增加系统调用的方法.Linux系统提供了 ...

  9. 操作系统实验以及课程设计

    趁没人,当个小白来偷偷摸摸补一下操作系统的课程,羞 反正操作系统断断续续的看了一点了,主要是偏linux的.FreeBSD的实现,操作系统概念,30天自制操作系统等.Linux的话命令用的还行,没有很 ...

最新文章

  1. python爬虫教程视频-python爬虫(入门教程、视频教程)
  2. MATLAB基本操作(一):MATLAB中变量的文件存储
  3. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第10篇]RSA和强RSA问题有什么区别
  4. sql虚拟服务器安装,安装SQL Server 2012服务器
  5. Bailian3251 最少费用【递归】
  6. 类__slots__与__dict__用法
  7. Flexbox 布局教程
  8. 10 分钟上手 Vim 编辑器,常用命令大盘点!
  9. 预测算法模型(灰色预测和BP神经网络)
  10. HTML5中thead标签,【HTML5】table标签中thead、tbody、tfoot的作用
  11. 某课的flask视频 速取
  12. 我和知乎零成本卖货百万的创业者聊了聊
  13. Redis实战篇一 (短信登录)
  14. TM1637数码管显示 HAL库
  15. int,long,long long等类型的范围
  16. c51中断优先级c语言,基于proteus的51单片机开发实例(14)中断嵌套和中断优先级...
  17. 关于wifi打印服务器方案和USB共享打印机模块工作原理
  18. iOS简易蓝牙对战五子棋游戏设计思路之二——核心棋盘逻辑与胜负判定算法
  19. 短信发送流程:系统短信(SMS)发送流程
  20. 计算机应用目录怎么生成,自动生成目录怎么弄-excel超链接应用:快速生成目录的几个方法-下...

热门文章

  1. 如何压缩GIF/GIF压缩软件教程方法全面解析
  2. Scala进阶_函数式编程(过滤丶排序丶分组丶聚合)
  3. 仓库管理系统的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  4. 1450F The Struggling Contestant(贪心+思维)
  5. 九宫格构图学习[1]
  6. 如何快速不借用转换工具将FLV格式视频转换成MP4
  7. YOLOV5源码解读(数据集加载和增强)
  8. 【稳定性day14】支付宝技术风险体系TRaaS——把风险去服务化、产品化
  9. SharePoint 2010 电子书下载网站推荐
  10. invalid byte 1 of 1-byte UTF-8 sequence