计算机网络原理笔记

reference: https://github.com/VasanthVanan/computer-networking-top-down-approach-notes (this note is based on the linked note) Chapter 0: something to know 0.1 Network of Networks end systems = host = connected devices, ISPs = Internet Service Providers Access Networks: the network that physically connects an end system to the first router. Peering: direct traffic exchange between ISPs IXPs: Internet Exchange Points facilitate ISPs’ direct connections. 0.2 Throughput Instantaneous vs. Average the throughput is determined by the slowest link in a connection - the bottleneck. ...

九月 4, 2025 · 31 分钟 · 6419 字 · BonnieW

计算机系统概论课程笔记

学期知识图谱: 编译:数据的机器表示,汇编基本指令,程序的机器表示 链接:程序连接,内存布局,栈溢出攻击 启动:创建虚存空间、_start运行 运行:虚存与虚存管理、异常与异常控制流、动态内存分配 退出:进程管理(子进程exit、父进程回收) 其他:信号处理、文件IO、线程与并发 区分不同数据对象的唯一方法是我们读到这些对象的上下文 基本知识 关于硬件 PC(程序计数器):指向当前执行的指令(执行完后更新为下一条要执行的指令)。在 x86-64 架构下称为 RIP。 寄存器:处理器内部以名字访问的快速存储单元。 整数寄存器可存储地址或整数数据。 条件码寄存器:保存最近执行的算术或逻辑指令的状态信息。 内存:以字节编码的连续存储空间。 指令集 指令集是软硬件的接口,包含:指令集组成;指令集架构(ISA):实现软硬件解耦。 操作系统 作用:1.防止应用程序被失控的应用滥用。 2.提供简单一致的机制控制低级硬件设备。 其他 Amdahl’s 定律 假设系统运行一个应用程序所需的时间为 $T_{\text{old}}$,其中某部分占比为 $a$,其性能提升比例为 $k$。 优化后的总执行时间为:$T_{\text{new}} = T_{\text{old}} \left[ (1 - a) + \frac{a}{k} \right]$ 加速比为:$S = \frac{T_{\text{old}}}{T_{\text{new}}} = \frac{1}{(1 - a) + \frac{a}{k}}$ 编译流程 .c – 编译 → .s(汇编代码) .s – 汇编 → .o(目标文件) .o – 链接 → 可执行程序 并发与并行 并发:同时具有多个活动的系统。 并行:利用并发来提高系统运行速度。 数据单位与位模式 bit:一个二进制位。 byte:8 位。 word:16 位(1 word = 2 bytes,为早期 x86 十六位系统的遗留)。 位模式:长度为 $n$ 的位序列,可表示 $2^n$ 个数。 C 语言运算符 逻辑运算符(&&, ||):具有短路效应,返回 0 或 1。 按位运算符(&, |, ^, ~, <<, >>):返回运算结果的二进制数。 移位运算: 逻辑右移:高位填充 0(适用于无符号数)。 算术右移:高位填充符号位(适用于有符号数,但对于负数可能不向零取整)。 在 Java 中,>> 表示算术右移,>>> 表示逻辑右移。 ...

九月 4, 2025 · 13 分钟 · 2582 字 · BonnieW

v-jepa2部分跑通经验

vjepa代码部分跑通经验 租的依然是autodl上RTX4090/24G, 服务器租赁相关见上篇 环境配置 在clone下来的主目录下运行 c c p o o i n n p d d a a i n c a s r c t e t a a i l t v l e a t . - e n v v j j e e p p a a 2 2 - - 3 3 1 1 2 2 p y t h o n = 3 . 1 2 跑通demo notebooks/vjepa2_demo.ipynb —— for mac 一开始是在mac上做的尝试,所以这里提供一下在mac上成功运行vjepa2_demo.ipynb所需的改动(把cuda相关的改掉,然后把没办法连接到的资源换个源)。以及出于对配置的考虑将giant相关的代码改成了large相关代码 ...

七月 15, 2025 · 17 分钟 · 3461 字 · BonnieW

dino-wm新开服务器配环境步骤

租借的是autodl的服务器,配置是RTX 4090 / 24G (一开始租的是5090,结果一阵配环境后发现项目指定的pytorch版本不支持,所以只好换一下) 服务器租赁教程参考:https://www.bilibili.com/video/BV16PVDzfEvk?vd_source=0e63ac2dd754b64db4ecb7f2de6ea971 需要上传的文件(可以先无卡模式开机做上传文件和配环境的工作) dino_wm.zip(我上传的包含源码和dinov2模型修改后的代码) mujoco210-linux-x86_64.tar.gz train/plan任务对应的数据集的压缩包 特殊的环境设置 1 2 3 4 5 6 7 8 9 sudo apt update sudo apt install -y \ libosmesa6-dev \ libgl1-mesa-dev \ libglfw3 \ libglfw3-dev \ patchelf \ gcc \ g++ 数据集/checkpoints下载 https://osf.io/bmw48/files/osfstorage?view_only=a56a296ce3b24cceaf408383a175ce28 下载建议是一个一个zip在浏览器上下载(我尝试整包wget, curl和浏览器下载,均功亏一篑…) 下载在本机后上传到服务器,以及接下来修改路径 主流程 大部分内容和github仓库readme指示的一样,但是有一些地方有调整 创建conda环境:在dino_wm目录下conda env create -f environment.yaml, 然后conda activate dino_wm 安装Mujoco: 服务器大概是连不上的,所以要使用上传的文件,放到root/.mujoco并tar -xzvf mujoco210-linux-x86_64.tar.gz 环境变量设置:vi ~/.bashrc i编辑 esc退出编辑 :wq保存并退出 1 2 3 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/root/.mujoco/mujoco210/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/nvidia export DATASET_DIR=/path/to/data # 比如我把数据集直接扔到了数据盘,所以是"/root/autodl-tmp/dataset" 然后source ~/.bashrc 4. 训练模型指令: ...

七月 14, 2025 · 2 分钟 · 295 字 · BonnieW

我的博客建站记录

我的博客建站记录 经过几天的学习和实践,我的个人博客终于搭建完成并上线了。在这里记录一下建站的过程和一些经验。 技术选型 选择了 Hugo 作为静态网站生成器,主要考虑: 构建速度快 主题丰富 社区活跃 最终选择了 PaperMod 主题,设计简洁,功能完善。 建站过程 主题配置 在配置 PaperMod 主题时,参考了 周鑫的个人博客 的实现方案。他的博客在以下方面给了我很多启发: 访问量统计功能的实现 页面布局调整 搜索功能配置 访问量统计 使用不蒜子服务实现访问量统计,包括: 网站总访问量显示 单篇文章阅读量统计 页脚统计信息展示 其他功能 配置了全文搜索 优化了中文字体显示 设置了代码高亮 调整了页面样式 部署 使用 GitHub Actions 实现自动化部署: 代码推送到 GitHub 仓库 自动构建 Hugo 站点 部署到 GitHub Pages 致谢 在搭建博客的过程中,周鑫的个人博客 提供了很多有价值的参考和帮助,特别是在主题配置和功能实现方面。感谢分享这些宝贵的经验。 后续计划 定期更新博客内容 继续优化网站功能 学习更多 Hugo 和前端技术 博客搭建完成,开始记录学习和技术分享。

一月 27, 2025 · 1 分钟 · 56 字 · BonnieW