CMU15-445

本文最后更新于:20 天前

CMU15-445环境搭建及实操

官网:https://15445.courses.cs.cmu.edu/spring2023/

前提

提前安装好WSL2,这里我使用的系统是Ubuntu 22.04 LTS版

CMU15-445必需的环境:

  1. git
  2. clang
  3. gdb
  4. cmake
1
sudo apt install git cmake clang gdb
SHELL

配置CMU15-445

  1. 创建一个Github私有库

  2. 克隆公开的BusTub仓库

    1
    $ git clone --bare https://github.com/cmu-db/bustub.git bustub-public
    SHELL
  3. 将公共的BusTub存储库push到自己的私有BusTub存储库

    1
    2
    3
    cd bustub-public
    git push 你的私有库的git仓库地址 master
    rm -rf bustub-public
    SHELL
  4. 将私有存储库克隆到使用的开发计算机中

    1
    git clone 你的私有库的git仓库地址
    SHELL
  5. 从私有存储库的项目设置中禁用 GitHub Actions,否则您可能会用完 GitHub Actions 配额

    1
    Settings > Actions > General > Actions permissions > Disable actions.
    SHELL

编译CMU15-445

  1. 为了确保您的计算机上有正确的软件包,请运行以下脚本来自动安装它们

    1
    sudo build_support/packages.sh
    SHELL
  2. 然后运行以下命令来构建系统

    1
    2
    3
    4
    mkdir build
    cd build
    cmake ..
    make
    SHELL
  3. 如果要在调试模式下编译系统,请将以下标志传递给 cmake,默认情况下,这会启用AddressSanitizer

    1
    2
    cmake -DCMAKE_BUILD_TYPE=Debug ..
    make -j`nproc`
    SHELL
  4. 测试

    1
    2
    cd build
    make check-tests
    SHELL

C++ Primer

详见C++ Primer

Buffer Pool Manager

详见Buffer Pool Manager

B+Tree Index

详见B+Tree Index

Query Execution

详见Query Execution

Concurrency Control

详见Concurrency Control


CMU15-445
https://codingwkang.github.io/2023/08/24/CMU/
作者
BlueHole
发布于
2023年8月24日
更新于
2023年8月28日
许可协议