随笔分类 - 课程--计算机系统基础与实现
摘要:
from pixiv 资源 NJU Compiler 课程 中科大 Compiler 课程 LLVM IR Github book教程 Koopa IR 框架 PKU 讲义本体 Github仓库 Lv0 环境配置 Docker 获取编译实践的镜像: sudo docker pull maxxing/
阅读全文

摘要:
from pixiv 请注意你的学术诚信! 本博客只提供个人思路的参考和一些想法, 并非能够抄袭的答案 1.本人水平有限,实现的PA可能有可怕的bug 2.本人思路可能有误,需要各位自行判别 多道程序 要实现一个多道程序操作系统, 我们只需要实现以下两点就可以了: 在内存中可以同时存在多个进程 一个
阅读全文

摘要:
from pixiv PA3 穿越时空的旅程 让DiffTest支持异常响应机制 在DiffTest中是用来测量硬件是否实现正确的,因为我们在DiffTest中需要比较nemu和spike中CPU_state即寄存器和PC,按照要求在初始化时设置下mstatus # ics2023/nemu/src
阅读全文

摘要:
from pixiv 基础设施(2) bug诊断的利器 - 踪迹 函数调用的踪迹 - ftrace 在我们执行make ARCH=$ISA-nemu ALL=xxx run时,通过查看Makefile可以发现Makefile帮我们实现了传入ELF文件到NEMU,具体表现为Makefile最终的执行程
阅读全文

摘要:
from pixiv 资料 为 Bare-Metal 编程:编译、链接与加载 Klib: 操作系统内核最小的运行库 CSAPP 第 7 章:链接 x86-64 下函数调用及栈帧原理 DEBUG Makefile make -nB ARCH=x86_64-qemu 可以查看完整的编译、链接到 x86-
阅读全文

摘要:
from pixiv 写在前面 嗨嗨,我又开新坑了,这次希望能够实现出自己的编译器。 这次我选择PKU 编译原理实践作为实验练习,选择NJU 编译原理作为视频课程,龙书作为课本进行学习。 实验 视频课程 大佬博客
阅读全文

摘要:
from pixiv 优化程序性能 消除不必要的工作 循环不变式外提 减少循环函数调用 减少循环访存 理解编译器的能力和局限性 编译器只对程序进行保守的,安全的优化 编译器会假设最坏的情况,若优化在此种情况下可能导致程序结果改变,编译器不会执行优化 如指针,指针可能同时指向同一个地址 在超标量乱序执
阅读全文

摘要:
from pixiv 基于LMbench测试LLC perf-book -- 内存延迟和带宽 工具与术语 LLC延迟(Last Level Cache Latency) 是指处理器访问最后一级缓存(通常是L3缓存)中的数据所需的时间延迟。 LMbench LMbench是Intel旗下的内存测试工具
阅读全文

摘要:
from pixiv 系统级I/O 文件 所有的 I/O 设备(例如网络、磁盘和终端)都被模型化为文件,而所有的输入和输出都被当作对相应文件的读和写来执行。这种将设备优雅地映射为文件的方式,允许 Linux 内核引出一个简单、低级的应用接口,称为 Unix I/O Linux 文件有主要有三种类型:
阅读全文

摘要:
from pixiv 前置知识 进程 逻辑控制流(简称逻辑流) CSAPP P508: 一系列的程序计数器PC的值唯一地对应于包含在程序的可执目标文件中的指令或包含在运行时动态链接到程序的共享对象指令。这个PC值的序列叫逻辑控制流。 一个逻辑流的执行在时间上与另一个流重叠,称为并发流,这两个流被称为
阅读全文

摘要:
from pixiv 请注意你的学术诚信! 本博客只提供个人思路的参考和一些想法, 并非能够抄袭的答案 1.本人水平有限,实现的PA可能有可怕的bug 2.本人思路可能有误,需要各位自行判别 最简单的操作系统 最简单的操作系统有: 批处理功能 有一个后台程序, 当一个前台程序执行结束的时候, 后台程
阅读全文

摘要:
[いちご飴--放課後] 请注意你的学术诚信! 本博客只提供个人思路的参考和一些想法, 并非能够抄袭的答案 1.本人水平有限,实现的PA可能有可怕的bug 2.本人思路可能有误,需要各位自行判别 YEMU: 一个简单的CPU模拟器 typedef union { struct { uint8_t rs
阅读全文
