![](https://img-blog.csdnimg.cn/20190927151026427.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
动手学习QNX
文章平均质量分 82
主要通过使用QEMU来模拟一个X86_64的硬件架构虚拟机,在此虚拟机上部署QNX系统,通过在这个系统上亲自动手操作来学习QNX系统相关知识,以此来加深对QNX的理解......
言北万
这个作者很懒,什么都没留下…
展开
-
04 进程线程相关工具
设计优良的系统,用户态使用率高,内核态CPU使用率低。top 工具是一个动态显示进程信息的工具,它可以实时显示进程的运行状态,包括进程的CPU占用率、内存占用率、进程的PID、进程的名称等信息。pidin是一个非常强大的工具,它可以查看进程的详细信息,包括进程的状态,进程的线程,进程的内存映射,进程的文件描述符,运行进程的环境变量等。ps(process status)是POSIX标准中定义的一个工具,它可以显示系统中的进程信息,包括进程的PID,进程的状态,进程的名称、参数等,可以参考。原创 2023-10-30 00:56:02 · 233 阅读 · 1 评论 -
03 进程与线程
一旦它消耗了它的时间片,这个线程就会被放到就绪队列的队尾,而处于相同优先级的下一个就绪线程就会得到CPU执行时间。程序是存储在存储介质上的一些指令和数据,而进程是一个正在执行的程序的实例,是一个动态的概念,它的状态随着程序指令的执行而不断变化。进程管理器有一组随时准备运行的调度优先级为0的特殊的线程,即空闲线程(每个可用的CPU核心一个)。尽管中断不能像线程一样被调度,但是可以将他们看成是优先级最高的线程,因为他们可以抢占任何正在运行的线程。中断处理程序的优先级高于任何线程,但它们的调度方式与线程不同。原创 2023-10-20 08:20:01 · 154 阅读 · 1 评论 -
附录 A
在安装完QEMU后,常常是缺少qemu-arm之类的工具的,我们可以使用安装完成之后,可以发现在/usr/bin目录下有一系列的的应用。每一个应用针对一种特定的硬件平台。接下来已我常用的aarch64平台来进行示范。将源码编译成arm64的二进制程序,使用file工具读取二进制文件的属性,确定其为在Ubuntu下直接运行aarch64其中-L参数指定了适用于aarch64架构程序的库文件路径。原创 2023-09-26 23:12:38 · 91 阅读 · 2 评论 -
02 QEMU
是一个通用开源的计算机模拟器和虚拟机软件,能够支持在Linux、MacOS、Windows等操作系统上运行,仿真出不同硬件架构的虚拟机。QEMU常以两种不同的模拟方式使用:在用户模式仿真(user mode emulate)下,它可以在一种CPU架构上执行为另外一种CPU架构编译的程序。例如在x86_64架构的通用计算机上交叉编译出一个ARM架构的程序,即不需将ARM程序部署到真实的目标板,而是直接在当前的计算机上使用qemu-arm执行ARM架构下的程序。这种情况下,CPU总是被模拟的。原创 2023-09-26 08:45:16 · 243 阅读 · 0 评论 -
01 QNX概述
QNX是一个类unix实时操作系统,遵循POSIX 1003.1标准以及POSIX实时标准,主要针对嵌入式系统市场。它最初是在1980年代早期由加拿大公司量子软件系统(Quantum Software Systems)开发的,后来更名为QNX软件系统(QNX Software Systems),被广泛应用于包括汽车,机器人,医疗设备,铁路,重型机械,工业控制,航空军事等领域。QNX的内核是一个可移植的内核,这使得QNX可以很好的支持多种CPU架构,例如x86,ARM等。原创 2023-09-22 03:45:00 · 105 阅读 · 2 评论