Skip to content

Latest commit

 

History

History
189 lines (103 loc) · 7.38 KB

README.MD

File metadata and controls

189 lines (103 loc) · 7.38 KB

计算机系统学习资源

TOC

博客

LoyenWang Linux(内核,PCI驱动),Kvm(中断虚拟化,virtio)源码分析讲的很清晰

stdrc.cc RC的博客质量都很高

知乎专栏:术道经纬 文章基本与Linux有关

kernelgo KVM相关的介绍值得一看

UEFI-BIOS 介绍UEFI与BIOS的知乎专栏

Ahao Mu 内核调试技巧

SToPire Linux/KVM 源码分析

计算机系统会议论文 系统顶会论文分析

linuxperf 内核性能调优

DPDK 很多关于DPDK的文章

QEMU QEMU使用与代码分析

LLVM

Just for fun 内核子系统分析

OpenEuler 关于Linux的知识连载

河马虚拟化 虚拟化知识

操作系统史话 操作系统考古

美团技术 互联网大厂中技术知识输出做的最好的

wangzhou 内核,虚拟化

sjtug 交大sjtug的知识分享

项目

操作系统

RT-Thread 实时操作系统

Minos 微内核实时操作系统,提供虚拟化支持

swim 分布式microkernel

Redox RUST微内核操作系统

rCore RUST 操作系统

armv8-bare-metal 针对ARMv8写的裸金属操作系统,代码很少,适合学习

unikernel list 提供了所有开源uni kernel项目的列表,包括Rumprun,Drawbridge等

risc os 针对arm的操作系统

SimpleKernel 正在开发中的内核,可以用来练手

Tisu OS 太素OS 一个国内大学生用Rust开发的基于RISC-V的操作系统,能够支持最基本的设备与GUI

tetris-os 一个专门跑俄罗斯方块的操作系统

managarm 一个modern C++写的操作系统

虚拟机监控器

cloud-hypervisor Rust语言编写的虚拟机监控器,提供设备的热插拔功能,支持跑Linux与Windows虚拟机

firecracker serverless场景中的虚拟机监控器,Rust编写

jailhouse 支持跑Linux虚拟机,关于ARM硬件虚拟化的代码可以用来参考

Xvisor 支持ARM系列平台,RISCV

bao-hypervisor 轻量级分区虚拟机监控器,支持ARMv8-A与RISC-V,正在开发阶段

虚拟机

dockerrpi 利用docker与qemu模拟rpi硬件

驱动

uspi

circle 支持的驱动比较多

编译器

How I wrote a self-hosting C compiler in 40 days讲述了作者在40天内实现一个C语言编译器的历程

write-a-C-interpreter 一个C语言编译器前端项目,赞的数量比较多

课程

SJTU-SE-ICS 上海交通大学软件学院计算机系统基础课程

得克萨斯大学奥斯汀分校 CS378 虚拟化教学课程,课程项目是写一个pv vmm

cs3210 rust os, 被南大引入为课程lab

南大jyy OS课 IMHO, 国内最好的操作系统课程之一,课程内容上偏向于基础与实践,老师真的很用心

tinykv pingcap 出品的分布式课程

6.824分布式

6.s081操作系统

论文

Lightweight Virtualization on Microkernel-based Systems 微内核架构中轻量级虚拟化,介绍的很详细,名字是Diplomarbeit, 发表于2010年

Supporting KVM on the ARM architecture 来自lwn社区

分布式系统领域经典论文翻译列表

教程

test-your-sysadmin-skills

db-readings 数据库领域论文列表,由浅入深

TeachYourselfCS Github上评价很高的自学教程,有中文翻译

Writing an OS in Rust Rust 写操作系统

db_tutorial 从头写数据库

KVM

KVM host in a few lines of code

kvm-kernel-example 利用kvm实现虚拟机监控器

kvm-hello-world kvm使用示例

SGX

SGX 101 学习 Intel SGX 的使用

工具

elixir Linux源码阅读工具

文档

Linux dts阅读说明

Linux启动流程

Linux设备驱动树

rosettacode展示基本所有编程语言实现一个操作(比如读文件)所需要的代码,可以用来学习编程语言

书籍

distributed systems for fun and profit

OSTEP 操作系统领域经典教材

系统虚拟化-原理与实现 很好的虚拟化教材,对x86平台虚拟化的设计,实现介绍的非常清楚。

linux-insides