- 博客(54)
- 收藏
- 关注
原创 Linux字符设备驱动的内部实现
VFS虚拟文件系统是Linux系统中的一个软件抽象层,为用户空间提供了统一的read和write接口.我们在用户空间的代码使用open函数打开设备文件,VFS虚拟文件系统会根据open函数传递过来的路径找到该文件的inode结构体,inode结构体里面储存着文件的相关信息,如权限,组,大小,创建日期等,其中有i_rdev和i_cdev两个成员.i_rdev是该设备的设备号,i_cdev是该设备的cdev结构体指针,设备号是驱动存在内核中的标识,关联了设备驱动和设备文件.
2023-06-15 19:41:51 109
原创 ARM综合作业
1.当按下KEY1按键之后,LED1灯状态取反,并且串口工具打印一句话key1 down2.当按下KEY2按键之后,LED2灯状态取反,并且串口工具打印一句话key2 down3.当光电开关中断触发时,LED3灯状态取反,并且串口工具打印一句话guang dian kai guan chu fa。
2023-05-30 20:38:42 52
原创 C高级 day03
1、包含一段注释,列出您的姓名、脚本的名称和编写这个脚本的目的2、和当前用户说“hello 用户名”3、显示您的机器名 hostname4、显示上一级目录中的所有文件的列表5、显示变量PATH和HOME的值6、显示磁盘使用情况7、用id命令打印出您的组ID id -g8、跟用户说“Good bye”
2023-05-11 20:24:54 527
原创 C高级 day2
1.A[n,m]是一个n行m列的矩阵,a[i,j]表示A的第i行j列的元素,定义x[i,j]为A的第i行和第j列除了a[i,j]之外所以元素(共n+m-2个)的乘积,现输入非负整形矩阵A[n,m],求MAX(x[i,j]),即所有的x[i,j]中的最大值。这个表达式的意思是,先将数字 1 左移 5 位,得到一个只有第六个 bit 为 1 的数字,然后对这个数字取反,得到一个只有第六个 bit 为 0 的数字。2.有一个unsigned char类型的数据data,把他的第六个bit位置为1。
2023-05-10 20:51:37 231
原创 C高级 day1
初始工作路径不在家目录下,在不切换路径的情况下,在家目录下创建一个subdir目录,在subdir这个目录下,创建subdir1和subdir2,并且把/etc/passwd拷贝到subdir1中,把/etc/group文件拷贝到subdir2中,把subdir2,在家目录下重命名为dir2.
2023-05-09 18:44:58 251
原创 C++ day5
由这两个类共同派生出学生干部类,私有成员属性(职位)成员方法(无参构造、有参构造、析构函数、show函数),使用学生干部类实例化一个对象,然后调用其show函数进行测试。再定义一个党员类(Party):私有成员属性(党组织活动,组织),成员方法无参构造、有参构造、析构函数、show函数)定义个学生类(Student): 私有成员属性(姓名、年龄、分)成员方法(无参构造、有参构造、析构函数、show函数。
2023-04-23 19:44:07 228
原创 IO day9
要求如下1.A循环打印str;2.B循环倒置str;不能使用辅助数组;3.要求出现的结果没有乱序,只能出现 1234567 76543214.不允许使用sleep函数a.creturn -1;// 创建获取共享内存的shmidreturn -1;// 将共享内存映射到用户看空间使用shmatreturn -1;// 逆制printf("正在逆制字符串...\n");int i = 0;
2023-04-05 20:35:45 29
原创 IO day8
A进程先发送一句话给B进程,B进程接收后打印B进程再回复一句话给A进程,A进程接收后打印重复1.2步骤,当收到quit后,要结束AB进程msg1.c msg2.c 现象: main.c现象:
2023-04-04 19:46:35 26
原创 IO day6
1.A线程循环打印buf字符串2.B线程循环倒置bu字符串,即buf中本来存储1234567,倒置后buf中存储7654321.不打印!!3.倒置不允许使用辅助数组。4.要求A线程打印出来的结果只能为 1234567 或者 7654321 不许出现7634521 72345675.不允许使用sleep函数while (1)elsecontinue;int j = 0;i++;j--;else。
2023-03-31 14:18:22 42
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人