Liuyi Wen's Blog
搜索

Liuyi Wen's Blog

CMU15-445 Lecture#03,#04 数据库存储
发表于2025-03-24|DatabaseCMU 14-445
本篇博客为CMU15-445(2024 Fall)中数据库存储部分的理论学习笔记。 存储结构 存储层次结构的最上面是离 CPU 最近的设备。这些设备速度最快,但也是最小且最贵的;随着距离 CPU 的增加,存储设备变得更大,但更慢。每 GB 存储的成本也会下降。 易失性设备 易失性:如果拔掉机器的电源,数据将丢失; 易失性存储支持快速的随机访问,具有字节可寻址的地址。这意味着程序可以跳到任何字节地址并获取数据。 非易失性设备 非易失性:该存储设备不需要持续供电,就能保持它存储的位; 块/页面可寻址:要读取某个特定偏移位置的值,程序必须先加载包含该值的 4 KB 页面到内存中; 适合顺序访问(一次读取多个连续的数据块)。 我们将其称为“磁盘”,暂时不会区分固态存储(SSD)和旋转硬盘(HDD)。 持久内存 介于DRAM和磁盘之间,结合了 DRAM 的快速性和磁盘的持久性。 > 持久内存的设计目标是达到两者的最佳平衡。最著名的例子是 Optane。 > > NVMe 表示非易失性内存快车。这些 NVMe...
C++顺序容器
发表于2025-03-24|C++ PrimerC++ STL
本篇隶属C++...
BUAA-OS Lab2 实验笔记
发表于2025-03-21|OSBUAA OS lab
继上一篇,我们已经跳转到了init/init.c中的mips_init函数,即内核初始化的入口点,一起回顾一下: 123456789101112#ifdef MOS_INIT_OVERRIDDEN#include <generated/init_override.h>#elsevoid mips_init(u_int argc, char **argv, char **penv, u_int ram_low_size) { printk("init.c:\tmips_init() is called\n"); // lab2: //mips_detect_memory(ram_low_size); //mips_vm_init(); //page_init();}#endif...
CMU 14-445 Project#0(2024 Fall) C++ Primer
发表于2025-03-21|DatabaseCMU 14-445C++ Primer
Lab0 C++ PrimerPrimer 写在开头 首先致谢CMU-db无私将这门质量极高、资源极齐全的数据库课程,以及相关基础设施(GradeScope, Discord)和课程资料(Lectures, Notes, Homework)完全开源,让一个在本科数据库课程上只学会了抽象理念和SQL语句的孩子,能踏上一条自学之路(手动狗头) 其次,感谢CS自学指南,将计算机领域的众多好课分享给我们. 本专题将详尽地记录2024 Fall对应Lecture和Lab的学习经历. 课程链接 课程主页:https://15445.courses.cs.cmu.edu/fall2024/ Discord:https://discord.com/channels/724929902075445281/752529819148877904 Gradescope:https://www.gradescope.com/courses/817458 Entry Code: WWWJZ5 (学校记得改成CMU) > In exchange for making this...
C++面向对象程序设计
发表于2025-03-21|C++ PrimerClass Design Techniques
本篇隶属C++ Primer中类设计工具专题,当前集中于面向对象程序设计。 什么是面向对象编程? 在面向对象编程(缩写为OOP)中,重点是创建程序定义的数据类型,这些数据类型既包含属性,也包含一组定义明确的行为。OOP中的“对象”一词,是指我们可以从此类类型中实例化的对象。 面向对象编程的核心理念是:数据抽象,继承和动态绑定。 继承 概述 基类:位于层次关系中的根部,定义所有类共同的成员变量和成员函数; 派生类:通过继承自动接收基类的成员函数和成员变量;可添加想要的其他函数或成员变量。 类派生列表:明确指出当前派生类是从哪个基类继承而来,示例: 1234class Bulk_Quote : public Quote{ // Bulk_Quote继承Quote public: double net_price() const override;} 定义基类和派生类 定义基类 12345678910111213141516class Quote{public: Quote()=default; Quote(cosn...
BUAA-OS Lab1 实验笔记
发表于2025-03-18|OSBUAA OS lab
总前言 操作系统是大二下学期的一门核心专业课,实验部分分为6个实验(Lab1 ~ Lab6)。采用增量式实验设计思想,每个实验包含的内核代码量在几百行左右,并提供了代码框架和代码示例,要求阅读源码、理解机制并补全核心代码。每个实验可以独立运行和评测,最后实现一个可以在MIPS平台上运行的小型操作系统。以此专题,纪念大二下的每个“备受折磨”的日夜,重温操作系统的核心理念。 实验代码仓库位于OS_on_MIPS. 总流程:实验编写的操作系统代码在Linux系统中,通过Makefile组织,通过交叉编译产生可执行文件;再使用QEMU模拟器运行该可执行文件,实现MOS操作系统的运行。 内核与启动 内核是操作系统最核心的部分,负责与硬件直接交互,并为用户进程提供服务。在计算机启动时,内核需要被加载到内存中,但不宜放在磁盘(CPU无法直接从磁盘访问数据)或内存(易失性)中,因此放在一个非易失性存储器中(如ROM或FLASH)。不过,将操作系统直接放入ROM或FLASH会面临以下几个问题: 1. 存储空间限制: ROM或FLASH的存储空间有限,无法存放较大的内核;...
C++标准库:容器、动态内存、同步原语
发表于2025-03-17|C++ Primer
接上一篇知识。 C++标准库容器 std::vector std::vector 是一种动态数组,可以根据需要自动调整大小,能够存储任意类型的元素。 向向量中添加元素 push_back 和 emplace_back 都用于向向量中添加元素。 emplace_back 通常比 push_back 更高效,因为它直接在内存中创建元素,而不需要先构造一个临时对象然后再移动。 12point_vector.push_back(Point(35, 36)); // 使用 push_back 添加元素point_vector.emplace_back(37, 38); // 使用 emplace_back 添加元素 遍历向量 直接/用下标遍历元素 12345std::cout << "Printing the items in point_vector:\n";for (size_t i = 0; i < point_vector.size(); ++i) { ...
Hello,world!C++中的引用、移动语义、模板、包装类、迭代器和命名空间
发表于2025-03-17|C++ Primer
前言 Hello,world!今天是2025年3月12日,这是本站的第一篇博客,也是我重新踏上自学CS之路的起点! 回想已流逝的两年半多本科时光,很多课程因为时间紧、任务重,学得像个“快餐式”程序员——知识点匆匆下肚,消化得却不咋样;ppt上的知识点背了一打,实践起来“一问三不知”。猛然发现,自己像个“半成品”,代码写得像“面条”,bug多得像“打地鼠”。 恰逢找到第一个日常实习,初尝真实的工作环境。实习之余决定重启学习,重新修炼“代码内功”。 从哪里开始呢?第一站是C++的基本语法。之前刷算法题时用过C++,每次没有类、没有封装、没有 unit test、没有 Makefile、没有 Git,唯一的优点是它确实能跑,缺点是“能跑”的补集;大三上做过一个4000行代码的Qt小项目,实现简单图像识别与参量的自动化计算(可见:https://github.com/WenLiuyi/fiber_Analysis )现已经成功打包成exe文件,可在Windows系统执行。但那过程简直像“渡劫”——装了几十个 G 的 Visual...
123
avatar
Liuyi Wen
文章
28
标签
5
分类
13
Follow Me
公告
The Journey Is the Reward.
最新文章
Transformer系列:2. Attention机制,MHA,MQA和GQA2025-05-19
Transformer系列:1. 从RNN到Transformer2025-05-13
Transformer的KV Cache2025-05-06
verl框架:2. 对比OpenRLHF+colocate思路解析2025-05-06
verl框架:1. Ray集群介绍+verl中基于Ray的执行流程解析2025-05-03
分类
  • Algorithms1
  • C++ Primer5
    • C++ STL2
    • Class Design Techniques1
  • Database5
    • CMU 14-4454
      • C++ Primer1
  • Introduction to AI3
标签
KV Cache Web Platforms Display C OOP C++
归档
  • 五月 2025 5
  • 四月 2025 7
  • 三月 2025 16
网站信息
文章数目 :
28
本站访客数 :
本站总浏览量 :
最后更新时间 :
©2019 - 2025 By Liuyi Wen
框架 Hexo 7.3.0|主题 Butterfly 5.3.5
搜索