摘要: 一、系统调用 Linux系统一般有4个主要部分:内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。 Linux 操作系统的体系架构分为⽤户态和内核态。 在内核态,所有的指令包括特权指令都可以执行。相应的,在⽤户 阅读全文
posted @ 2020-07-09 17:51 别骂了 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 一、以fork和execve系统调用为例分析中断上下文的切换 1.fork系统调用 fork系统调用用于从已存在进程中创建一个新进程,新进程称为子进程,而原进程称为父进程。fork调用一次,返回两次,这两个返回分别带回它们各自的返回值。 下面是fork()返回的不同值。 负值:创建子进程失败。零:返 阅读全文
posted @ 2020-06-15 20:08 别骂了 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 一、实验要求 找一个系统调用,系统调用号为学号最后2位相同的系统调用。本人学号最后2位为30,采用30号调用 通过汇编指令触发该系统调用 通过gdb跟踪该系统调用的内核处理过程 重点阅读分析系统调用入口的保存现场、恢复现场和系统调用返回,以及重点关注系统调用过程中内核堆栈状态的变化 二、实验环境 V 阅读全文
posted @ 2020-05-27 14:29 别骂了 阅读(607) 评论(0) 推荐(0) 编辑
摘要: 一、实验要求 1.按照https://github.com/mengning/mykernel 的说明配置mykernel 2.0,熟悉Linux内核的编译; 2.基于mykernel 2.0编写一个操作系统内核,参照https://github.com/mengning/mykernel 提供的范 阅读全文
posted @ 2020-05-13 17:04 别骂了 阅读(188) 评论(0) 推荐(0) 编辑