
CPU及处理器
文章平均质量分 73
cy413026
这个作者很懒,什么都没留下…
展开
-
ArmV8架构
上面只是给了一个比较好的参考文档。原创 2024-02-28 17:46:47 · 692 阅读 · 0 评论 -
操作系统和内核有什么区别?
内核是操作系统的核心。内核是操作系统执行的第一道程序,被率先加载到内存中开始系统行为。内核始终保持在主内存中直到系统被关闭。内核将用户输入的命令转换成计算机硬件能理解的机器语言。内核是系统应用软件和硬件的桥梁。内核直接与硬件联系,并告之它由应用软件发起的请求。操作系统不能脱离内核工作,内核是系统正常运行最重要的程序。内核的主要职责是:进程管理、磁盘管理、任务调度、内存管理文件管理为了更有效地搜索和使用文件,内核使用文件系统(file system)转载 2024-02-27 19:42:48 · 973 阅读 · 0 评论 -
内核Kernel/操作系统OS/进程和程序
仅仅是操作系统的一部分,是真正与硬件交互的那部分软件,与硬件交互包括读写硬盘、读写网盘、读写内存以及任何连接到系统中的硬件。除了与硬件交互外,内核还负责分配资源,分配什么资源呢?:是一种管理计算机软硬件资源的系统软件,而kernel是os最基本的部分,也就是说,两者是包含关系。os是接口,内核是一个操作系统的核心。程序:就是可以在处理器硬件【包括cpu/gpu/mcu】上运行。所以无论是内核、操作系统还是进程都是程序的运行。最近在涉及到软硬件交互时,分不清内核和进程。、IO等等,这些都是资源。原创 2024-02-27 18:02:17 · 525 阅读 · 0 评论 -
GIC与中断处理
下文通过几个疑问 给出了硬件和软件是怎么交互并处理中断的。原创 2024-02-27 17:46:25 · 1027 阅读 · 0 评论 -
cache读写策略(write-back/through)与分配策略(allocate)
内存的数据被加载到Cache后,在某个时刻其要被写回内存,写内存有如下5种策略:写通(write-through)、写回(write-back)、写一次(write-once)、WC(write-combining)和UC(uncacheable)。图4。原创 2024-02-01 19:26:06 · 3054 阅读 · 0 评论 -
iCache和dCache的一致性及指令改写
iCache的作用是缓存指令,dCache是缓存数据。为什么我们需要区分数据和指令呢?原因之一是出于性能的考量。CPU在执行程序时,可以同时获取指令和数据,做到硬件上的并行,提升性能。另外,指令和数据有很大的不同。例如,指令一般不会被修改,所以iCache在硬件设计上是可以是只读的,这在一定程度上降低硬件设计的成本。所以硬件设计上,系统中一般存在L1 dCache和L1 iCache,L2 Cache和L3 Cache。转载 2024-01-31 19:16:04 · 476 阅读 · 0 评论 -
ARM的cache和mem零散记录(属性)
4.2 armV8的cache line是64Byte,但是core实际使用数据和指令的最小单位是byte,所以cache line的修改可能只有一小部分。6.是不是先通知其他core数据或指令被修改了,然后过一段时间数据才能更新?5.由于某个core改写了指令或者数据,就导致cache的一致性问题,怎么解决?icache和dcache的一致性是什么?类型和属性都有什么含义 什么情况下使用,也就是每个属性是为了解决什么问题?和指令的分支预测有什么关系?7.cache的歧义和别名是什么东西?原创 2024-01-31 17:05:57 · 1745 阅读 · 0 评论 -
Armv8架构虚拟化介绍
这里我们将介绍一些基础的Hypervisor和虚拟化的理论知识。如果你已经有一定的基础或是已经熟悉了这些概念,可以跳过这部分内容。我们用Hypervisor这个词来定义一种负责创建,管理以及调度虚拟机(Virtual Machines, VMs)的软件。Stage 2 转换允许Hypervisor控制虚拟机的内存视图。具体来说,其可以控制虚拟机是否可以访问特定的某一块物理内存,以及该内存块出现在虚拟机内存空间的位置。这种能力对于虚拟机的隔离和沙箱功能来说至关重要。转载 2024-01-29 19:19:07 · 848 阅读 · 0 评论 -
coresight(一)coresight简介
下文摘自卢俊的系列coresight文章第一篇。转载 2024-01-25 16:20:09 · 489 阅读 · 0 评论 -
【深入理解计算机系统】程序是如何运行的
设计良好的软件用过程作为抽象机制,隐藏某个行为的具体实现,同时又提供清晰简洁的接口定义,说明计算的是哪些值,过程会对程序状态产生什么样的影响。后一种方式在现代计算机中能提高程序运行的效率,代码中的指令都是按照在程序中出现的次序,顺序执行的,使用jump指令可以改变一组机器代码指令的执行顺序,从而实现条件操作。汇编代码是机器代码的文本表示,给出程序中的每一条指令。除了操作系统利用异常来支持进程上下文切换的异常控制流形式,另外一种更高层次的软件形式的异常,成为Linux信号,它运行进程和内核中断其他进程。转载 2024-01-18 20:04:21 · 1746 阅读 · 0 评论 -
ARM_CORE 梳理--ARM系列
ARM分为三个不同的系列:1、Cortex-A:面向尖端的基于虚拟内存的操作系统和用户应用2、Cortex-R:针对实时系统,一般用于车规级芯片3、Cortex-M:微控制器,替代对应的51单片机Cortex-ACortex-RCortex-M运用场景高性能高实时性低功耗/低面积操作系统RTOSRTOS指令级32/64b ARM32b ARM32b Thumb中断GICGIC(固定延时的中断响应)NVICMemory多级cacheTCM安全等级ASIL-B。转载 2024-01-18 19:58:35 · 1235 阅读 · 0 评论 -
ARM WFI和WFE指令
蜗蜗很早以前就知道有WFI和WFE这两个指令存在,但一直似懂非懂。最近准备研究CPU idle framework,由于WFI是让CPU进入idle状态的一种方法,就下决心把它们弄清楚。WFI(Wait for interrupt)和WFE(Wait for event)是两个让ARM核进入low-power standby模式的指令,由ARM architecture定义,由ARM core实现。听着挺简单,但怎么会有两个指令?它们的区别是什么?使用场景是什么?转载 2024-01-18 19:36:35 · 281 阅读 · 0 评论 -
ARM的一些基础知识
P-CHANNEL和Q-CHANNEL。原创 2024-01-18 19:34:57 · 975 阅读 · 0 评论