计算机系统基础
天涯人2123
这个作者很懒,什么都没留下…
展开
-
系统I/O
共享文件内核使用三个相关的数据结构来表示打开的文件1.描述符表:每个进程都有独立的描述符表。他的表项是由进程打开的文件描述符索引的,每个打开的文件描述符指向文件表当中的一项。2.文件表:打开的文件集合是由一张文件表来表示的所有的进程共享这张表。每个文件表的表项的组成:当前文件的位置,引用计数,一个指向v-node表中对应表项的指针。关闭一个描述符会减少相应文件表表项当中的引用计数,直到这个引...原创 2019-12-08 16:39:27 · 114 阅读 · 0 评论 -
可重定位目标文件
从源代码到可执行目标文件要经过以下几个步骤:源代码-->预处理-->编译-->优化-->汇编-->链接–>可执行文件Source–(编译)–> Assembly–(汇编)–>Obj–(链接)–>PE/ELF1.编译预处理读取c源程序,对其中的伪指令(以#开头的指令)和特殊符号进行处理[析] 伪指令主要包括以下四个方面(1)宏定义指令...原创 2019-12-08 16:32:47 · 1219 阅读 · 0 评论 -
Csapp之fork()函数
fork()定义:pid_t fork( void);(pid_t 是一个宏定义,其实质是int 被定义在#include<sys/types.h>中)返回值: 若成功调用一次则返回两个值,子进程返回0,父进程返回子进程ID;否则,出错返回-1一个现有进程可以调用fork函数创建一个新进程。由fork创建的新进程被称为子进程(child process)。fork函数被调用一次...原创 2019-12-08 16:13:02 · 203 阅读 · 0 评论 -
计算机系统基础作业
计算机系统基础本学期我们主要学习了:1.数据的表示和存储2.运算电路基础3.乘除运算及浮点数运算4.IA32指令系统概述5.IA32指令类型6.C语言的语句的机器级表示那么我们来回忆并总结一下本学期的主要内容,主要以代码运行的方式进行:一、汇编代码的生成以及初步互译/* Demonstration of buffer overflow */#include <stdio...原创 2019-05-26 19:16:16 · 710 阅读 · 0 评论