摘要: Linux内核实现了操作系统的三⼤核⼼功能,即进程管理、内存管理和⽂件系统。 程序和数据均储存在硬盘中,由文件系统管理,Linux系统中一切皆文件。运行中的程序在内存中以进程为单位进行管理,用进程控制块来描述进程。 电脑加电启动⾸先从硬盘中加载操作系统内核至内存中运行,接着挂载⽂件系统,之后不断地将 阅读全文
posted @ 2020-07-09 22:36 广宇 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 一、fork系统调用 fork系统调用用于创建一个新进程,称为子进程,它与进程(称为系统调用fork的进程)同时运行,此进程称为父进程。创建新的子进程后,两个进程将执行fork()系统调用之后的下一条指令。子进程使用相同的pc(程序计数器),相同的CPU寄存器,在父进程中使用的相同打开文件。 它不需 阅读全文
posted @ 2020-06-15 16:03 广宇 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 为了安全,Linux 中分为用户态和内核态两种运行状态。对于普通进程,平时都是运行在用户态下,仅拥有基本的运行能力。当进行一些敏感操作,比如说要打开文件(open)然后进行写入(write)、分配内存(malloc)时,就会切换到内核态。内核态进行相应的检查,如果通过了,则按照进程的要求执行相应的操 阅读全文
posted @ 2020-05-25 21:13 广宇 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 一、实验环境 二、实验内容 按照 https://github.com/mengning/mykernel 的说明配置mykernel 2.0。 对mykernel文件夹中的mymain.c,myinterrupt.c,mypcb.h进行修改编写一个简单的操作系统内核。 进程控制块和线程的数据结构在 阅读全文
posted @ 2020-05-12 16:22 广宇 阅读(141) 评论(0) 推荐(0) 编辑