这里可能没有你想看的...
【数据删除】
现代图形学入门(GAMES101)の 作业记录 现代图形学入门(GAMES101)の 作业记录
>>> Github 传送门<<< #环境搭建 使用平台:Windows + Vscode + MSYS2 + MinGW #Eigen 库安装 & 编译 进入下载地址进行下载并解压。 cd /
2024-04-19
6.s081 Lab9 Mmap 6.s081 Lab9 Mmap
最后一个,也是最有挑战性的一项 coding 任务,是所有前置 lab 的知识综合。 #Preparation 切换到对应分支 $ git fetch $ git checkout mmap $ make clean 我们需要实现的 mm
2023-11-04
6.s081 Lab8 File System 6.s081 Lab8 File System
现在开始进入文件系统的阶段。 #Preparation 切换到对应分支 $ git fetch $ git checkout fs $ make clean #Task1: Large files 该任务要求我们为 inode 实现二级间
2023-11-02
6.s081 Lab7 Lock 6.s081 Lab7 Lock
这个 lab 就是对原先的并发控制进行优化。 #Preparation 切换到对应分支 $ git fetch $ git checkout lock $ make clean #Task1: Memory allocator 原来的内存
2023-11-01
6.s081 Lab6 Networking 6.s081 Lab6 Networking
这里要我们在软件层面实现数据包的收发操作。 #Preparation 切换到对应分支 $ git fetch $ git checkout net $ make clean #模拟网络 我们将使用名为 E1000 的网络设备来处理网络通信
2023-10-31
6.s081 Lab5 Multithreading 6.s081 Lab5 Multithreading
现在进入操作系统的另一大特性:并发。 #线程切换 in xv6 在 xv6 中,每个进程都可以视为有一个主线程,逐行运行指令,享有所有寄存器的使用权。然而,时间片到期,也就是进程收到时钟中断后,会调用 yield() 函数自愿让出 CPU
2023-10-30
6.s081 Lab4 Copy-on-Write Fork for Xv6 6.s081 Lab4 Copy-on-Write Fork for Xv6
课上谈了个 COW 优化策略,这里就要具体实现了。 #关于 COW(Copy-On-Write, 写时拷贝) #The Problem The fork() system call in xv6 copies all of the pa
2023-10-30
6.s081 Lab3 Traps 6.s081 Lab3 Traps
现在是,陷入内核时间。 #Preparation 切换到对应分支 $ git fetch $ git checkout traps $ make clean #Task1: RISC-V assembly 第一个任务就是了解一下 RISC
2023-10-26
6.s081 系统调用流程 6.s081 系统调用流程
番外篇,探究通过 shell 运行命令时,系统调用到底是个什么流程。 #用户层是如何进行系统调用的 以 sleep.c 为例,在 lab0 中我们知道要修改 Makefile 中的 UPROGS 变量,并且 user/user.h 中也为
2023-10-25
6.s081 Lab2 Page Tables 6.s081 Lab2 Page Tables
在本 lab 中,我们将进行页表机制的探索。 #Preparation 切换到对应分支 $ git fetch $ git checkout pgtbl $ make clean #Task1: Speed up system calls
2023-10-24
6.s081 Lab1 System Calls 6.s081 Lab1 System Calls
本 lab 要求我们进行系统调用代码的编写。 #Preparation 切换到对应分支 $ git fetch $ git checkout syscall $ make clean 可以看到 Makefile 里内容都重置了,且测试脚
2023-10-23
6.s081 Lab0 Xv6 and Unix Utilities 6.s081 Lab0 Xv6 and Unix Utilities
热身运动,实现一些 shell 命令。 #Boot xv6 首先去 lab tool page 把实验所需工具都给装上,然后查看一下各个工具的版本,检查是否安装成功。 $ tool --version 获取代码,切换到实验对应分支,准备开
2023-10-22
TinyKV Project4 Transaction TinyKV Project4 Transaction
本 Project 需要我们实现基于 MVCC 的事务模块。 #思路 #Part A Mvcc Txn 需要实现的代码在文件夹 kv/transaction/mvcc 下。 这一 part 需要我们实现支持 MVCC(多版本并发控制, M
2023-08-20
TinyKV Project3 Multi-Raft TinyKV Project3 Multi-Raft
本 Project 需要我们实现多个存储节点之间的管理。 #思路 #Part A Leadership/Membership Change in Raft 需要修改的代码位于 raft/raft.go。 在 3A 中我们仅需修改 Raft
2023-08-20
TinyKV Project2 RaftKV TinyKV Project2 RaftKV
本 Project 需要我们实现基础 Raft 算法。 #思路 #Part A Raft 需要实现的代码在整个 raft 文件夹下。 这一 part 我们要实现三个模块,分别为 Leader election => 领导选举
2023-08-14
TinyKV Project1 StandaloneKV TinyKV Project1 StandaloneKV
本 Project 需要我们基于 badger 实现一个独立存储引擎。 #思路 #Part A Implement standalone storage engine 需要实现的代码在 kv/storage/standalone_stor
2023-08-13
CS144 Lab Note CS144 Lab Note
CS144 lab 记录过程。 #环境配置 本课程所有 lab 均需要在 Linux 环境下运行,课程组提供了 4 种运行方式,直接照着 Instructions 来就好了。我这里因为实验室自带 Ubuntu 工作站,所以用了第三种方式,
2023-03-21
CMU15445 Project#4 Concurrency Control CMU15445 Project#4 Concurrency Control
接下来,需要完善对事务并发的支持。 >>> LAB 主页传送门 <<< #Task #1 - Lock Manager LM 负责以五种不同的模式保持 Table 和 Tuple 两个粒度的锁:Inte
2023-01-12
1 / 2