- 博客(35)
- 收藏
- 关注
原创 进程间通信以及线程的同步互斥机制
(例如,父子进程)。无名管道是在内存中开辟的一段缓冲区,一端进程写入数据,另一端进程读取数据。1.只能用于亲缘间进程的通信2.无名管道数据半双工的通信的方式3.无名管道的大小是64K4.无名管道不能够使用lseek函数(调用会出错 返回 -1)如果读端不存写管道,管道破裂(SIGPIPE)如果写端存在读管道:有多少读多少,没有数据的时候阻塞等待如果写端不存在读管道:有多少读多少,没有数据的时候立即返回(非阻塞)
2024-06-18 19:43:33
851
原创 Linux驱动面试题
当一个进程获取到自旋锁之后,如果此时有另外一个进程也想获取这把锁,此时后一个进程处于自旋状态(原地打转的状态)。自旋锁又叫做忙等锁。当一个进程获取到信号量之后,如果此时有另外一个进程也想获取这个信号量,此时后一个进程处于休眠状态。休眠状态是不需要消耗CPU资源。当一个进程获取到互斥体之后,如果此时有另外一个进程也想获取这个互斥体,此时后一个进程处于休眠状态。互斥体又叫做排它锁。原子操作名字就是根据它的特性得到的,在使用原子操作的时候如果执行了原子操作。
2024-06-17 21:37:19
1541
原创 驱动面试题
在Linux内核中,内部编译和外部编译的概念与一般编译器中的概念类似,但有一些特殊的区别。内部编译(也称为静态编译)是指将内核模块编译进内核中,生成一个包含所有必要信息的内核镜像的过程。在内部编译的过程中,编译器会将内核模块的代码和符号链接到内核中,生成一个包含所有内核和模块的可执行文件。这个可执行文件可以直接运行在硬件上,而不需要依赖于外部模块。外部编译(也称为动态编译)是指将内核模块编译成一个单独的目标文件,然后在运行时通过内核的模块加载器加载到内核中。
2024-06-16 14:55:04
1534
原创 ARM架构面试题
其中除了用户模式以外,其余所有6种模式称之为非用户模式(特权模式,权限比用户模式高)ARM M系列CPU通常有2种工作模式,分别是:特权模式(Privileged Mode):用于操作系统内核执行特权指令和管理系统资源。用户模式(User Mode):用于执行应用程序,具有最低的权限级别。需要注意的是,具体的ARM A系列CPU和M系列CPU支持的工作模式可能会略有不同,但一般都会包含上述的基本工作模式。
2024-06-15 19:56:15
1727
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人