zoukankan      html  css  js  c++  java
  • 基础-计算机及操作系统和应用程序的概念

    编程语言用来开发应用程序,应用程序要基于操作系统运行,硬件需要操作系统控制;

    CPU即计算机的大脑,它从内存中获取指令然后进行解码,最后执行,周而复始直至程序被执行完成;但由于CPU的计算速度远大于内存,等待内存中的指令,就要浪费时间,所以在CPU的内部存在一个关键性的寄存器,用来保存临时数据,这样就可以弥补内存速度跟不上CPU的情况了;寄存器分为4类:

    通用寄存器;程序计数器,堆栈指针,程序状态字存储器(PSW)

    用于保存临时数据的就是通用寄存器了,CPU即将执行的指令会存放在程序计数器中,而还没有推出的过程框架会从存放在堆栈指针中,最重要的程序状态字寄存器是用来控制CPU的模式,内核态和用户态。

    内核态:可以理解为让CPU对硬件直接进行操作调用所有指令集,一般操作系统的指令是可以直接将CPU转为内核态的

    用户态:可以理解为不让CPU对硬件直接进行操作只能调用部分指令集,应用程序绝大部分只能将CPU在用户态下工作,只能通过系统调用(SystemCall)将状态转成内核态

    存储器

    CPU的L1L2缓存,曾经只听老师讲过CPU有1级2级缓存,但是没有深度的了解过L1L2的缓存是什么?

    L1缓存就是刚才上面提到的寄存器了,与CPU同一个材质制造,死贵死贵的而且存储容量非常的小小小,32位CPU就是32*32位,64位CPU就是64*64位。

    L2缓存可以理解为高速缓存区,其特性与RAM内存相似,是失忆性存储,断电数据就会消失了,但是其运行速度非常之快,介于CPU与内存之间。

    RAM内存,这就是我们熟知的内存,后现代称其为运存,失忆性存储,断电数据就消失,用于快速存储指令供CPU调取。

    闪存(FlashMemory)我是把它理解为读写速度非常快的记忆存储,你们也可以理解为U盘,SSD硬盘

    CMOS是计算机最基础的存储器了,用于存储BIOS的相关设置和计时功能,可这么重要的存储器却是失忆性存储,不可以断电呀,所以只有靠BIOS电池CR2032,进行持续供电。

    机械硬盘(磁盘),记忆存储器,用于存放大量资料数据,被广泛应用:

    利用扇区存储,但是圆形寻道,这样的话每当想要寻找数据时,磁盘就会一圈一圈一圈的寻找存储的扇区,如果运气好,瞬间就可以寻找到,如果运气不好,就等着它一圈一圈的转吧,这个等待时间就叫平均寻道时间。

    磁带,对于98年出生的我来说,已经没有见过了,存储速度慢,容积大,方便携带是它的特性,这个特性使他在数据备份领域占据了一定的优势。

    虚拟内存,其实我的理解就是在物理内存不足以分配的时候,物理硬盘将部分存储空间划分为内存使用,在Linux操作系统中专门有一个虚拟内存的分区叫Swap,而虚拟内存映着在CPU中的地址则被称为MMU(存储器管理单元)

    控制器,负责控制连接设备,从操作系统中得到指令并控制设备,例如操作系统保存一个数据,就会给硬盘控制器一个指令,控制器收到指令就去执行了,但是控制器本身也是需要执行方法的,这个执行方法,就是所谓的驱动程序
    总线是一个非常不好理解的概念,我把它理解成电路:

    ISA南桥用于连接非关键的慢速设备

    PCI北桥用于高速设备的连接和交互

    了解了这么多理论知识,来看一下当你的电源灯亮起,到屏幕上出现“小窗口”的过程吧

    计算机通电-BIOS开始运行-检测硬件-BIOS加载CMOS中的设备参数-从启动设备中加载MBR主分区的内容-读取分区中的Boot启动模块-加载内容到内存中-出现小窗口
    应用程序的启动程序-输入设备操作系统发送应用程序的指令-操作系统会将应用程序存放在内存中-CPU将指令从内存中取出解码运算返回,程序就开启了。

    于是乎,一天就过去了

    2017年3月10日

    闫龙

  • 相关阅读:
    Java1.4从BIO模型发展到NIO模型
    Java Socket TCP 套接字超时
    浅谈 Java Socket 构造函数参数 backlog
    Java Socket 的BIO模型(以TCP为例)
    TCP三次握手和四次挥手与Java Socket
    TCP报文格式
    Windows安装Wireshark实现127.0.0.1抓包
    NIO入门之多路复用选择器Selector
    晚安西南-----拆装死绳传感器
    晚安西南-----螺扶与拖压
  • 原文地址:https://www.cnblogs.com/DragonFire/p/6531352.html
Copyright © 2011-2022 走看看