【Linux身份鉴别机制原理】教程文章相关的互联网学习教程文章

2018-2019-1 20189210 《LInux内核原理与分析》第六周作业【图】

系统调用实验(下): 将第四章的两个实验集成到MenuOS系统中,将其作为MenuOS系统的两个命令,新版本的menu中已经把两个系统调用添加进去了,只需重新克隆一个新版本的menu。使用make rootf 打开menu镜像,可以看到MenuOS菜单中新增了两条命令,time和time-asm。使用gdb跟踪系统调用内核函数sys_time 同第二个实验,打开gdb,在函数中设置断点,按c继续执行,在断点处停下来,可以用list查看这段代码。 (实验楼的环境非常卡,经常...

2018-2019-1 20189204《Linux内核原理与分析》第五周作业

第四章——系统调用的三层机制(上) 4.1用户态、内核态和中断 库函数封装系统调用,使得程序员不直接接触到系统调用,保持整个系统的稳定,避免崩溃。 1.用户态与内核态的区分 内核只能被系统调用操作,系统调用可以被API、Shell、应用程序操作,API和SHELL可以被应用程序操作 2.Intel x86 CPU的执行级别——0~3,数字越小,级别越高 OS----Ring0 驱动程序----Ring1、Ring2 应用程序----Ring3 在Linux系统中只采用了其中的0和3两个...

《Linux内核原理与设计》第五周作业【代码】【图】

使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用 方法一:使用库函数API在屏幕上显示进程的ID先在实验楼中打开XFCE,在目录下输入指令: vi getpid.c;新建并打开getpid.c文件。随后再在VI中输入在网上查阅的实现getpid的函数代码后,保存并退出。随后再同gcc将该函数代码进行编译。再通过输入指令./getpid即可得出目前进程的ID为:22056.这种方式是用C语言使用库函数API进行系统调用。 方法二:使用C语言内嵌汇编代...

2018-2019-1 20189221《Linux内核原理与分析》第四周作业【代码】【图】

2018-2019-1 20189221《Linux内核原理与分析》第四周作业 教材学习:《庖丁解牛Linux内核分析》 第 3 章 MenuOS的构造 计算机三大法宝:存储程序计算机,函数调用堆栈,中断 操作系统两把宝剑:中断上下文,进程上下文 Linux内核源代码: Linux内核使用的是第二周时下载的Linux-2.6版本 Linux内核目录:init目录下的main.c函数:start_kernel():init_task():rest_init():随书学习很有收获,也算是为实验操作做了很多准备。 实验...

2018-2019-1 20189219《Linux内核原理与分析》第三周作业

我果然还是喜欢在夜晚的时候学习呀。很安静,能够静下心来学进去。说实话,老师的书写的确实是不错的,对于基础薄弱的我来说很是适用,基本不需要什么操作系统和内核的知识,也能够把书上的知识掌握。当然,边看边动手这个是不能少的。下面回归正题。 可能由于GFW的存在,去下个对应版本的Linux内核都是坑爹的事情.我就遇到过.实验室老师用的是3.4.9版本的内核.这里如果手边没有3.4.9的内核(我就这样),但是你手边有别的内核版本...

2018-2019-1 20189205 《Linux 内核原理与分析》第三周作业【代码】【图】

操作系统是如何工作的 内核实现 本周学习内容是实现一个简单的时间片轮转多道程序内核。 首先需要在Linux虚拟机中再构建一个虚拟的x86CPU硬件平台。这个平台的构建我们利用了部分Linux 3.9.4版本源代码以及网上的内核源代码。 内核搭建好后其启动效果如下:而后,我们需要在搭建好的内核的基础上,修改内核的源程序,构建我们所需的程序内核。 首先我们增加一个mypcb.h头文件,用于定义进程控制块(PCB)的数据结构。我们知道,在操作...

20189204《Linux内核原理与分析》第三周作业【代码】【图】

OS是如何工作的 学习任务: 阅读学习教材「庖丁解牛Linux 」第2章 学习蓝墨云班课中第三周视频「操作系统是如何工作的?」,并完成实验楼上配套实验二。 云班课学习笔记: 计算机三大法宝程序存储计算机 即冯诺依曼体系结构 函数调用堆栈 高级语言可以运行的起点就是函数调用堆栈 中断机制 深入理解函数调用堆栈 堆栈的功能记录函数调用的框架 传递函数参数 保存返回值地址 提供函数内部局部变量的存储空间堆栈相关的寄存器ESP:堆...

2018-2019-1 20189206 《Linux内核原理与分析》第三周作业【代码】【图】

linux内核分析学习笔记 ——第二章 操作系统是如何工作的计算机的“三大法宝”程序存储计算机 即冯诺依曼体系结构,基本上是所有计算机的基础性的逻辑框架 函数调用堆栈 高级语言可以运行的起点就是函数调用堆栈 中断机制函数调用堆栈堆栈的具体作用记录函数调用的框架 传递函数参数 保存返回值地址 提供函数内部局部变量的存储空间堆栈相关的寄存器ESP:堆栈指针,指向堆栈栈顶 EBP:基址指针,指向堆栈栈底,在C语言中记录当前函...

20189220 余超《Linux内核原理与分析》第三周作业【代码】

操作系统如何工作的 第二章的基础知识计算机的三大法宝:存储程序计算机,函数调用堆栈机制,中断。 堆栈:堆栈是C语言程序运行时必须使用的几率函数条用路径和参数存储的空间,具体作用分为:记录函数条用的框架,传递函数参数,保存返回的地址,提供函数内部局部变量的存储空间等。 esp:是栈指针,是cpu机制决定的,push、pop指令会自动调整esp的值。 ebp:只是存取某时刻的esp,这个时刻就是进入一个函数内后,cpu会将esp的值赋...

Linux内核原理与分析-第二周作业

写之前回看了一遍秒速五厘米:如果

20189220 余超《Linux内核原理与分析》第二周作业【图】

计算机如何工作的 一.存储程序计算机工作模型 冯诺依曼体系结构:核心思想为存储程序计算机。两个层面: (1)硬件的角度(计算机主板):一个CPU,一块内存,之间有总线连接。CPU内部有一个IP计算器,IP指向内存中的指令,并依次加一执行; (2)另一个层面,程序员的角度:存储程序计算机工作模型(如下图)解释:CPU抽象为for循环,总是执行下一条指令,内存保存指令和数据,CPU来解释和执行这些指令。 API:应用程序编程接口(...

Linux高性能网络:协程系列04-协程实现之工作原理【代码】【图】

目录Linux高性能网络:协程系列01-前言 Linux高性能网络:协程系列02-协程的起源 Linux高性能网络:协程系列03-协程的案例 Linux高性能网络:协程系列04-协程实现之工作原理 Linux高性能网络:协程系列05-协程实现之原语操作 Linux高性能网络:协程系列06-协程实现之切换 Linux高性能网络:协程系列07-协程实现之定义 Linux高性能网络:协程系列08-协程实现之调度器 Linux高性能网络:协程系列09-协程性能测试[Linux高性能网络:协...

《Linux内核原理与分析》第二周作业【代码】【图】

反汇编一个简单的C程序 1、实验要求 使用: gcc –S –o test.s test.c -m32 命令编译成汇编代码,对汇编代码进行分析总结。其中test.c的具体内容如下: int g(int x) {return x + 3; }int f(int x) {return g(x); }int main(void) {return f(8) + 1; } 2、实验过程使用vim对test.c进行编辑,将上述代码键入 使用gcc对test.c编译,产生test.s文件gcc -S -o test.s test.c -m32 如下图所示:使用vim查看test.s文件 查看test.s文件,...

Linux内核原理与分析——第一周作业【图】

Linux内核原理与分析 - 第一周作业实验1 Linux系统简介 Linux历史 1991 年 10 月,Linus Torvalds想在自己的电脑上运行UNIX,可是 UNIX 的商业版本非常昂贵,于是他基于MINIX开发了初版的Linux。在之后越来越多的人加入其中,开发Linux。 Linux与Windows的不同 Linux:免费 支持开源自由软件 安全性较强 主要使用命令行 系统可定制 多用户和用户和用户组的规划Linux学习步骤Linux初级Linux系统安装 Linux图形界面使用 Linux常用命令...

20189220 余超《Linux内核原理与分析》第一周作业【代码】【图】

实验一 Linux系统简介 通过实验一主要是学习到了Linux 的历史简介,linux与windows之间的区别,主要是免费和收费,软件和支持,安全性,使用习惯,可制定性,应用范畴等。linux具有稳定的系统,安全性和漏洞的快速修补,多用户,用户和用户组的规划,相对较少的系统资源占用,可定制裁剪,移植到嵌入式平台(如安卓设备),可选择的多种图形用户界面(如 GNOME,KDE)等优点。因为是第一次接触到Luinx的操作系统,直观感受就是luinx上许多...