HW4-lazy-page-allocation 操作系统可以使用页表硬件的许多巧妙技巧之一是堆内存的延迟分配。xv6 应用程序使用 sbrk() 系统调用向内核请求堆内存。在我们提供给的内核中,sbrk() 分配物理内存并将其映射到进程的虚拟地址空间。有些程序分配内存但从不使用它,例如实现大型稀疏数组。复杂的内核会延迟每个内存页面的分配,直到应用程序尝试使用该页面(如缺页错误)。在本练习中,将此延迟分配功能添加到 xv6。 作业链接:https 2023-07-22 mit6.828/2018Fall #mit6.828/2018Fall
HW3-system-calls 为 xv6 添加一个系统调用。 Part One: System call tracing第一个任务是修改 xv6 内核,为每个系统调用打印出一行。打印系统调用的名称和返回值就足够,不需要打印系统调用参数。 完成过后,会看到类似于以下的输出: 123456fork -> 2exec -> 0open -> 3close -> 0$write -> 1 write -& 2023-07-20 mit6.828/2018Fall #mit6.828/2018Fall
xv6-Memory 简介这个部分,我们来学习一下 xv6 是如何进行内存的管理的,了解最简单的管理方式,为后续学习 Linux 内存管理哪些打个小基础。 xv6 这儿有源文件 是一个 UNIX 风格的操作系统。后续的代码,我会按照顺序,对其进行拆分,和一些自己理解的说明,其实基本上内容都是在 xv6 的这本书里。 Page tablesx86 的指令操纵的都是虚拟地址(virtual address),而硬件 RAM 2023-07-05 xv6 #xv6
Minikube-创建集群 简介学习和复现一些小练习,从最基础的开始捏。从最基本的使用 K8S 开始,通过使用 Minikube 创建集群。学习地址链接:https://kubernetes.io/zh-cn/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/ Kubernetes 集群Kubernetes 协调一个高可用计算机集群,每个计算机作为独立 2023-06-06 K8s #K8s
xv6-Boot 简介学习 xv6 的同时,对照 Linux 0.11 源代码进行理解,希望自己能够有所提升吧。顺便给自己立一个 flag,看能不能花两个月的时间啃完。 xv6 这儿有源文件 是一个 UNIX 风格的操作系统。后续的代码,我会按照顺序,对其进行拆分,和一些自己理解的说明,其实基本上内容都是在 xv6 的这本书里。 The boot loaderxv6 是基于 X86 的,可以参考的芯片手册是 i38 2023-04-25 xv6 #xv6
chronos和simplescalar安装 安装预先准备安装环境ubuntu 9.04(32-bit) Virtualbox 镜像 ubuntu-9.04-desktop-i386.iso chronos安装包chronos2.0版本安装包.zip 安装步骤系统安装 正常按照步骤安装系统 安装好系统之后,切换源,教程如下,笔者使用的中科大源: https://mirrors.ustc.edu.cn/help/ubun 2022-09-20 WCET #WCET
HW4 xv6 lazy page allocation Homework: xv6 lazy page allocation 本次作业要求实现一个对堆内存的延迟分配。 实验链接:https://pdos.csail.mit.edu/6.828/2018/homework/xv6-zero-fill.html Part One:Eliminate allocation from sbrk() 第一个任务是删除掉sbrk(n)系统调用实现,在syspro 2022-07-11 mit6.828/2018Fall #mit6.828/2018Fall
HW3 system calls Homework: xv6 system calls 参考boot homework中的内容,为xv6操作系统添加一个系统调用。 链接:https://pdos.csail.mit.edu/6.828/2018/homework/xv6-syscall.html Part One: System call tracing 修改xv6内核,为每个系统调用打印一行,打印系统调用的名称和返回值。 12 2022-07-01 mit6.828/2018Fall #mit6.828/2018Fall
VPP Labs 环境安装 Debian 10 1sudo apt install gcc g++ vim cmake curl wget ifconfig bridge-utils -y repo添加 1curl -s https://packagecloud.io/install/repositories/fdio/release/script.deb.sh | sudo bash 安装VPP 2022-03-22 SDN #SDN
Project 1 Buffer Pool Manager Lab 2 Summary cmu15445第二个项目是关于在内存中实现buffer pool的,通过实现三个部分来加深对缓冲池的实现机制的理解,分别是LRU算法实现frame管理,单个buffer pool的管理,并行多个buffer pool的管理。 实验地址:https://15445.courses.cs.cmu.edu/fall2021/project1/#buffer-pool-in 2022-02-25 CMU15445 #CMU15445