SylixOSIP7

Apple史诗级DFU漏洞分析

1. 概述 国外黑客通过研究苹果更新的补丁发现了一个史诗级的漏洞,该漏洞存在于从A5到A11的大部分iPhone、iPad等苹果设备中。这些设备的BootROM在设备DFU模式时处理USB数据流程方面...
阅读全文
SylixOS

(五)SylixOS同步互斥之二进制信号量

1. 基本作用 上一章节我们介绍了互斥锁,用于“共享资源”的互斥访问,在驱动开发中我们有时候需要等待某种资源准备好之后才能继续执行代码,这就需要使用同步机制来实现这个目的。比如某个应用想要读取AD转换...
阅读全文
SylixOS

浅谈编译(四)

OpenCL 1. OpenCL简介 OpenCL 是由 Khronos Group 针对异构计算设备(heterogeneous device)进行并行运算所设计的标准 API 以及程式语言。 Op...
阅读全文
Xv6

Xv6内核分析(十三)

buffer cache分析 1. buffer cache概述 Buffer cache是一个双向循环链表,用于缓存磁盘上的数据以提高性能。使用bread从磁盘上读取数据,使用bwrite将修改的数...
阅读全文
SylixOS

SylixOS之BSD红黑树

1. 设计数据结构 使用红黑树的主要目的是为了加速查找数据,我们先来看一看使用链表而不是红黑树方式组织数据时该如何设计数据结构。 1.1 平常的链表方式 我们能想到一种很简单的数据结构: struct...
阅读全文
SimpleOS

SimpleOS开发(6)添加VMM支持

0. 启动代码修复 之前在entry.S处理时遗漏了两个功能:BSS段清零和进入Trap时原有栈地址保存。BSS段清零工作比较简单,就是将kernel.ld链接脚本中定义的BSS段起始和结尾地址之间循...
阅读全文
VxWorks

VxWorks内核分析四(转)

原文:http://www.prtos.org/wind-interrupt/。 接下来我们讨论一下Wind内核的中断处理模块,中断是操作系统内核设计中非常重要的部分。由于周期性和非周期性任务的按时执...
阅读全文
Xv6

Xv6内核分析(二)

启动Xv6 1. Xv6入口代码 内核的入口代码在entry.S中,Xv6的内核是支持用grub引导的,grub引导的知识见此博客:https://blog.csdn.net/xiaolanmysel...
阅读全文
SylixOS

(七)SylixOS同步互斥之原子操作

1. 基本作用 在各类操作系统提供的接口中,除了我们之前学习的互斥锁和信号量类接口用于实现互斥或者同步的目的外,也基本都会提供一类原子操作的接口,一般接口都带有atomic_xxx字样。原子操作类接口...
阅读全文