2024-01-31
前言
使用hexo在GitHub部署静态博客时,上传到仓库的是bianry文件(在.deploy_git中),无法直接查看源码。这里介绍一种方法,将源码也上传到仓库,方便查看。
使用多分支管理
在GitHub创建一个hexo分支,并将其设置为默认分支;
将其clone到本地,默认clone的是hexo分支内容,此时会包含一个.git文件夹,还有原本仓库中有...
Read More
2023-12-05
安装nodejs
从官网下载安装
使用nvm
12nvm install node # 安装最新版本nvm use node # 使用最新版本
使用 curl 方式安装最新版本
12curl -sL https://deb.nodesource.com/setup_current.x | sudo -E bash -sudo apt-get inst...
Read More
2023-10-18
html定义了网页内容
css描述了网页的布局
js控制了网页的行为(通过函数)
HTML
HTML: 超文本标记语言,运行在浏览器上,由浏览器来解析。文件名后缀为.html。
123456789101112<!DOCTYPE html> <!-- 声明文档类型 --><html lang="en">...
Read More
2023-10-10
GCC 工作流程
说明
文件后缀
参数
预处理
.c
-
编译
.i
-E
汇编
.s
-S
链接
.o
-c
12345678# 预处理。 -o 参数是为了指定编译后的文件名gcc -E test.c -o test.i# 编译gcc -S test.i -o test.s # 汇编gcc -c test.s -o test...
Read More
2023-10-10
线程同步和线程通信
线程同步
互斥锁
条件变量
互斥量
信号量
线程通信
条件变量
队列
原子操作
条件变量和定时器
C++标准库提供了哪些锁?
std::mutex:互斥锁是最基本的锁类型,用于确保一次只有一个线程可以访问共享资源。你可以使用 std::mutex 来创建一个互斥锁对象,然后使用 lock() 和 unlock() 方法来手动锁定和...
Read More
2023-10-08
Background
Computational Thinking
input --> black box --> output
binary/bit: A bit is a zero or one
text: using ASCII
Emojis: Unicode
RGB: three numbers
Images, Video and So...
Read More
2023-08-25
冯诺依曼模型
运算器
控制器
存储器
输入设备
输出设备
内存
程序和数据都是存储在内存中,存储的区域是线性的。存储数据的基本单位是字节(byte),一字节等于8位(bit),每一个字节对应着一个内存地址。
中央处理器CPU
32位和64位CPU最主要区别在于一次能计算多少字节的数据
32位一次能计算4个字节,虚拟内存空间大小为232,4G
64位一...
Read More
2023-08-21
project4需要实现的内容
project任务链接
Lock Manager:
src/include/concurrency/lock_manager.h
concurrency/lock_manager.cpp
Lock Manager的作用是什么?
Lock Manager 的作用是处理事务发送的锁请。事务在被允许访问某个数据项之前,需要先向锁管理...
Read More
2023-08-21
在做project4之前,最好是先学习课件内容。
课件地址
Concurrency Control:avoid losting updates
Recovery: Durability
概念
事务
A transaction is the execution of a sequence of one or more operations (e.g., SQ...
Read More
2023-08-17
执行引擎介绍
一条SQL语句进入到数据库中后是如何被执行的?
前两个project实现的buffer pool和index都是存储引擎的一部分。
执行计划可以看作一个有向无环图,由source开始到sink结束,中间是一个又一个的算子。这一个project实现的就是这些算子。
课件地址:https://15445.courses.cs.cmu.edu/fa...
Read More
Previous 1 … 4 5 6 7 8 Next