计算机基础 笔记(1)

什么是计算机 为什么要有计算机

高速计算的工具

取代人力 替代重复性 高复杂的工作

什么叫编程 什么是编程语言 为什么要编程

1把 想让计算机做事的步骤想清楚

2用一种计算机能听懂的语言指挥它做事

把电脑能听懂的语言翻译给电脑听

让计算机取代人力

什么是程序

程序就是一堆代码文件

计算机就是一堆废铁,计算机的运行全都是受程序控制

程序是计算机的灵魂

硬件以外的都叫软件

软件可以分为两大类

  1. 操作系统

  2. 应用软件

计算机的三层结构

应用程序

操作系统

计算机硬件

 

程序的开发流程

1。PM 产品经理

    陆游器(例子西红柿首富里的)-》伪需求 打回重做

    UE交互式设计师

    UI设计师

    FE前端开发=》 客户端程序(web界面,手机app,微信小程序)

    RD后端开发=》与前端定好接口规范

    QA测试人员=》设计好测试用例

    Op运维人员=》设计好整套系统的构架

    个人电脑开发

    测试环境=》 20多台式机

QA       staging=》与线上环境一比一

OP        线上环境=》互联网用户使用的环境

一两个周上线一个小版本

一个月到一个半月上线一个大版本 =》大问题回滚

2。 运维职责

            应用程序7×24×365天不间断运行=》 监控

            数据备份(磁带,磁盘)

            优化

计算机硬件的组成原理

 

计算机可分为一下两大类

1 个人PC

2 笔记本电脑

3 服务器

服务器的分类

按尺寸分 1U 2U 4U 1U =1.75寸 = 4.45CM

按外形分 机架式服务器 刀片式服务器(和架子集合) 塔式服务器(常见大学科研没有机房条件) 云主机 小型机(过时了)

按服务器品牌 DELL HP IBM 等

去IOE运动

I IBM 服务器

O 甲骨文 数据库管理软件

E EMC 储存

计算机五大组成部分

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

控制器 指挥系统 控制其他所有硬件的运行 ----------》 大脑

运算器 负责数学运算与逻辑运算-----------------》 大脑

控制器+运算器 = cpu

储存器 存取数据

内存 比如 内存条

           基于电存取数据 断电数据全部丢失

            用于临时保存数据 存取速度快

外存 比如 磁盘

            基于磁存取数据 断电数据任然存在

            用于永久(相对)保存数据 存取速度都慢

输入设备

            键盘,鼠标

输出设备

            显示器,打印机

CPU详解

取指==》 解码==》运行

 

cpu中也有存储单元(寄存器) 运算快 但是体积小 造价贵 能当cpu与内存的交换中介提高速度

有内存时 可以直接将硬盘中的数据读取到内存中 cpu可以直接从内存中读取指令 可以很大程度上加快运行速度

磁盘--》 内存--》 cpu

计算机存储的主力是内存 运行都在内存中

软件的启动速度取决于硬盘

安装操作系统 放到固态中

安装软件的数量取决于硬盘的大小

总结1

人--------------》程序----------------》计算机硬件

人--------------》程序----------------》cpu----------------》计算机硬件

总结2

程序的运行与计算机的三大核心硬件cpu,内存,硬盘的关系

程序最先是存放于硬盘中的

程序的运行需要先经历加载的过程:程序的代码/数据从硬盘读入内存

然后cpu再从内训中读取指令来运行

        ps:安装软件都装到硬盘中,软件的运行都是把数据加载到内存中了

                所以说计算机硬盘的大小决定了能够安装的软件数目

                而计算机内存的大小决定了计算机能够同事运行的软件数目

电 32位与64位

计算机运行的基础是电

电的形式高压电和低压电 对应 01

cpu 分为 32位 (一次读取)和 64位(一次读取)

64位就意味着一次从内存中读取64个二进制数位

cpu具有向下兼容性

64可以运行64 和32

32只能运行32位

X86(****)

cpu的型号 是 复杂指令集

另一种为 经典指令集 比较短不容易出错 实现功能使用条数会很多 设计起来会复杂 常用在 大型工作站 金融服务 火箭运算

复杂指令集 不稳定 但实现功能较易 条数少 现在复杂指令集的cpu较多

 

摩尔定律

18个月更新一倍 先越来越不适用

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

两个cpu核心

每个核内部有两个流水线 一共四条流水线(伪4核 可以当四个用)

存储器详解

寄存器 1ns <1kb L1

高速缓存 2ns 4MB L2

内存 10ns 512-2048MB

磁盘 10ms 200-1000GB

磁带 100s 400-800GB

内存

RAM 内存   

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

CMOS 存储ROM产生的一些参数和数据 易失 有小电池供电

            内存中存放都是cpu运行的程序

            RAM==》 qq暴风影音 爱奇艺

            ROM==》 BIOS(basic input output system) 基础的输入输出操作系统 保命用的

ps : cpu ROM COMS 可以组成最初始的电脑结构

硬盘

        机械硬盘

                    磁道

                    扇区 硬盘最小的读写单位 一般是512个字节byte

                                操作系统读写的最小单位一般是一个block块--》8个扇区-》4k

                    柱面

                               分区指的就是从一个柱面开始到另外一个柱面结束中间所包含的所有磁道

                        ps:buffer缓冲区--》大卡车

                                操作系统的block块--》收纳箱

                                硬盘的扇区---》单个快递盒子

                        大卡车里存放了n个收纳箱,每个收纳箱箱子里面有8个快递盒子

            机械硬盘为什么慢:

                    7200转/分 120转/s 1转是 0.008s

                    平均寻道时间:找到信息所载的磁道 大概是5ms

                    平均延迟时间:找到磁道上的信息 转半圈 0.004s = 4ms

                    找数据的时间慢

         固态硬盘

                依赖电子存取数据 不依赖磁盘的机械臂 速度快造价高

        虚拟内存 swap分区 占一部分硬盘空间当内存 防止内存满了计算机卡死

linux系统会把内存分为两种区域:

        buffer:缓存区,攒一大波数据,再刷入硬盘

        cache:缓存,把硬盘的数据在内存中存好,cpu取的时候可以直接从内存中存取(常用的根据算法保留部分找不到再去磁盘中取)

内核态与用户态:

内核态:操作系统正在控制硬件

用户态: 应用程序正在运行

计算机启动过程

  1. 计算机加电

  2. 启动BIOS(计算机启动一定会先启动bios),扫描启动设备,从某一个启动设备中找到操作系统

  3. 读取启动设备的第一个扇区(512byte)的大小(称之为主引导记录mbr)

    446 BootLoader ==》grub程序

    64 分区信息

    2 结束标志位

  4. grub程序 先去探探路 没有问题再让操作系统从硬盘中加载

  5. 操作系统会让BIOS去检测驱动程序 结束后BIOS退出舞台

主板

北桥 北桥接cpu 内存 等高速路

南桥 南桥接一般的io设备 普通路

网线 水晶头接口

橙白

绿白

蓝白

绿

棕白

千兆网卡==》 双绞线水晶头 对速度没什么太大的要求

万兆网卡==》光纤 可以用作分布式存储的网络

UPS 不间断电源

双源市电==》 ups设备(不够插口用排插)==》服务器双电源

机房备小型发电机

附近加油站 紧急用油协议

硬盘接口

IDE 并口 快被淘汰了

SATA 串口

SCSI 小型机接口 去IOE不怎么用了

SAS SATA+SCSI 结合体

光纤通道

硬盘速度排序 SSD+SAS 土豪

                        SSD+SATA 常规 对数据有特殊要求

                        机械硬盘+SAS 常规 比较核心的业务 对数据常规要求

                        机械硬盘+SATA 较弱 公司内部的服务

并发

很多人同时访问服务器 调用硬件

企业服务器硬盘优化方案:(举例)常访问的数据ssd+sas 不常访问的数据机械+sas

用户经常访问的数据===》热数据

不经常访问的数据====》冷数据

集群

防止单点故障

提升性能

RAID

多块硬盘要连接到RAID卡(阵列卡)上

然后制作raid

比较常见的:

RAID0

    至少一块盘

        容量:n块盘合在一起的总容量

        行能:理论上是n块盘合在一起的读取速度,实际上是要略低一点

        冗余性:不允许坏任何一块盘

        场合:追求读写性能,但是对数据安全性没有要求:例如集群服务器(数据在别处)

        特点:追求速度,不管安全性

RAID1

    至少也只能是两块盘

        容量:用一块盘的容量,另一块盘用来等比例备份

        性能:就是一块盘的读写速度

        冗杂性:可以坏一块盘,另一块有备份

        场合:对数据安全性有要求,对数度读写没有特殊要求 :例如服务器系统盘

        特点:追求数据安全,不考虑速度

RAID5 介于raid0于raid1之间,是一种折中方案

    至少3块盘,两两之间奇偶校验==》异或运算,相同结果位0,不同为1

        容量:废掉一块盘的容量,等盘情况下,容量低于raid0

        性能:读写速度低于raid0 高于 raid1

        冗杂性:可以坏一块盘,其余两块盘可以通过奇偶校验推出坏盘数据

        场合:一般场合都可以使用

RAID10

    至少4块盘

raid1 + raid 0 的整合产物 兼顾了raid1的安全和raid0的速度,但是成本大幅度提高

数据库服务器使用

优化的基本原则

针对读操作,数据能从内存取就不要从硬盘取

针对写操作,在内存攒一波再写入硬盘

posted @ 2022-08-26 13:26  msdsbc  阅读(204)  评论(0)    收藏  举报