前言 在写代码的时候,经常通过dyn关键字+Arc指针来实现多态。但是,有时候会遇到这样一个需求:我们想获取具 …
Linux IO向量化:iovec与readv、writev系列函数
本文整合自三篇参考资料,具体引用见文末。 iovec结构体 struct iovec定义了一个向量元素。通常, …
DragonOS新版地址映射管理及VMA机制设计
DragonOS官网:https://dragonos.org 1. 地址映射管理 1.1. 映射机制设计 对 …
Fork进程后,是否与父进程共享stdio?
今天想到一个问题:如果我在代码里面,fork当前进程,然后两个进程都执行scanf(),那会发生什么?键盘输入 …
wireshark调试DragonOS的网络
由于开发的需要,要调试DragonOS的网卡驱动,在此写个博客记录一下。 qemu参数设置 设置qemu的启动 …
教程:为Linux系统导出内核头文件
最近由于项目需要,要编译mlibc,其中需要linux kernel headers,而使用apt安装的头文件 …
Rust数组默认初始化:初始化未实现Copy trait的类型
在安全的Rust中,编译器要求数组一旦被声明,它所占用的内存应当被完全初始化。但是,在一些情况下,这样会导致没 …
编译原理:DFA的最小化
书本上关于DFA最小化的方法的文字说明比较晦涩,因此在这里举个实例来说明. 题目:最小化下图所示的DFA 1. …
Ubuntu22 Server: 配置网桥,让虚拟机从路由器获取IP
最近在实验室新配置了一台用于开发的服务器,一台服务器上建立出多个虚拟机,然后多人连接到这台服务器上的虚拟机来进 …
编译原理:文法的分类
在编译原理课程中,我们知道有4种文法:0型、1型、2型、3型。本文将对他们的区别进行描述。 0型文法 0型文法 …