zoukankan      html  css  js  c++  java
  • 《深入理解计算机系统》第一章读书笔记

    计算机系统漫游 

    1.1信息就是位+上下文

    程序的生命从一个源程序开始的,该程序通过编辑器创建并保存为文本文件,文件名命为***.c,由0和1组成的位序列。

    1.2程序被其他的程序翻译成不同的格式

    在Unix系统上,从源文件到目标文件的转化是由编译器驱动程序完成的

    unix > gcc -o hello hello.c

    gcc编译器读取源文件***.c,并把它翻译成一个可执行的目标文件,执行四个阶段的程序(预处理器、编译器、汇编器和链接器)

    1.3编译系统的优点:

    1.优化程序性能 

    2.理解链接时出现的错误

    3.避免安全漏洞

    1.4处理器读并解释存储在存储器的指令

    1.4.1系统的硬件组成

    总线:贯彻整个系统的电子管,它携带信息字节并负责各个部件间传递。通常总线被设计成传送定长的字节块,即字。

    I/O设备: 即输入/输出设备,是系统与外界的联系通道。

    主存: 是一个临时的存储设备,处理程序时,用来存放程序和程序处理的数据。物理上说由一组DRAM(动态随机存取存储器)组成的。

    处理器:即cpu,是解释(或执行)存储在主存中指令的引擎,处理器的核心是一个被称为程序计数器pc的字长大小的存储设备。

    1.4.2执行hello程序

    1.从键盘上读取hello命令

    2.从磁盘加载可执行文件到主存

    3从存储器写输出串到显示器

     

     1.5高速缓存

    程序的机器指令最初存放在磁盘上,当程序加载时,他们被拷贝到主存,当处理器运行程序时,指令又从主存拷贝到处理器。

    1.6层次机构的存储设备

    1.7操作系统管理硬件

     所有应用程序对硬件的操作必须通过操作系统

    操作系统的两个基本功能:1、防止硬件被失控的应用程序滥用  2、位应用程序提供简单一致的方法。

    1.7.1进程

    进程是操作系统对运行程序的一种抽象,一个系统可以同时运行多个进程,而每个进程

     都好像独占硬件,称为并发运行。

    进程的上下文切换

    1.7.2线程

    一个进程可以由多个线程组成,因为多线程比多进程之间更容易分享数据,也因为进程一般都比进程更高效。

     1.7.3文件

    文件是字节序列。每一I/O设备都可以看成文件。

  • 相关阅读:
    etcd:从应用场景到实现原理的全方位解读
    open-falcon编写的整个脑洞历程
    开源还是商用?十大云运维监控工具横评
    我的后端开发书架2015 2.0版
    【MDCC 2015】友盟数据平台负责人吴磊:移动大数据平台的架构与实践
    Effective Go
    Airbnb JavaScript Style Guide
    Google HTML/CSS Style Guide
    nservicebus教程-目录
    测试
  • 原文地址:https://www.cnblogs.com/tqlzpg/p/11767348.html
Copyright © 2011-2022 走看看