SylixOS注册PCIe控制器驱动 PCIe驱动主要分为两大类,PCIe控制器驱动和PCIe设备驱动。PCIe控制器驱动主要负责配置空间读写方法的实现、中断号获取和BAR地址自动配置功能,设备驱动根...
Apple史诗级DFU漏洞分析
1. 概述 国外黑客通过研究苹果更新的补丁发现了一个史诗级的漏洞,该漏洞存在于从A5到A11的大部分iPhone、iPad等苹果设备中。这些设备的BootROM在设备DFU模式时处理USB数据流程方面...
SylixOSIP7开源项目
1. iPhone7简介 iPhone 7是Apple(苹果公司)的第10代手机,北京时间2016年9月8日凌晨1点在美国旧金山比尔·格雷厄姆市政礼堂2016年苹果秋季新品发布会上发布。 2. Syl...
SylixOS块设备驱动开发(七)
虚拟块设备驱动源码 #define __SYLIXOS_KERNEL #include <SylixOS.h> #include <module.h> #include <...
SylixOS块设备驱动开发(六)
块设备和块缓冲配置 1. 块设备配置 这里对块配置中几个比较重要的成员做个说明: BLKD_pcName:这个名字会在proc文件系统中查看块缓冲信息时用到。 BLKD_ulNSector:块设备总扇...
SylixOS块设备驱动开发(五)
块设备读写和控制 在初始化块设备数据结构的时候,有几个回调函数需要初始化: pdev->BLKD_pfuncBlkRd = vdisk_read; pdev->BLKD_pfuncBlkW...
SylixOS块设备驱动开发(四)
创建块设备并自动挂载 1. 概述 从本小节开始,我们以一个虚拟磁盘块设备驱动为例来讲解如何编写一个基础的块设备驱动。说是虚拟的磁盘也就是分配一段内存来当做磁盘来使用,对磁盘的读写也就是访问内存的不同位...
SylixOS块设备驱动开发(三)
SylixOS块设备框架 1. 从功能角度 从功能角度,SylixOS块设备框架大致可以分为5个部分: 用户层的APP通过对文件读写来操作块设备。 各种文件通过内核提供的文件系统进行统一的管理。 文件...
SylixOS块设备驱动开发(二)
分区和格式化 1. 查看分区信息 块设备要想被使用首先需要进行分区,然后将分区格式化为具体的文件系统格式才能使用,分区信息是以分区表的形式保存在设备的第一个扇区末尾中: 在x86平台的磁盘上,上图中紫...
SylixOS块设备驱动开发(一)
认识块设备 1. 存储设备 在嵌入式中,常见的存储设备有SD卡、eMMC、sata硬盘、U盘、NVMe盘等。其中SD卡和eMMC使用的是SD协议,sata盘使用的是sata协议(包括机械硬盘和固态硬盘...
Wayland窗口系统(二)
4. Wayland协议实现浅析 4.1 几个重要的数据结构 4.1.1 wl_object wl_object是一个很重要的数据结构,在客户端和服务端都有此数据结构的封装,是wl_proxy、wl_...
Wayland窗口系统(一)
1. 窗口系统 1.1 窗口系统简介 任何窗口系统的主要组件通常称为显示服务器(Display Server),也可以称作窗口服务器(Window Server)或合成器(Compositor)。在窗...