自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Makefile:xxx: recipe for target 'xxx' failed

使用Makefile 运行当前目录下生成的可执行文件时出现:Makefile:3: recipe for target 'test' failed 类似的错误。该问题很大可能是程序运行结束后返回给make 的值是非0导致的结果。1.test.c#include<stdio.h>int main(){ printf("----------------\n"); ret...

2018-12-20 21:52:51 66948 1

原创 07.存储器保护

简介存储器的保护功能可以禁止程序的非法内存访问,比如像代码段写入数据、访问段界限之外的内存。处理器执行过程中会对内存进行段界限、属性检查。代码段保护由于EIP 永远指向下一条将要执行的指令,故在代码段内有如下等式:0<= EIP -1 <= 段界限EIP 满足该等式将是正常的内存访问,否则处理器将会引起处理器异常栈段保护栈段是向下扩展的,每当往栈中压入数据时,EIP的内...

2018-12-13 14:39:02 8635

原创 06.保护模式

简介实模式下用户程序对内存的访问非常自由,没有限制。可以随便修改任何一个内存单元。如果某个内存单元属于操作系统或其他程序,将带来不可预料的后果。全局描述符表为了让程序在内存中自由装载,处理器将内存划分为逻辑上的段,并在指令中使用段内偏移地址,保护模式下对内存的访问依然使用段地址和偏移地址,在每个段被访问之前必须先登记。登记的信息包括段起始地址、段的界限和各种访问属性,当访问的偏移地址超出段界...

2018-12-12 17:59:47 8707

原创 Ubuntu 安装Bochs

简介Bochs是一个x86硬件平台的开源模拟器。它可以模拟各种硬件的配置。Bochs模拟的是整个PC平台,包括I/O设备、内存和BIOS。更为有趣的是,甚至可以不使用PC硬件来运行Bochs。事实上,它可以在任何编译运行Bochs的平台上模拟x86硬件。通过改变配置,可以指定使用的CPU(386、486或者586),以及内存大小等。一句话,Bochs是电脑里的“PC”。根据需要,Bochs还可以...

2018-12-05 20:35:50 13316 3

原创 05.主引导扇区

简介计算机加电或者复位后将读取0磁道、0磁头、1扇区共512字节到0x0000:0x7c00 处,然后判断它是否有效。一个有效的主引导扇区最后2字节是0x55,0xaa。显卡文本模式和图形模式是显卡的2中基本工作模式。访问显存需要和显卡这个外围设备打交道,外围设备相对CPU都是慢速、低效率的。为此把显存映射到处理器可以直接访问的内存地址空间。8086 访问的1M内存,其中0x0000~0x9...

2018-12-05 14:28:26 8706

原创 数组引发的思考

简介学习C 语言时 int p1[2]表示定义了一个一维数组;int p2[2][3]表示定义一个二维数组; int p3[2][3][4] 表示定义了一个3维数组。数组的索引位置都是从0相对基址偏移。对p1数组访问方式如下:for(int i=0;i<2;i++){ p[i] = i;}对p2数组访问方式如下:for(int i=0;i<2;i++){ for(in...

2018-12-04 21:00:33 8315

原创 04.虚拟机使用

简介虚拟机是利用软件来模拟完整的计算机系统,无需添加任何新的设备,而且与主计算机是隔离的,在虚拟机上的任何操作都不会影响到物理计算机上的操作系统和软件,还可以在转好系统的虚拟机下再克隆多个系统。虚拟机在测试病毒、频繁重启之类的软件中非常方便。主流虚拟机VMWare、Virtual PC 和VirtualBox 等,但是只有VirtualBox 是开源和免费的软盘结构一张3.5寸软盘有8...

2018-12-04 17:16:51 8374

原创 03.汇编语言和编译器

早期的程序设计均使用机器语言。程序员们将用0, 1数字编成的程序代码打在纸带或卡片上,1打孔,0不打孔,再将程序通过纸带机或卡片机输入计算机,进行运算。这样的机器语言由纯粹的0和1构成,十分复杂,不方便阅读和修改,非常容易产生错误。...

2018-12-04 15:49:19 12005

原创 02.intel 8086简介

1978年6月8日intel推出的8086是第一款16位处理器,而且是第一款具备现代个人计算能力的处理器。Intel 在宣传语中写道:“40年前,我们打造了 x86 架构和 8086 处理器,从此改变了计算世界的面貌。...

2018-12-04 14:54:56 9586

原创 01.数制

数制简介计算机的世界只能理解简单的二进制,高电平被认为是"1",低电平被认为是"0"。多跟导线组合在一起就是一长串的2进制序列。不管是多少进制的计数机制,从本质上来说就是表示数量多少的符号体系,我们使用的计数机制是基于进位表示,即符号数是多少个就是多少进制,也称为基数。1.表示整数数量的多少,不管是多少进制的计数方式都可以相互转换,之间是相互等价的。但对于小数在

2018-12-04 13:24:22 8270

原创 00.简谈汇编语言

简介汇编语言是除二进制外最贴近计算机底层的语言。高级语言可以做的汇编可以做,高级语言不可以做的汇编也可以做。汇编语言的学习对于建立计算机体系结构、计算机运行原理、C语言指针、以及面向对象语言引用的理解是最朴素、直接有效的方式。1.使用汇编语言的时候,我们能够感知计算机的运行过程和原理,从而能够对计算机硬件和应用程序之间的联系和交互形成一个清晰的认识。是最能够锻炼编程者编程思维逻辑的,只有这样,...

2018-12-04 12:27:04 8558

原创 27.进程概述

简介在单CPU计算机中进程是模拟多CPU实现多个任务“同时”运行的机制。单CPU计算机中CPU在任意时刻只能执行一个功能,如果CPU在多个功能之间快速的切换就实现了一种“同时”运行的错觉,给人一种同时运行的假象,能同时听歌、同时浏览网页。目标实现一个简单的进程,初步建立进程切换和保存相关进程信息的概念!1.发生任务切换时,CPU需要保存正在运行进程的相关信息如cs、eip等,将来任务切换回...

2018-12-03 11:27:04 8412

空空如也

空空如也

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

TA关注的人

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