2019-2020-1 20199303第二周作业 1.汇编与寄存器的学习 寄存器是中央处理器内的组成部份.寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令.数据和位址.在中央处理器的控制部件中,包含的寄存器有指令寄存器(IR)和程序计数器(PC).在中央处理器的算术及逻辑部件中,包含的寄存器有累加器(ACC). 寄存器是内存阶层中的最顶端,也是系统获得操作资料的最快速途径.寄存器通常都是以他们可以保存的位元数量来估量,寄存器通常都用来意指由一个指令之输出或输入可以直接索引到的暂存器群组.…
"linux内核分析"的第一讲主要讲了计算机的体系结构,和各寄存器之间对数据的处理过程. 通用寄存器 AX:累加器 BX:基地址寄存器 CX:计数寄存器 DX:数据寄存器 BP:堆栈基址针 SI.DI:变址寄存器 SP:堆栈顶指针 段寄存器 CS:代码段寄存器,指向包含程序指令的段. SS:栈段寄存器,指向包含当前程序栈的段. DS:数据段寄存器,指向包含静态数据或者全局数据段. ES:附加寄存器,指向附加数据段. IP:指令指针.CPU在实际取指令时根据CS:IP来准确定位一个指令.…
1.基础学习内容 1.1 冯诺依曼体系结构 计算机由控制器.运算器.存储器.输入设备.输出设备五部分组成. 1.1.1 冯诺依曼计算机特点 (1)采用存储程序方式,指令和数据不加区别混合存储在同一个存储器中. (2)存储器是按地址访问的线性编址的一维结构,每个单元的位数是固定的. (3)指令由操作码和地址组成.操作码指明本指令的操作类型,地址码指明操作数和地址.操作数本身无数据类型的标志,它的数据类型由操作码确定. (4)通过执行指令直接发出控制信号控制计算机的操作.指令在存储器中按其执行顺序存…
本科期间,学校开设过linux相关的课程,当时的学习方式主要以课堂听授为主.虽然老师也提供了相关的学习教材跟参考材料,但是整体学下来感觉收获并不是太大,现在回想起来,主要还是由于自己课下没有及时动手实践.练习与总结.这几天又重新温习了一下实验楼各章节的基础实验课程,发现自己还是有好多基础命令掌握的不太牢固.另外,在参考对比了第一节——linux简介中给出的linux学习路径之后,发现自己之前的学习方式与方法存在很多的不足与弊端,以至于走了一些弯路. 实验楼的linux基础入门(新版)分成十七个小…
前言 本周对实验楼的Linux基础入门进行了学习,目前学习到实验九完成到挑战二. 学习和实验内容 快速学习了Linux系统的发展历程及其简介,学习了下的变量.用户权限管理.文件打包及压缩.常用命令的和crontab指令. 学习流程图衔接如下: https://graph.baidu.com/thumb/v3/2928286388,1126100969.jpg 简要的学习图 遇到的问题 备份日志 在学习中也不断遇到一些问题.最大的难题在挑战二备份日志中,如何对vim编辑器进行操作就是一个问题.在之…
写之前回看了一遍秒速五厘米:如果…
系统调用 系统调用是用户空间访问内核的唯一手段:除异常和陷入外,它们是内核唯一的合法入口. 一般情况下,应用程序通过在用户空间实现的应用编程接口(API)而不是直接通过系统调用来编程. 要访问系统调用,通常通过C库中定义的系统调用来进行.系统调用还会通过一个long类型的返回值来表示成功或者错误.负的返回值表示错误,返回0通常表明成功. Linux中每个系统调用都有一个系统调用号.通过这个独一无二大的号就可以关联系统调用.当用户空间的进程执行一个系统调用的时候,这个系统调用号就用来指明到底是要执…
Linux内核原理与分析 - 第一周作业 实验1 Linux系统简介 Linux历史 1991 年 10 月,Linus Torvalds想在自己的电脑上运行UNIX,可是 UNIX 的商业版本非常昂贵,于是他基于MINIX开发了初版的Linux.在之后越来越多的人加入其中,开发Linux. Linux与Windows的不同 Linux: 免费 支持开源自由软件 安全性较强 主要使用命令行 系统可定制 多用户和用户和用户组的规划 Linux学习步骤 Linux初级 Linux系统安装 Linux…
<Linux内核原理与分析>第十三周作业 一.本周内容概述 通过重现缓冲区溢出攻击来理解漏洞 二.本周学习内容 1.实验简介 注意:实验中命令在 xfce 终端中输入,前面有 $ 的内容为在终端输入的命令,$ 号不需要输入.命令上有 # 的内容为注释,不需要输入 适用人群: 有 C 语言基础 会进制转换以及计算 vim 基本使用 熟悉基本 linux 命令 缓冲区溢出是指程序试图向缓冲区写入超出预分配固定长度数据的情况.这一漏洞可以被恶意用户利用来改变程序的流控制,甚至执行代码的任意片段.这一…
<Linux内核原理与分析>第十二周作业 一.本周内容概述: 通过编程理解 Set-UID 的运行机制与安全问题 完成实验楼上的<SET-UID程序漏洞实验> 二.本周学习内容: 1.学习<SET-UID程序漏洞实验>的背景和理论知识 1.1 实验简介 Set-UID 是 Unix 系统中的一个重要的安全机制.当一个 Set-UID 程序运行的时候,它被假设为具有拥有者的权限.例如,如果程序的拥有者是root,那么任何人运行这个程序时都会获得程序拥有者的权限.Set-U…