SylixOS

SylixOS编程知识点

主要记录一些驱动开发或者应用开发中比较重要的知识点,不定期更新。 1. 串口缓冲区大小设置 在创建串口设备时,一般使用的是下面这个接口: INT API_TtyDevCreate (PCHAR pcN...
阅读全文
SylixOS

SylixOS内存访问错误解决方法(二)

解决方法(一)介绍的方法比较麻烦,因为需要反汇编要排查文件,当文件比较大时,反汇编的时间就会很长,而且打开一个很大的文件在性能较差的电脑上也需要较长时间,下面介绍一种更简便的方法。 1. 测试代码 测...
阅读全文
SylixOS

SylixOS网络开发(三)

1. 概述 本篇章节介绍SylixOS网络驱动不使用零拷贝时的数据是如何传递的。在阅读本篇文章的时候,大家脑海里一定要记住以下这张图: 这张图只是对上一章节中的网络数据流图做了一点小修改。 2. 发送...
阅读全文
SylixOS

SylixOS网络开发(四)

1. 概述 本章节讲述网络零拷贝技术的基本原理,需要知道的一个前提条件是,零拷贝可能不会提升网络驱动收发数据的速度,对不同的平台需要具体的分析,不能一概而论。 2. 发送零拷贝 我们来看看上一章节中的...
阅读全文
SylixOS

SylixOS PCIe控制器驱动开发(六)

SylixOS读写PCIe设备配置空间 在上一节中,我们知道注册控制器驱动后,SylixOS会遍历所有总线上的设备信息,这是通过读取设备的配置空间信息实现的。SylixOS中配置空间的读写都是通过调用...
阅读全文
SylixOS

SylixOS PCIe开发(三)

1. SylixOS主控驱动支持多个控制器 SylixOS中的pci框架目前只支持单个控制器,如果需要在主控驱动中支持多个控制器,就需要将多个控制器虚拟成一个控制器给SylixOS。 在vx下用户的p...
阅读全文
SimpleOS

SimpleOS开发(1)环境准备

1. 项目简介 基于全志D1开发板开发一个类UNIX系统来学习操作系统开发相关知识,设计上会参考xv6和SylixOS,并且是从最底层开发,也即不使用uboot或者opensbi之类的引导程序,而是直...
阅读全文
SylixOS

SylixOS网络开发(五)

1. 发送零拷贝问题 某SOC是四核A9平台,网络控制器是dw,不使用发送零拷贝的tcp发送带宽是93M/s,使用发送零拷贝之后的发送带宽竟然降低到了20M/s。最后查出的原因是用发送零拷贝时需要ca...
阅读全文