随笔分类 -  04_操作系统

摘要:计算机执行机器代码; 用字节序列编码低级的操作,包括处理数据、管理存储器、读写存储器设备上的数据、以及利用网络通信。 编译器基于编程语言的规则、目标机器的指令集和操作系统遵循的规则,经过一系列阶段产生机器代码。 例如GCC C语言编译器以汇编代码的形式产生输出,汇编代码的本质是机器代码的文本表示。然 阅读全文
posted @ 2019-03-25 19:50 Grooovvve 阅读(395) 评论(0) 推荐(0)
摘要:现代计算机存储和处理的信息以二值信号表示。这些微不足道的二进制数字,或者称为位(bit),奠定了数字革命的基础。 把位组合在一起,再加上某种解释,即给不同的可能位模式赋予含义,我们就能够表示任何有限集合的元素。 研究三种最重要的数字表示:无符号(unsigned)、补码(two’s complime 阅读全文
posted @ 2019-03-25 19:49 Grooovvve 阅读(761) 评论(0) 推荐(0)
摘要:计算机系统漫游 计算机系统=硬件+系统软件构成的。 它们共同工作来运行应用程序。系统的具体实现方式随时间变化,但是系统的内在概念却没有改变。 深入了解计算机系统的组件如何影响程序的正确性和性能。 信息就是位+上下文 源程序实际上是由0和1组成的位序列。8个位被组织成一组,称为字节。每个字节表示程序中 阅读全文
posted @ 2019-03-25 19:48 Grooovvve 阅读(233) 评论(0) 推荐(0)
摘要:相关链接:https://www.cnblogs.com/icmzn/p/5060195.html 阅读全文
posted @ 2019-01-27 12:58 Grooovvve 阅读(466) 评论(0) 推荐(0)
摘要:int x = foo(); //任意值 int y = bar(); //任意值 unsigned ux =x; unsigned uy = y; 证明对于所有的x和y值,它都为真(等于1); 或者2)给出使得它为假(等于0)的x和y的值。 1)x+y == uy+ux 答:这个等式成立,首先这个 阅读全文
posted @ 2019-01-27 11:28 Grooovvve 阅读(1134) 评论(0) 推荐(0)
摘要:现在给你一个任务,写一个函数用来判定一个字符串是否比另一个更长。前提是你要用字符串库函数strlen(),它的声明如下: size_t strlen(const char *s); int strlonger(char * s, char * t) { return strlen(s)-strlen 阅读全文
posted @ 2019-01-26 16:41 Grooovvve 阅读(780) 评论(0) 推荐(0)
摘要:问: 当函数参数length为0时,运行这段代码应该返回0.0。但实际上,运行时会遇到一个存储器错误。请问为什么会发生这种情况,并且说明如何修改代码? 结果如下: length为正数时,结果正确。并且length-1的结果也正确。 但是当length为0的时候,length-1变成了42949672 阅读全文
posted @ 2019-01-26 16:29 Grooovvve 阅读(657) 评论(0) 推荐(0)
摘要:只有理解了CPU、微架构、指令集等概念之后,再去理解编译器概念就更加容易了。 这些概念像盖房子一样,一层一层地建立,扩展。上层的概念以下层为基础。概念的分层是为了更好地解释复杂的事物。 并且集中精力理解该层次的内容,而忽略其他层次的内容。 编译器这层的概念就开始向软件层面迈进了。 +++++++++ 阅读全文
posted @ 2018-10-19 14:12 Grooovvve 阅读(742) 评论(0) 推荐(0)
摘要:CPU是什么: 中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。 它的功能主要是解释计算机指令以及处理计算机软件中的数据。 +++++++++++++++++++++++++++ 阅读全文
posted @ 2018-10-19 13:49 Grooovvve 阅读(2833) 评论(0) 推荐(0)
摘要:指令集Instruction Set Architecture(ISA)是什么: 指令集是存储在CPU内部,对CPU运算进行指导和优化的硬程序。拥有这些指令集,CPU就可以更高效地运行。 指令集是软件与CPU之间的一个接口而CPU就是接口的实列化。 指令集就是一组汇编指令的集合,不同的CPU使用的指 阅读全文
posted @ 2018-10-19 11:37 Grooovvve 阅读(2103) 评论(0) 推荐(0)
摘要:寄存器是什么: 寄存器,是集成电路中非常重要的一种存储单元,通常由触发器组成。 +++++++++++++++++++++++++++++++++++++++++++++++++++ 寄存器的分类: 寄存器可分为电路内部使用的寄存器和充当内外部接口的寄存器这两类。 内部寄存器不能被外部电路或软件访问 阅读全文
posted @ 2018-10-19 11:27 Grooovvve 阅读(1508) 评论(0) 推荐(0)
摘要:+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 相关链接: ARM内核和架构都是什么意思,它们到底是什么关系?:https://www.cnblogs.com/locean/p/5710225.html arm的一些 阅读全文
posted @ 2018-10-19 11:05 Grooovvve 阅读(177) 评论(0) 推荐(0)
摘要:信息的存储: 信息是要存储起来,信息在计算机中以二进制的形式存在,即将信息转化为0和1组成的二进制代码的形式; 计算机存储单位: bit (位):存放一位二进制,即是0或1,最小的存储单位; Byte(字节):8个二进制为一个字节,最常用的单位 KB:1024Byte MB(兆):1024KB ++ 阅读全文
posted @ 2018-10-13 17:50 Grooovvve 阅读(229) 评论(0) 推荐(0)
摘要:Unix中一切皆文件,磁盘等设备在操作系统来看都是文件。 对文件进行操作时,需要打开这个文件,并获得文件描述符(file descriptor, fd) 而每个进程生来就有三个文件描述符绑定在它身上,分别指向标准输入,标准输出和标准错误。 鼠标键盘——标准输入设备,标准输入文件,指针stdin; 显 阅读全文
posted @ 2018-04-09 10:09 Grooovvve 阅读(220) 评论(0) 推荐(1)
摘要:单核执行多任务的本质是:操作系统轮流让各个任务交替执行。 只有多核才能真正实现并行执行多任务。、 对于OS来说,一个任务就是一个进程(process) 有些进程还不止同时干一件事情。 一个进程内部,要同时做很多事情,就需要同时运行多个子任务。 我们把这些“子任务”称为线程(Thread) 多任务的实 阅读全文
posted @ 2018-03-30 20:45 Grooovvve 阅读(506) 评论(0) 推荐(0)