1. 概述 国外黑客通过研究苹果更新的补丁发现了一个史诗级的漏洞,该漏洞存在于从A5到A11的大部分iPhone、iPad等苹果设备中。这些设备的BootROM在设备DFU模式时处理USB数据流程方面...
SylixOS 多核SMP BSP开发(二十)
多核唤醒简介 在开始多核BSP开发之前,我们需要思考两个问题:第一个是各个cpu核不管是主核还是从核是如何开始执行指令的,也就是如何唤醒它们让其开始工作;第二个问题是各个cpu核怎么知道它要执行的第一...
RISCV基础开发(十一)
QEMU裸机开发之M模式定时器中断 定时器相关的寄存器也是定义在clint中的,再来看下寄存器映射,如下所示。 同样的我们只关心第一个核的寄存器,和定时器相关的总共就两个寄存器,“mtime”寄存器相...
SimpleOS开发(8)改进进程调度
1. 系统接口名称修改 为了方便使用系统接口以及辨识系统接口,需要将系统接口的命名进行规范。这里的系统接口是指通用功能接口,比如开关中断、申请释放内存等等,simpleos采用简单的"os_"前缀来命...
Xv6内核分析(十)
spinlock分析 1. initlock spinlock分析spinlock: 主要是初始化锁的状态为0,并记录锁的名字用于调试分析。 2. pushcli和popcli 在xv6中,用spin...
浅谈编译(四)
OpenCL 1. OpenCL简介 OpenCL 是由 Khronos Group 针对异构计算设备(heterogeneous device)进行并行运算所设计的标准 API 以及程式语言。 Op...
SylixOS PCIe设备驱动开发(十五)
SylixOS PCIe设备驱动中断处理 现在的PCIe设备要想正常工作基本都会用到中断功能,在SylixOS下要想使用设备中断功能,必须注册设备的中断处理函数并使能中断。而PCIe的中断又分为INT...
SylixOS 应用移植指导——以Redis5.0.3为例(三)
二、创建IDE工程 总结一下本阶段的工作: 已知: Redis源码 Redis编译流程 需要编译的依赖库 需要编译出的目标文件 目标: 在SylixOS IDE下构建工程 配置与Linux下一致的编译...
全志D1开发(二)添加串口驱动
1. 基础功能修改 1.1 创建base,导入BSP工程 根据全志D1的架构说明,创建base时选择如下: 创建完成后base中的libsylixos版本比较低,内核中的riscv架构是不支持全志D1...
Liteos-a内核分析(二)
系统初始化 这里只粗略的分析下main函数做了哪些事情,目的是了解内核初始化的基本流程。main函数在kernel\liteos_a\platform\main.c中。 1. 设置系统主任务 在lit...
VxWorks内核分析三(转)
原文:http://www.prtos.org/vxworks-wind-scheduler/。 本篇文章分析Wind内核调度器的设计原理以及其工作流程,设计支持多任务RTOS的关键是设计调度器,Wi...
Wayland窗口系统(一)
1. 窗口系统 1.1 窗口系统简介 任何窗口系统的主要组件通常称为显示服务器(Display Server),也可以称作窗口服务器(Window Server)或合成器(Compositor)。在窗...