自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 MIT6.S081 Lab4 trap学习笔记

在这个过程中,硬件的状态将会非常重要,因为我们很多的工作都是将硬件从适合运行用户应用程序的状态,改变到适合运行内核代码的状态。RISC-V总共有32个比如a0,a1这样的寄存器,用户应用程序可以使用全部的寄存器,并且使用寄存器的指令性能是最好的。程序计数器(Program Counter Register)mode 标志位,这个标志位表明了当前是supervisor mode还是user mode。

2025-01-08 22:01:22 1894

原创 MIT6.S081 Lab3 page tables学习笔记

题目的意思就是用户申请若干页,你得通过PGT去找对应的物理页,如果该页(eg.第二页)被访问了,就得在一个变量的第二位写1。需要创建一个用户和内核共享的映射,申请一个物理页并将pid写入然后再映射虚拟页即可,照葫芦画瓢trapframe即可。Q.为什么要使用多级页表结构。

2025-01-03 12:28:04 518

原创 MIT6.S081 Lab2 SYSCALL学习笔记

Makefile 调用 perl 脚本user/usys.pl,该脚本生成user/usys.S,即实际的系统调用存根,它使用 RISC-V ecall指令转换到内核。添加系统调用就不写了,参照sys_trace即可。一、syscall trace部分。写完函数后要在def.h添加。在此之前先创建名称数组。1.用户部分代码修改。

2024-12-31 04:34:40 410

原创 6.S081 学习笔记 1

b:设置断点, c:执行到断点,n,s:单步执行,但s会step进函数。start运行到main处,run直接执行程序。(gdb):target remote localhost:26000 连接gdb server。源码目录下make CPUS=1 qemu-nox-gdb/qemu-gdb进入qemu虚拟机。可以输入layout asm显示汇编程序,输入layout reg显示寄存。可以输入tui enable来边debug边显示source code。再开一个终端,gdb-multiarch。

2024-12-30 22:04:28 245

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除