会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
DYLARIS
博客园
首页
新随笔
新文章
联系
订阅
管理
posts - 91,comments - 0,views -
12645
2025年3月12日
目标文件里有什么
摘要: 目标文件的格式 目前主要流行两种,均是 COFF格式 的变体 windows -> PE (portable executable) linux -> ELF (executable linkable format) ELF格式文件类型 (PE类似) 可重定位文件 (relocatable file
阅读全文
posted @ 2025-03-12 19:35 Dylaris
阅读(1)
评论(0)
推荐(0)
编辑
2025年3月11日
linux如何打开core dump?
摘要: 以我使用的 wsl(ubuntu22.04) 为例 当我们的程序出现段错误时,一般会报 Segmentation Fault,打开 core dump 后,会生成核心转储文件,它保存的是出错是程序的内存映像,方便后续调试查看,它的报错信息也会变成 Segmentaion Fault (core du
阅读全文
posted @ 2025-03-11 22:39 Dylaris
阅读(4)
评论(0)
推荐(0)
编辑
2025年3月10日
冒泡排序
摘要: 概念 以下排序是基于 升序 的,也就是 从小到大 排序 冒泡排序就是 交换邻近元素,确保相对顺序是对的,简单来说就是 不断的把大的元素推向最右边,和选择排序刚好相反 伪代码 for i <- n-1 downto 1 do for j <- 0 to i-1 do if arr[j] > arr[j
阅读全文
posted @ 2025-03-10 14:46 Dylaris
阅读(4)
评论(0)
推荐(0)
编辑
选择排序
摘要: 概念 以下排序是基于 升序 的,即 从小到大 排序 选择排序就是 每次选取最小的那个元素,并把它与第一个元素交换,简而言之,就是 把最小的元素不断的推到左边 伪代码 min_idx <- 0 // 初始化最小值的索引 for i <- 0 to n - 2 do // 只对array[i:]的元素排
阅读全文
posted @ 2025-03-10 14:22 Dylaris
阅读(4)
评论(0)
推荐(0)
编辑
2025年2月24日
类c编译器------语法树(AST) -> 三地址码(TAC) -> x86汇编(ASM)
摘要: 算数表达式 例子: 2 + 3 * 5 - 8 / 3 AST的生成 需要注意运算符的优先级 递归下降解析 (递归层次越深,优先级越高) 普拉特解析 (运算符权重越大,优先级越高) AST: (expression) | (-) / \ / \ (+) (/) / \ / \ 2 (*) 8 3 /
阅读全文
posted @ 2025-02-24 18:16 Dylaris
阅读(1)
评论(0)
推荐(0)
编辑
2024年12月29日
POSIX 多线程 ------ 线程
摘要: 多线程 当引入线程后,进程可以看作是 资源的集合,线程可以看作是 执行单元,线程之间共享进程的某些资源,比如文件描述符等等,这方便了线程之间的通信,每个线程都有自己的堆栈(因为线程的启动函数可能不同,甚至可能递归) 简单来说就是,同一个进程内的线程可以共享一些资源,每个线程都有自己的执行环境 初始线
阅读全文
posted @ 2024-12-29 22:06 Dylaris
阅读(8)
评论(0)
推荐(0)
编辑
2024年12月24日
数据库系统------并发控制
摘要: 基于锁的协议 锁机制用于控制 并发访问 数据项 锁协议是事务在请求和释放锁时需要遵循的一组规则。锁协议的目的是确保事务的并发执行不会导致数据的不一致性,同时帮助系统避免死锁和其他问题 锁的两种模式 排它锁(Exclusive Lock,X模式) 目的:一个事务在对数据项进行操作时,可以对数据项进行
阅读全文
posted @ 2024-12-24 18:16 Dylaris
阅读(26)
评论(0)
推荐(0)
编辑
2024年12月23日
数据库系统------事务
摘要: 什么是事务(transactions) 事务代表了 一组操作的集合,这些操作要么 全部执行,要么 全部不执行 ACID 特性 原子性 Atomicity: 原子性,指事务的操作要么全部执行,要么全部不执行 假设我正在进行一个插入操作,要插入多条记录,那么这个插入操作就是一个事务,它会为插入的每条记录
阅读全文
posted @ 2024-12-23 21:08 Dylaris
阅读(50)
评论(0)
推荐(0)
编辑
数据库系统------连接操作
摘要: 什么是连接 连接就是把一个或多个来自不同表的元组通过相同的属性字段合并成一个大的元组 如上图,把属性 ID 相同的两个元组(来自不同表)合并成一个大的元组 连接属性是否有 索引(快速定位),是否 有序(是否要全表扫描),还有 内存访问 和 磁盘访问 的速度都会影响连接操作的成本 theta 连接 t
阅读全文
posted @ 2024-12-23 16:02 Dylaris
阅读(81)
评论(0)
推荐(0)
编辑
2024年12月21日
数据库系统------查询处理
摘要: 什么是查询处理 下图是查询处理的基本步骤 首先我们输入一串 sql语句,这就是 query 查询,然后会交给 parser 解析器进行内部的处理,比如将 sql语句 转换成 关系代数 等,同一个操作可以有不同的 关系代数表达式,我们最好是选择 执行代价 最小的那一种,这就是 optimizer 优化
阅读全文
posted @ 2024-12-21 23:19 Dylaris
阅读(42)
评论(0)
推荐(0)
编辑
下一页
<
2025年3月
>
日
一
二
三
四
五
六
23
24
25
26
27
28
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
昵称:
Dylaris
园龄:
9个月
粉丝:
0
关注:
0
+加关注
搜索
常用链接
我的随笔
我的评论
我的参与
最新评论
我的标签
随笔分类
C与汇编(1)
C语言(10)
Linux Shell脚本攻略(2)
linux系统调用(19)
Orange's 一个操作系统的实现(4)
os(1)
x86汇编语言从实模式到保护模式(11)
常遇问题(13)
汇编语言(4)
机器学习(3)
链接、装载与库(1)
数据库系统(14)
算法(2)
文件系统(2)
随笔档案
2025年3月(4)
2025年2月(1)
2024年12月(7)
2024年11月(5)
2024年10月(15)
2024年9月(23)
2024年8月(19)
2024年7月(16)
2024年6月(1)
相册
bochs安装配置(9)
c指针(6)
Linux(12)
linux_sys(6)
x86(74)
保护模式(11)
阅读排行榜
1. vscode中launch.json和tasks.json的基础配置(3175)
2. 数据库系统------关系数据模型(1189)
3. 虚拟机(ubuntu22.04)空间不足,进行硬盘扩容(1110)
4. 虚拟机(ubuntu22.04)安装与配置bochs(1055)
5. 虚拟机(ubuntu22.04)安装jupyter notebook(575)
推荐排行榜
1. vscode中launch.json和tasks.json的基础配置(1)
点击右上角即可分享