摘要: 1、中断浅析 第一阶段--获取中断号每个CPU都有响应中断的能力, 每个CPU响应中断时都走相同的流程. 这个流程就是内核提供的中断服务程序.在进入中断服务程序时, CPU已经自动禁止了本CPU上的中断响应, 因为CPU不能假定中断服务程序是可重入的.中断处理程序的第一步要做两件事情:1. 将中断号 阅读全文
posted @ 2013-06-30 21:03 basuny 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 学号:SA12226343 姓名:sunhongbo一、操作系统工作的基础存储程序计算机和堆栈(函数调用堆栈)机制以及中断机制是操作系统工作的基础。 现代计算机仍采用存储程序计算机的结构体系和工作原理。程序输入到计算机,存储在内存储器,运行时,由控制器中的指令寄存器指针(x86的EIP)按地址逐条从存储器中取指令,分析指令,执行,遇到转移指令,在跳转,继续按地址顺序访问指令。 堆栈是函数调用的基础。在一个函数切换到另一个函数去执行指令之前,要保存当前函数一些信息,以便能够在调用函数执行后能使得当前函数继续执行。这过程要... 阅读全文
posted @ 2013-06-30 20:59 basuny 阅读(588) 评论(1) 推荐(0) 编辑
摘要: 一.fork和execl 我们先尝试编写创建两个程序,来理解Linux创建新进程的过程: 1 #include <sys/systypes.h> 2 #include <unistd.h> 3 4 int main() 5 { 6 if (fork() == 0) { 7 print("Child process!\n"); 8 } else { 9 print("Parent process!\n");10 }11 return 0;12 } 运行结果为:Child process!Parent process! 代码二... 阅读全文
posted @ 2013-06-13 19:44 basuny 阅读(959) 评论(0) 推荐(0) 编辑
摘要: 1、sudo nautilus以root权限打开一个窗口来管理文件,这样只有root才能,粘贴、复制、删除的文件当前用户也可以操作。如果使用su root,还要使用命令完成复制等。2、tar.xz文件格式的解压命令分两层:xz -d linux-3.9.4.tar.xz tar -xf linux-3.9.4.tar3、下载安装ncurses下载地址http://ftp.gnu.org/pub/gnu/ncurses/安装:tar zxvf ncurses5.9.tar.gz 解压缩并且释放 文件包 cd ncurses5.9 进入解压缩的目录(注意版本) ./configure... 阅读全文
posted @ 2013-06-10 15:53 basuny 阅读(383) 评论(0) 推荐(0) 编辑
摘要: SA****6343 孙洪菠对进程的创建与可执行程序的加载总结如下: linux系统通过函数fork()、exec()来创建一个新的进程,更确切的说,这两个函数是分别用于进程的创建和进程修改,函数fork()用来创建一个新的进程,该进程几乎是当前进程的一个完全拷贝;函数族exec()用来启动另外的进程以取代当前运行的进程。一、进程的创建过程: Linux中创建进程的调用fork实际上是调用do_fork(),do_fork在做一些预处理之后,实际上是调用copy_process()函数复制进程。copy_process... 阅读全文
posted @ 2013-05-30 23:10 basuny 阅读(526) 评论(0) 推荐(0) 编辑
摘要: Linux系统中进程堆栈的使用Linux 0.12系统中共使用了4种堆栈。第1种是系统引导初始化时临时使用的堆栈;第2种是进入保护模式之后提供内核程序初始化使用的堆栈,位于内核代码地址空间固定位置处。该堆栈也是后来任务0使用的用户态堆栈;第3种是每个任务通过系统调用,执行内核程序时使用的堆栈,我们称之为任务的内核态堆栈。每个任务都有自己独立的内核态堆栈;第4种是任务在用户态执行的堆栈,位于任务(进程)逻辑地址空间近末端处。使用多个栈或在不同情况下使用不同栈的主要原因有两个。首先是由于从实模式进入保护模式,使得CPU对内存寻址访问方式发生了变化,因此需要重新调整设置栈区域。另外,为了解决不同CP 阅读全文
posted @ 2013-05-30 22:36 basuny 阅读(289) 评论(0) 推荐(0) 编辑
摘要: X~b(n,p),其中n≥1,0<p<1. P{X=k}=C(n,k)*p^k*(1-p)^(n-k),k=0,1,...,n. EX=np,DX=np(1-p). 最简单的证明方法是:X可以分解成n个相互独立的,都服从以p为参数的(0-1)分布的随机变量之和: 证明方法: X=X1+X2+...+ 阅读全文
posted @ 2013-05-17 13:06 basuny 阅读(1949) 评论(0) 推荐(0) 编辑
摘要: SA****6343 孙洪菠 信息安全一、C程序的编译过程1.1 C程序的编译过程: GCC接受example.c作为输入,最后生成可执行代码example的看似简单的流程所经历的复杂步骤 编译预处理:读取c源程序,对其中的伪指令(以#开头的指令)和特殊符号进行处理; 编译阶段:通过词法分析和语法分析,在确认所有的指令都符合语法规则后,将其翻译成等价的中间代码表示或汇编代码; 汇编阶段:把汇编代码翻译成目标机器指令; 链接:将有关的目标文件彼此连接。1.2 源文件Example.c 1 //Exa... 阅读全文
posted @ 2013-05-16 20:21 basuny 阅读(320) 评论(0) 推荐(0) 编辑