• 深入理解计算系统读书笔记(一)


    第一章 计算机系统漫游

    1 ASCII码: 使用指定的7-8位二进制数(bit)表示单字节字符

    2 Gcc编译hello.c过程

    hello.c--->hello.i---->hello.s---->hello.o----hello(可执行)

            预编译        编译器       汇编器        链接器

    预编译:引入头文件include

    编译器:编译成汇编语言

    汇编器:编译成二进制文件

    链接器:调用标准库代码并与二进制文件合并

    3 名词解释

    CPU -->Central Processing Unit

    ALU:负责逻辑运算+-*/ >> <<  例如把2个寄存器的内容复制到ALU进行操作后存回其中一个寄存器

    寄存器组:专用寄存器、通用寄存器组成。负责短暂存储数据,CPU读取寄存器效率高

    控制单元: 指令寄存器、指令译码器、操作控制器(控制逻辑)--控制什么时候执行什么

    用户指令--->指令寄存器---->指令译码器---->操作控制器(控制逻辑)

    高速缓存存储器:存放近期可能需要的信息

    总线:用于传输数据的通道

    进程:对一个正在运行的程序的抽象

    线程:一个进程可以由多个线程执行单元组成,线程共享同样的代码和全局数据。使用线程容易共享数据

    文件:字节序列

    4 小节

    1 计算机系统由软硬件组成,内部信息表示为一组组位,程序被编译的过程是先变成ASCII文本,再被编译器和链接器翻译成二进制文件

    2 访问效率:寄存器>缓存器>主存>磁盘

    3 三大抽象:文件是对IO设备的抽象(网络也是IO设备)、虚拟存储器是对磁盘和内存的抽象、进程是处理器/内存/IO设备的抽象

    自己画了一个刚了解的CPU与内存之间的关联图

    第二章之后的阅读暂时挂起,先补齐基础知识再继续阅读。

    先从汇编系列的书籍开始阅读

  • 相关阅读:
    编程与操作系统
    maven环境快速搭建
    Maven那点事儿(Eclipse版)
    几种简单的负载均衡算法及其Java代码实现
    Java集合中那些类是线程安全的
    自己随手的一些知识点
    设计模式(一)—— 策略模式
    Unity Audio Source Properties
    [转载]Web前端和后端之区分,以及面临的挑战
    TestNG 与 Junit的比较(转)
  • 原文地址:https://www.cnblogs.com/sunfan1988/p/3535259.html
Copyright © 2020-2023  润新知