2025-W03-01
📅 本周概览 🎯 目标完成情况 本周目标 path includes 周记 not done due 2025-01-13 2025-01-19 历史未完成 not done path includes 周记 sort by priority hide task count 长期目标进展 path …
摆烂问诊|2024.12.29-2025.1.8
在摆烂期的日志 24.12.5 恢复状态,关键词是记录时间,以及 无价值的让时间流逝 24.12.12 恢复状态后一周,多线程执行任务时间利用率更高,不会浪费太多无意义时间 24.12.20 恢复状态后两周,基本上能稳定十一点后起床,起床后的时间学习较为高效,大概日均6小时?但是发现公开课效率还是不…
在Docker中访问vite构建的vue项目
使用场景介绍。本地mac作为开发机器,同局域网内的一台Linux主机中的Docker作为开发环境。 需求:可以使用mac远程进Linux机器的docker进行开发。 想法:利用简单的端口映射完成。 步骤一:Docker端口映射 保存运行中的开发容器 docker commit <容器ID>…
二叉树Part06
530.二叉搜索树的最小绝对差 思路 把遍历到的节点都加入vec中,在互减得出答案。 题解 递归法 好久没写,手生了,第一次写成前序遍历了,没有利用到二叉搜索树的特性(中序遍历时是从小到大的) class Solution { private: std::vector<int> vec;…
记一次macOS配置
参考这篇文章,并结合自身经验进行配置 首先安装Xcode Command Line Tools xcode-select --install 配置brew 此时还没有代理,装不了一些国外源的软件,所以我们先来配置brew,安装一些必备的软件 # 使用国内源安装 /bin/zsh -c "$…
clangd配置指南
关于clangd 系统官方的介绍可以看网上别的博客,按我个人理解,clangd就是给你提供代码补全,函数跳转之类的功能。 开始配置 我是MacOS,所以先直接brew install llvm,如果你是Debian系Linux,用apt install clang clangd clangd-tid…
6.S081|Lab9-Mmap
通过内存映射文件的方式加快访问速度。 感觉初见提示和之前的speed up系统调用有点相似,需要在内存中找到一块地方做映射。 首先我们要注册系统调用。将以下代码添加进user/user.h中。 void* mmap(void *addr, uint64 length, int prot, int f…
6.S081|第五章-中断与设备驱动
关于console的疑惑 我们知道当UART的缓冲区已满的时候,系统会sleep程序直到缓冲区里的东西被消费。于是我们开始疑惑,难道console只能输入不超过128(buffer),尝试了一下还真是,于是疑惑,为什么console的输出能超过128(因为报错的时候通常会打印很多字符)。 其实是因为…
6.S081|第三章-页表
页式硬件 RISCV里执行的指令中的地址都是使用的虚拟地址(Q:为什么要用虚拟地址?A:为了隔离性和保护性),但是机器的物理内存是由物理地址索引的,所以我们需要一种映射机制来完成由虚拟地址到物理地址的转换。 在开始下面内容之前,我们需要知道xv6的内存管理机制是Sv39 RISC-V,这意味着我们只…
6.S081|Lab8-File-system
概念引入 xv6的文件系统分为七层,自底向上的顺序是硬盘(Disk),缓冲区高速缓存(Buffer cache),日志(Logging),索引节点(Inode),目录(Directory),路径名(Pathname),文件描述符(File descriptor)。 inode inode是一个文件或…