我是靠谱客的博主 拼搏白猫,最近开发中收集的这篇文章主要介绍深入了解计算机系统学习笔记——第一章第一章 计算机系统漫游学习笔记,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

第一章 计算机系统漫游学习笔记

这一章主要介绍的是计算机的总体结构。通过一个hello,world的小程序进行的说明。总体来说一个程序的执行离不开硬件,软件与操作系统的共同工作。

1.1 信息就是位与上下文

任何的一个程序实际上是由值0或1组成的为序列,8各位组成一个字节。而每个字节来表示程序中某个文本的字符。现在基本是用ASCII码。一个基本思想就是:系统中的所有文件——包括磁盘文件,在网络中传输的数据都是以比特的形式传输的。而用来区分的方法就是上下文。在不同的上下文中,相同的字符序列表示不同的含义。

1.2 将源程序转换为可执行文件

  1. 预处理
    预处理的目的是读取程序的头文件的内容,插入到程序中。
  2. 编译阶段
    首先会检查程序中是否会有语义,语法错误。若无,则将程序转换为cpu可以识别的二进制文件。
  3. 汇编阶段
    在汇编阶段,会将代码翻译为二进制指令。
  4. 连接阶段
    在编译阶段完成后生成.o的目标文件,进入到链接阶段,对于链接器来说,整个链接过程就是将几个输入目标文件加工合并成一个输出文件。

1.3 运行hello程序

在系统的硬件组成中,计算机通过总线传递数据,要Cpu处理在磁盘的数据必须先将数据保存到RAM中,再由cpu执行,将结果再通过IO桥传输到外部设备。所以减少对磁盘数据的读取可以提高程序效率。这就引出了高数缓存存储器的概念:存放处理器近期可能会用到的数据。

1.4操作系统与硬件

在linux中执行./hello 命令时,是怎么将结果输出到硬件设备屏幕上的?
答案是操作系统,通过操作系统管理硬件。
在linux中有一个概念:一切设备皆文件。

  • 即通过文件来硬件I/O设备进行抽象。
  • 通过虚拟内存对于主存储器,文件进行抽象
  • 通过进程,对于处理器,主存,硬件进行抽象。
    红色

最后

以上就是拼搏白猫为你收集整理的深入了解计算机系统学习笔记——第一章第一章 计算机系统漫游学习笔记的全部内容,希望文章能够帮你解决深入了解计算机系统学习笔记——第一章第一章 计算机系统漫游学习笔记所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(72)

评论列表共有 0 条评论

立即
投稿
返回
顶部