摘要: Linux模型 Linux系统一般有4个主要部分:内核、shell、文件系统和应用程序。 内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。 而Linux内核主要完成了以下几个功能: 中断 中断是指在CPU正常运行期间,由于内外部事件或由程序预先安 阅读全文
posted @ 2020-07-09 19:42 LemonTreeKjy 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 一.前置知识 正常触发系统调⽤时,⽤户态通过syscall指令触发系统调⽤, 跳转到系统调⽤⼊⼝的汇编代码。syscall指令触发entry_SYSCALL_64并以sysret或iret返回系统调⽤ 系统调⽤陷⼊内核态,从⽤户态堆栈转换到内核态堆栈,然后把相应的CPU关键的现场栈顶寄存器、指令指针 阅读全文
posted @ 2020-06-13 22:46 LemonTreeKjy 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 深入理解系统调用 本文将基于Linux内核通过调试跟踪,深入理解Linux的系统调用过程。本人学号04结尾,在arch/x86/entry/syscalls/syscall_64.tbl 可以找到04号为stat系统调⽤,因此以系统调用stat为例进行展开。 一、实验目的 1.找一个系统调用,系统调 阅读全文
posted @ 2020-05-27 22:55 LemonTreeKjy 阅读(741) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2020-05-22 15:48 LemonTreeKjy 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 实验环境配置 mykernel 2.0 "参考链接" 本机环境 VMware® Workstation 15 Pro + Ubuntu18.04.2 配置实验环境 在Ubuntu环境中,右键打开terminal(默认在/home/user目录下,比如我就是/home/lemon),按照下面的顺序配置 阅读全文
posted @ 2020-05-13 16:19 LemonTreeKjy 阅读(136) 评论(0) 推荐(1) 编辑