编译原理-词法语法理论

· 编译原理

编译原理-词法语法理论 第二章创建一个简单的语法指导器里面设计了很多理论知识,暂时只记录关键概念。这一章看的很困,外面阳光明媚,只能通过打字来压制一下困意😂😂😂 关键概念 语法制导翻译器 语法制导翻译器是用于构建语法翻译器的程序 语法的定义 一种用于描述程序设计语言语法的表示方法 - “上下文无关文法”,这种文法用于前端编译器 语法分析器 语法分析是决定如何通过一个文法生...

Read More →
#笔记

编译原理-引言

· 编译原理

编译原理-引言 大概是在开始学习编写程序的时候购入了一系列的计算机基础书籍,由于自己的原因导致很多书都只是寥寥翻开几页,就匆匆放下了. 近来这两年,随着年纪的增大忽然有了一个念头就是自己的程序生涯已经快要结束,但是还有那么多书未看未读,有一些惋惜和不舍.不舍的既有对知识的向往也有对年轻的奢望,惋惜的是荒废了大好年华.不如把既有的书籍看完,也是完成当初对自己的期待和结束吧. 碎碎念了很久,让我们接下...

Read More →
#笔记

redis如何实现持久化的

· 杂记

redis如何实现持久化的 redis目前实现持久化主要有两种方式,一种是通过RDB文件,另外一种是通过AOF文件. redis对于持久化支持4种部署方式 无持久性 RDB AOF RDB + AOF 让就让我们来详细比较和分析以下redis底层是如何实现的RDB和AOF机制的 RDB文件 RDB定义 RDB 持久性指的是在指定时间间隔后执行记录当前数据集的全部数据快照 RDB文件就类...

Read More →
#redis

redis源代码构建

· 杂记

redis源代码构建 主要用来记录以下在WSL下编译和部署redis源码的过程 环境准备 WSL wsl2搭配Ubuntu 18.04使用,这一项不是必须的 Clion JetBrains的C/C++ IDE,这一项也不是必须的 源代码 https://github.com/redis/redis 构建过程 按照Linux编译工具 apt update apt install...

Read More →
#redis

redis底层数据结构分析

· 杂记

redis底层数据结构分析 redis底层数据结构分析主要是根据《Redis5 设计与源码分析》一书的章节而来,参考对照代码版本为6.2,源代码的编译和部署可以查看上一篇文章 redis底层数据结构可以划分为 简单动态字符串 跳跃表 压缩列表 字典 整数集合 quicklist stream 这七种数据类型,下面分别对这七种数据类型进行分析 简单动态字符串 数据结构 简单动态字符串又被称为SD...

Read More →
#redis

深入理解linux内核笔记

· 笔记

深入理解linux内核笔记 内核 unix内核根据执行状态分为’用户态’和’执行态’ 用户与内核态的切换 进程调用系统调用 触发异常(exception) 响应中断 内核线程的执行(这里有一些歧义,本身就是内核态) 进程描述符 进程描述符是用来描述当前正在运行的进程的详细信息,包括以下几个部分 - 程序计数器和栈指针 - 通用寄存器 - 浮点寄存器 - 内存管理寄存器 可重入内核 ...

Read More →
#linux