- 博客(46)
- 收藏
- 关注
原创 驱动开发DAY6
IO多路复用可以在一个进程中同时监听多个硬件数据,其将用户空间中监听到的事件文件描述符添加到时间集合中,调用函数进行判断集合中文件描述符对应的硬件数据是否准备就绪,如果没有一个事件发生,将进程切换到休眠状态,当有一个或者多个硬件数据准备好了,将休眠的进程唤醒,对准备好的硬件数据进行读写。当应用程序中读取硬件数据时,在硬件数据没有准备好时,进程会阻塞在read()函数位置,直到硬件数据就绪,程序继续向下执行,进程阻塞等待数据时处于休眠状态。将需要监视的文件描述符添加到集合中,使用FD_SET宏定义实现。
2023-05-23 20:07:32
502
原创 分析vmlinux编译过程
3.找到vmlinux-deps的三个依赖,其中export KBUILD_LDS是链接文件,KBUILD_VMLINUX_LIBS := $(filter-out %/, $(libs-y)) 跟库有关,所以我们可以重点关注KBUILD_VMLINUX_OBJS。执行命令:make -f ./scripts/Makefile.build obj=arch/arm/boot/compressed arch/arm/boot/compressed/vmlinux。
2023-05-10 20:59:19
1273
原创 ARM day2 作业
观察以下格式,写到那块地址空间,并且r0寄存器中值的变化。用汇编for循环完成1到100的累加和。16进制转换10进制后。
2023-04-18 19:13:43
124
原创 QTday2完善了登录界面
话框,文本内容“账号密码不匹配,是否重新登录”,给定两个按钮ok和cancel,点击ok后,会清除密码框中的内容,继续进行登录;钮,yes|no,点击yes,则直接关闭整个登录界面,如果点击no则进行进行登录。如果账号和密码匹配,则弹出信息对话框,给出提示信息为“登录成功",给出。点击登录按钮后,判断账号和密码是否一致,如果匹配失败,则弹出错误对。点击取消按钮后,弹出问题对话框,询问是否确定要退出登录,给出两个按。一个按钮ok,点击ok后,关闭整个登录界面,跳转到其他界面。
2023-04-06 19:11:22
108
1
原创 QTday1登录器
5、点击登录后,将界面上的用户名和“admin”比较,密码和“123456”比较,如果匹配成功,则输出登录成功,如果匹配失败,则输出“账户密码不匹配”,并清空密码框(clear)1、给窗体改变名称并设置窗口图标、尺寸固定。4、账户用明文模式,密码用密文模式。6、点击取消后,关闭整个界面。3、用户名和密码使用图片完成。
2023-04-05 21:12:54
92
原创 C++ DAY6继承
由这两个类共同派生出学生干部类,私有成员属性(职位),成员方法(无参构造、有参构造、析构函数、show函数),使用学生干部类实例化一个对象,然后调用其show函数进行测试。定义一个学生类(Student):私有成员属性(姓名、年龄、分数)、成员方法(无参构造、有参构造、析构函数、show函数)。再定义一个党员类(Party):私有成员属性(党组织活动,组织),成员方法(无参构造、有参构造、析构函数、show函数)。
2023-03-30 18:49:43
51
原创 C++day2 类
封装一个班级类,包含成员属性:学生分数数组,最大容量20,成员属性len,记录所使用数组的元素个数成员方法:设置班级人数: vid setLen(int len);输入班级学生分数:void input();输出班级成绩: void output();对成绩进行排序: void sort();要求成员属性为私有权限,成员方法为共有成员。
2023-03-27 19:11:28
56
原创 网络编程基础DAY2:TCP和UDP
创建套接字——>必须绑定bind——>将套接字设为被动监听状态——>获取连接成功后的套接字accept——>recv接收客户端的信息——>send发送信息给客户端——>close关闭套接字。socket创建套接字——>非必须绑定客户端的ip和端口——>connect连接服务器——>send发送信息给服务器——>recv接收服务器的信息——>close关闭套接字。任务3:完成RobArm与自己写的客户端通信,通过wasd按键控制。启动ws控制红色手臂,ad控制蓝色手臂。任务1:搭建TCP客户端。
2023-03-13 20:43:00
130
原创 IO day8:进程间通信机制(1)
d.在上述基础上实现AB对话,要求AB进程能够随时收发。c.重复1.2步骤,当收到quit后,要结束AB进程。a.A进程先发送一句话给B进程,B进程接收后打印。b.B进程再回复一句话给A进程,A进程接收后打印。1.要求实现AB进程对话。
2023-03-06 19:02:07
115
原创 IO day7:同步互斥
用条件变量实现,有编号为ABC的三个线程,线程内分别打印自己的线程编号,要求打印的顺序为ABC.1.将一个文件中的数据打印到终端上,类似cat一个文件。要求用信号量的方式实现,打印一次倒置一次。b.B线程将A线程读取到的数据打印到终端上。c.文件打印完毕后,结束进程。a.A线程读取文件中的数据。1:使用条件变量和互斥锁。a.提示:多个条件变量。
2023-03-03 11:28:41
217
原创 IO day6:线程
b.B线程循环倒置buf字符串,即buf种本来存储1234567,倒置后buf仲存储7654321.不打印!c.倒置不允许使用辅助数组。A线程拷贝前半部分,B线程拷贝后半部分,不允许使用sleep函数。d.要求A线程打印出来的结果只能为1234567或者7654321e.不允许使用sleep函数。2.要求定义一个全局变量char buf="1234567",创建两个线程,不考虑退出条件。1.标准lO函数时候讲解的时钟代码,要求输入quit字符串后,结束进程。a.A线程循环打印buf字符串,
2023-02-28 19:30:37
45
原创 IO:DAY1 标准IO函数
c.空格前面是账户,空格后面是密码,一行一个账户、密码。2、计算一个文件的行数,大小,并封装成一个函数。d.若账户存在,密码不匹配:则提示密码错误。e.账户密码均存在:则显示登录成功。c.若账户不存在:则提示账户不存在。a.从终端获取一个账户名和密码。加一个注册功能,要求不能重复。b.判断是否能够登录成功。
2023-02-21 20:34:51
57
原创 day4 shell
2. 输入文件名,判断是否为普通文件,如果为普通文件,判断是否为脚本文件,如果为脚本文件,判 断是否有可执行权限,如果没有可执行权限,添加可执行权限。1. 打印九九乘法表,printf "%d * %d = %d\t" i j $((i*j))3. 输入一个无符号的八位数,输出他的二进制。
2023-02-16 21:02:34
47
原创 c高级day3:shell中的数组
2. 输入学生成绩,输出成绩等级,[100-90]A,[90-80]B,[80-70]C,[70-60]D,[60-0]E,小于0,大于100输 入不合理。1、使用数组统计用户家目录下文件的个数。
2023-02-15 18:54:43
51
原创 ubuntu如何配置桥接网络
定义为A的第i行和第j列除了a[i][j]之外所有元素(共 n+m-2个)的乘积,即x[i][j]=a[i][1]a[i][2]... a[n][j-1]..a[i][m]a[1][j]a[i+1][j]...a[n][j]:现输入非负整形的矩阵 A[n,m],求MAX(x[i][j])即所有的x[i][j]们中的最大值。3、打开设置------>网络-------->有线连接-------->IPV4。1、首先VMware菜单栏虚拟机----->设置----->网络适配器。输出描述:一行输出答案。
2023-02-13 20:45:21
2043
原创 顺序表的通讯管理
功能4:对年龄按升序排序【快速排序】,并使用折半查找,判断是否存在key年龄的学生。对与一个学生来说,存储信息【姓名、年龄、分数,手机号】功能1:在堆区申请空间,通过尾插添加学生信息。功能3:对学生姓名排序【直接插入排序】功能2:输入姓名,删除该学生信息。
2023-02-09 20:14:37
63
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人