自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

转载 汇编指令

(一)8086/8088寻址方式 首先,简单讲述一下指令的一般格式: 操作码 操作数 …… 操作数 计算机中的指令由操作码字段和操作数字段组成。 操作码:指计算机所要执行的操作,或称为指出操作类型,是一种助记符。 操作数:指在指令执行操作的过程中所需要的操作数。该字段除可以是操作数本身外,也可以是操作数地址或是地址的...

2016-06-06 13:48:00 469

转载 《Linux内核分析》期中总结

  两个月Linux内核的学习,让我理解了Linux内核的基本工作原理,包括进程管理、内存管理、设备驱动、文件系统,从分析内核到了解整个系统是如何工作的、如何控制管理资源分配、进程切换并执行、各种策略和结构让系统运行时更有效率等。每周都要看视频、做实验、写博客,在一点一滴的积累中,我逐渐弄清楚Linux内核的脉络,更令我感到欣喜的是本来略感散乱的知识点也在最后一节课的总览里看到了其内在联...

2016-04-27 18:12:00 371

转载 《Linux内核分析》之第四章读书笔记

4.1多任务   多任务操作系统:同时并发地交互执行多个进程的操作系统   多任务操作系统会使多个进程处于堵塞或者睡眠状态。这些任务尽管位于内存,但是并不处于可运行状态。这些进程利用内核堵塞自己,直到某一事件发生。   多任务系统可以划分为两类:非抢占式和抢占式。   抢占:强制挂起。   时间片:分配给每个可运行进程的处理器时间段。 4.2 linux的进程调度 4.3...

2016-04-14 11:57:00 119

转载 Linux内核分析之理解进程调度时机跟踪分析进程调度与进程切换的过程

一、原理分析 1.调度时机 背景不同类型的进程有不同的调度需求第一种分类I/O-bond:频繁的进行I/O;通常会花费很多时间等待I/O操作的完成CPU-bound:计算密集型;需要大量的CPU时间进行运算 第二种分批处理进程(batch process):不必与用户交互,通常在后台运行;不必很快响应。典型的批处理程序:编译程序、科学计算实时进程(real-time process):...

2016-04-14 11:44:00 190

转载 《深入理解计算机系统》之第七章读书笔记

  链接是将各种代码和数据部分收集起来并组合成为一个单一文件的过程,这个文件可被加载(或拷贝)到存储器并执行。   链接的时机:编译时,也就是在源代码被翻译成机器代码时;加载时,也就是在程序被加载器加载到存储器并执行时。 •运行时,由应用程序执行。 在现代系统中,链接是由链接器自动执行的。 1.编译器驱动程序 编译系统提供编译驱动程序——调用语言预处理器、编译器、汇编...

2016-04-07 10:54:00 187

转载 Linux内核分析之可执行程序的装载和启动

一、内容分析 1.可执行文件的创建 (1)预处理阶段   预处理过程读入源代码,检查包含预处理指令的语句和宏定义,并对源代码进行相应的转换,预处理过程还会删除程序中的注释和多余的空白字符。其中预处理指令主要包括以下四个方面:   宏定义指令——预处理过程会把源代码中出现的宏标识符替换成宏定义时的值,常用的两种宏定义: //声明一个标识符,全部用大写字母来定义宏 #defi...

2016-04-06 17:54:00 98

转载 《Linux内核分析》之第三章读书笔记

进程管理   进程是处于执行期的程序以及相关的资源的总称,也称作任务。执行线程,简称线程,是在进程中活动的对象。 可以两个或两个以上的进程执行同一个程序 也可以两个或两个以上并存的进程共享许多资源 内核调度的对象是线程,而不是进程。 进程描述符及任务结构   内核把进程的列表存放在任务列表(task list)的双向循环链表中。 链表中每一项都是类型为task_struct的进程描...

2016-03-31 23:00:00 88

转载 分析Linux内核创建一个新进程的过程

一、原理分析 1.进程的描述   进程控制块PCB——task_struct,为了管理进程,内核必须对每个进程进行清晰的描述,进程描述符提供了内核所需了解的进程信息。 struct task_struct{ volatile long state; //进程状态,-1表示不可执行,0表示可执行,大于1表示停止 void *stack; //内核堆栈 ...

2016-03-30 22:52:00 82

转载 《LINUX内核设计与实现》读书笔记之第五章

第五章——系统调用 5.1 与内核通信 1.为用户空间提供一种硬件的抽象接口 2.保证系统稳定和安全 3.除异常和陷入,是内核唯一的合法入口。 API、POSIX和C库 关于Unix接口设计:提供机制而不是策略5.3 系统调用 5.3.1系统调用号 当用户空间的进程执行一个系统调用,就用系统调用号指明到底执行哪个系统调用。sys_ni_syscall():错误号,负责“填...

2016-03-24 10:59:00 72

转载 Linux内核分析之扒开系统调用的三层皮(下)

一、实验内容 1. 通过内核的方式使用系统调用 需要使用的命令 rm menu -rf //强制删除当前menugit clone http://github.com/mengning/menu.git //重新克隆新版本的menu cd menu ls make rootfs //rootfs是事先写好的一个脚本,自动编译自动生成根文件系统,同时自动启动MenuOS ...

2016-03-24 10:47:00 107

转载 《LINUX内核设计与实现》读书笔记之第一章和第二章

一、第一章 1. Unix内核的特点简洁:仅提供系统调用并有一个非常明确的设计目的抽象:几乎所有东西都被当做文件可移植性:使用C语言编写,使得其在各种硬件体系架构面前都具备令人惊异的移植能力进程:创建迅速,一次执行保质保量地完成一个任务;独特的fork系统调用清晰的层次化结构:策略和机制分离的理念,简单的进程间通信元语把单一目的的程序方便地组合在一起。一切皆文件2.操作系统与内核操作系...

2016-03-17 13:23:00 90

转载 Linux内核分析之扒开系统调用的三层皮(上)

一、原理总结   本周老师讲的内容主要包括三个方面,用户态、内核态和中断,系统调用概述,以及使用库函数API获取系统当前时间。系统调用是操作系统为用户态进程与硬件设备进行交互提供的一组接口,也是一种特殊的中断,可使用户态切换到内核态。当用户态进程调用一个系统调用时,CPU切换到内核态并开始执行一个内核函数。 1.用户态、内核态和中断   内核态:一般现代CPU有几种指令执行级别。在...

2016-03-17 12:57:00 254

转载 Linux内核分析之跟踪分析Linux内核的启动过程

一、实验过程 使用实验楼虚拟机打开shell cd LinuxKernel/ qemu -kernel linux-3.18.6/arch/x86/boot/bzImage -initrd rootfs.img 内核启动进入 menu 程序。下面是用 gbd 来跟踪内核的启动过程: gdb (gdb)file linux-3.18.6/vmlin...

2016-03-11 21:35:00 102

转载 Linux内核分析之操作系统是如何工作的

在本周的课程中,孟老师主要讲解了操作系统是如何工作的,我根据自己的理解写了这篇博客,请各位小伙伴多多指正。 一、知识点总结 1. 三个法宝 存储程序计算机:所有计算机基础性的逻辑框架。 堆栈:高级语言的起点,函数调用需要堆栈机制。 中断机制:多道系统的基础,是计算机效率提升的关键。 2. 函数调用堆栈 堆栈是C语言程序运行时必须的一个记录调用路径和参数的空间,...

2016-03-05 15:08:00 73

转载 Linux内核分析之计算机是如何工作的

一、计算机工作原理 本周实验主要是反汇编C代码,生成汇编程序。冯·诺依曼理论的要点是:数字计算机的数制采用二进制,计算机应该按照程序顺序执行。人们把冯·诺依曼的这个理论称为冯·诺依曼体系结构。CPU通过总线从内存中读取一条条程序,根据程序的内容执行具体的步骤。CPU在读取指令时,通过寄存器IP来指向下一条指令(如果是32位系统,则为EIP),CPU的寄存器分为通用寄存...

2016-02-26 10:06:00 81

转载 java实验五20135104

课程:Java程序设计班级:1351 姓名:刘帅学号:20135104 成绩: 指导教师:娄嘉鹏 实验日期:2015.6.9 实验密级: 预习程度: 实验时间:15:20-18:00 仪器组次:11必修...

2015-06-12 23:52:00 128

转载 java实验三20135104

北京电子科技学院(BESTI) 实验报告 课程:Java程序设计 班级:1351姓名:刘帅学号:20135304 成绩: 指导教师:娄佳鹏 实验日期:2015.6.3 实验密级: 预习程度:...

2015-06-04 21:02:00 196

转载 Java实验二20135104

课程:Java程序设计 班级: 1351 姓名:刘帅 学号:20135104 成绩: 指导教师:娄嘉鹏 实验日期:2015.05.05 实验密级: 预习程度: 实验时间:8:30~12:30 仪器组次: 必修/选修:选修...

2015-05-07 18:10:00 107

转载 java实验一 20135104刘帅

实验报告 一、实验目的与要求: 实验目的: 1. 使用JDK编译、运行简单的Java程序 2.使用Eclipse 编辑、编译、运行、调试Java程序 实验要求: 1.没有Linux基础的同学建议先学习《Linux基础入门(新版)》《Vim编辑器》 课程 2.完成实验、撰写实验报告,实验报告模板见QQ群,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑...

2015-04-15 23:35:00 100

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除