zoukankan      html  css  js  c++  java
  • 计算机硬件组成(2)

    上节课回顾:

    一.软件的开发流程:

    1.需求分析阶段:

    PM产品经理调研市场,分析需求,画出原型草图,召集相关技术人员开需求分析会,明确需求。

    2.项目开发阶段

    2.1项目设计

    大家分头行动,UE与PM经常沟通,出交互原型图,UI根据原型图画出设计图,FE拿到设计图,理解需求设计前端,RD后端技术设计,QA设计测试用例,运维人员要设计好架构设计。

    2.2项目开发

    前后端确定开发项目整体结构,前端、程序、数据库之间的对接方式,定制开发规范、代码规范、源码管理、版本管理,然后分头开发。

    2.3项目测试
    开发人员进行code review,过一遍代码,审查一下,开发人员自测,改bug,QA专业测试,开发人员改bug

    2.4项目上线
    运维人员编写上线方案,测试

    2.5环境
    测试、staging、线上1:1

    2、服务器的分类
    尺寸:1u=4.45cm
    外形:机架
    刀片:集群

    塔式

    小型机:高端定制

    ps:云主机(虚拟机)
    阿里云、腾讯云、青云、ucloud

    今日内容

    一 计算机的硬件组成

    计算机(电脑)====》模仿人

    大前提:计算机的所有组成都是模仿人的某一器官或者功能去设计的

    五大组成部分:


    控制器:是计算机的指挥系统,负责控制所有其他硬件的运行————-》大脑

        (控制器通过地址访问存储器,从存储器中取出指令,经译码器分析后,根据指令分析结果产生相应的操作控制信号作用于其他部件,使得各部件在控制器控制下有条不紊地协调工作。)

    运算器:负责数学运算与逻辑运算—————————————–》大脑

    控制器+运算器=》cpu (中央处理器)

    其中运算器用来主要负责程序运算与逻辑判断,控制器则主要协调各组件和各单元的工作,所以CPU的工作主要在于管理和运算。可以说计算机的大脑就是CPU,它从内存中取指令->解码->执行,然后再取指->解码->执行下一条指令,周而复始,直至整个程序被执行完成。 

    既然CPU的重点在于进行运算和判断,那么要被运算与判断的数据是从哪里来的?CPU读取的数据都是从主存储器(内存)来的!主存储器内的数据则是从输入单元所传输进来!而CPU处理完毕的数据也必须先写回主存储器中,最后数据才从主存储器传输到输出单元。

    存储器:存取数据
    内存:比如内存条—————————————-》大脑的记忆功能
    基于电存取数据,断电数据全部丢失
    用于临时保存数据,存取速度都快

    外存:比如磁盘——————————————》本子
    基于磁存取数据,断电数据仍然存在
    用于永久保存数据,存取速度都慢

    输入设备:键盘、鼠标

    输出设备:显示器、打印机

    总结1:
    人——-程序———》计算机硬件
    人——-程序———》cpu——》计算机其他硬件

    总结2:

    程序的运行与计算机三大核心硬件:cpu、内存、硬件的关系:
    程序首先是存放于硬盘中的
    程序的运行需要先经历加载的过程——》程序的代码/数据从硬盘读入内存
    然后cpu再从内存中读取指令来运行

    总结3:

    CPU、内存(主存储器)以及其他I/O设备都由一条系统总线(bus)连接起来并通过总线与其他设备通信 

    案列:

    cpu是人的大脑,负责控制全身和运算

    内存是人的记忆,负责临时存储

    硬盘是人的笔记本,负责永久存储

    输入设备是耳朵或眼睛或嘴巴,负责接收外部的信息存入内存

    输出设备是你的脸部(表情)或者屁股,负责经过处理后输出的结果

    以上所有的设备都通过总线连接,总线相当于人的神经

    上课开始,老师讲课,学生听课,老师是程序员,学生是计算机,学生的器官都是计算机各部分组成

    1.你通过耳朵接收老师讲的知识->输入

    2.通过自己的神经,将接收的数据存入自己的内存/短期记忆(总线、内存)

    3.光听不行,你还需要反应/处理老师讲的知识,于是你的大脑/cpu从短期记忆里取出知识/指令,分析知识/指令,然后学习知识/执行指令 (cpu取指、分析、执行)

    4.你通过作业或者说话输出你学到的结果

    5.你想要永久将知识保存下来,只能拿出一个笔记本,把刚刚学会的知识都写到本子上,这个本子就是硬盘(磁盘)

    ps:
    安装软件都装到硬盘里,软件的运行都是把数据加载到内存中了
    所以说计算机硬盘的大小决定了能够安装的软件数目
    而计算机内存的大小决定了计算机能够同时运行的软件数目

    二 cpu详解

    取指—-》解码—-》运行

    寄存器=》与cpu一样的材质制成,速度非常快,无延迟

    CPU分为精简指令集,复杂指令集

    cpu 32位(二进制)-》只能运行32位的软件
    cpu 64位-》既能运行32位的软件又能运行64位的软件

    64位  
    cpu的位数指的是cpu一次性能从内存中取出多少位二进制指令,64bit指的是一次性能从内存中取出64位二进制指令。
        在2003年以前由Intel所开发的x86架构CPU由8位升级到16、32位,后来AMD依此架构修改新一代的CPU为64位,到现在,个人计算机CPU通常都是x86_64的架构。
        cpu具有向下兼容性,指的是64位的cpu既可以运行64位的软件,也可以运行32位的软件,而32位的cpu只能运行32位的软件。这其实很好理解,如果把cpu的位数当成是车道的宽,而内存中软件的指令当做是待通行的车辆,宽64的车道每次肯定既可以通行64辆车,也可以通信32辆车,而宽32的车道每次却只能通行32辆车
     

    cpu具有向下兼容性

    x86(CPU型号)=》复杂指令集

    x86是针对cpu的型号或者说架构的一种统称,详细地讲,最早的那颗Intel发明出来的CPU代号称为8086,后来在8086的基础上又开发出了80285、80386....,因此这种架构的CPU就被统称为x86架构了。
            
        由于AMD、Intel、VIA所开发出来的x86架构CPU被大量使用于个人计算机上面,因此,个人计算机常被称为x86架构的计算机!
        程序员开发出的软件最终都要翻译成cpu的指令集才能运行,因此软件的版本必须与cpu的架构契合,举个例子,我们在MySQL官网下载软件MySQL时名字为:
          Windows(x86,32-bit),ZIP Archive
          (mysql-5.7.20-win32.zip)  
    我们发现名字中有x86,这其实就是告诉我们:该软件应该运行在x86架构的计算机上。

    x86-64(*****)

    摩尔定律:CPU有多条线程

    cpu:2核4线程(****)

    2核-》2个cpu核心

    每个核内部有两条流水线=》2核有4条流水线

     

     

     

     

    三 存储器详解

    寄存器-》L1
    高速缓存-》L2

    内存
    RAM=》内存
    ROM=》只读内存,存取速度与内存一样,只能用于读,断电数据不丢失

    内存中存放都是cpu要运行的程序
    RAM=》qq、暴风影音、微信、爱奇艺视频
    ROM=》BIOS(操作系统)(Basic Input Output System基本的输入输出操作系统)

    cpu (计算机启动CPU先运行BIOS系统,再去安装硬盘启动win系统)

    ROM(BIOS系统)             RAM(windows系统)

    硬盘(windows系统)

    CMOS(耗电低,断电即消失)

  • 相关阅读:
    ZOJ 2588 Burning Bridges
    POJ 1966 ZOJ 2182 Cable TV Network
    HDU 5348 MZL's endless loop
    HDU 5352 MZL's City
    Tarjan算法求解无向连通图的割点、割边、点双连通分量和边双连通分量的模板
    ZOJ 1119 SPF
    HDU 3452 Bonsai
    HDU 1520 Anniversary party
    POJ 2239 Selecting Courses
    POJ 1144 Network
  • 原文地址:https://www.cnblogs.com/taoxiaoxin/p/13758931.html
Copyright © 2011-2022 走看看