logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

linux中驱动异步通知应用程序的方法

<br />驱动程序运行在内核空间中,应用程序运行在用户空间中,两者是不能直接通信的。<br />但在实际应用中,在设备已经准备好的时候,我们希望通知用户程序设备已经ok,<br />用户程序可以读取了,这样应用程序就不需要一直查询该设备的状态,从而节约了资源,这就是异步通知。<br />好,那下一个问题就来了,这个过程如何实现呢?简单,两方面的工作。<br />一 驱动方面:<br />1. 在

#linux#数据结构
linux 0号进程 1号进程 区别(转)

       系统允许一个进程创建新进程,新进程即为子进程,子进程还可以创建新的子进程,形成进程树结构模型。整个linux系统的所有进程也是一个树形结构。树根是系统自动构造的,即在内核态下执行的0号进程,它是所有进程的祖先。由0号进程创建1号进程(内核态),1号负责执行内核的部分初始化工作及进行系统配置,并创建若干个用于高速缓存和虚拟主存管理的内核线程。随后,1号进程调用execve()运行可执行

#linux
qt 中的容器遍历

上一节我们大致了解了有关存储容器的相关内容。对于所有的容器,最常用的操作就是遍历。本章我们将详细了解有关遍历器的内容。尽管这个问题不是本章需要考虑的,但是我们还是需要来解释下,为什么要有遍历器。没有遍历器时,如果我们需要向外界提供一个列表,我们通常会将其返回:1234QListi

linux中线程的切换

系统中有线程A,B在运行:(1) 假设A运行在内核(2) 时钟中断发生,在中断例程中保存所有的通用寄存器以及EFLAG,CS和EIP到A的内核的堆栈中。发现A的时间片用完了,进行调度。更新TSS以及ESP(假设这里是线程B的)(3) B的时间片用完后,类似(2)保存B的现场。切换到A的系统堆栈中,执行一系列的push,恢复A以前的各个通用寄存器,以及eip等。

#linux
Cannot Write to RAM for Flash Algorithms ! 的解决方法

出现错误的情况:和解决方法:ST32 有两个调试端口:JTAG和SW. 选择 SW 解决之:

到底了