2020.10.10星期六  正式班D5

一、上节课复习

1、硬盘分类

​ 1、机械磁盘

​ io时间=平均寻道时间+平均延迟时间

​ buffer:写缓冲区

​ cache:都缓存

​ 2、固态硬盘

2、内核态和用户态

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

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

二、今日内容

1、硬盘接口

  1. IDE并口

    并口IDE,即早期的PATA接口。

    在传输数据和信号时总线是复用的,传输速率会受到一定限制。

    如果提高传输速率,传输的数据和信号会产生干扰导致错误。

  2. SCSI

    SCSI主要用于服务器,广泛用于小型机的高速数据传输技术。

  3. SATA串口

    串行ATA接口,是将主机总线适配器连接到大容量存储设备(如硬盘驱动器、光驱、固态驱动器)的计算机总线接口。串行ATA总线使用嵌入式时钟信号,具备更强的纠错能力,还具有结构简单、支持热插拔的优点,目前是桌面硬盘的主力接口。

  4. SAS(SATA+SCSI)

    SAS即串行连接SCSI,与SATA硬盘都采用串行技术以获得蘅皋的传输速度,并通过缩短连接改善内部空间。此接口改善了存储系统的效能、可用性和扩充性,并且提供与SATA硬盘的兼容性。

  5. 光纤通道

    光纤通道主要用于高端服务器场景,价格昂贵。最初是专门为网络系统设计的,随着存储系统速度的需求才逐渐应用到硬盘系统中。

SSD+SAS===》土豪
SSD+SATA==》对速度要求较高的常规组合
HDD+SAS==》对速度没要求的常规组合
HDD+SATA=》企业内部使用,对速度要求较低
  1. 高并发场景下:冷热数据区分对待
    1. 热数据:用户经常访问的数据
      冷数据:不经常被用户访问
    2. 热点数据:SSD+SAS或SSD+SATA(最好SSD+SAS)
      冷数据:HDD+SAS,资金不够HDD+SATA

2、RAID

阵列卡(RAID卡)的好处:
  1. 把所有硬盘容量加在一起
  2. 可以让数据更安全
  3. 可以获得更高的性能

(1)RAID0

(2)RAID1

(3)RAID5

(4)RAID10

(5)RAID01

在盘数相同情况下各种RAID对比:
冗余好到坏:RAID1>RAID10>RAID5>RAID0
读写性能好到坏:RAID0>RAID10>RAID5>RAID1
成本高到低:RAID10>RAID1>RAID5>RAID0

适用于互联网公司的RAID级别使用:

  1. 单台服务器,很重要,盘不多,系统盘===》RAID1
  2. 数据库/存储服务器,主库-->RAID10,从库-->RAID5/RAID0(为了维护成本用RAID10)
  3. web服务器,如果没有太多数据的话===》RAID5/RAID0(单盘)
  4. 有多台监控/应用服务器===》RAID0/RAID5

3、计算机体系三层结构优化

1、三层结构:应用程序、操作系统、计算机硬件

2、运维职责:①7* 24 *365持续提供服务,不宕机(做好监控)②备份③优化

3、优化思路:尽量让用户从内存中读数据而不是硬盘,优化核心是磁盘和内存的使用比例优化

4、优化方案:①硬件优化==》缓存、集群②操作系统内核优化③应用程序优化④网络优化

4、操作系统发展史

批处理系统-->分时操作系统-->unix-->Linux
多道技术==》(进程、线程)并发
操作系统的核心==》进程(一个程序的运行过程,指操作系统控制硬件来运行程序的过程)

1、第一代计算机(1940~1955):真空管和穿孔卡片

2、第二代计算机(1955~1965):晶体管和批处理系统

​ 一次只把一个/道程序读入内存,运行完毕后再执行下一个程序,没有并发,称之为串行。

​ 优点:充分利用了计算机资源

​ 缺点:①整个过程需要人参与

​ ②让程序员明显感觉到等待

​ ③程序的运行是串行

3、第三代计算机(1965~1980):集成电路芯片和多道程序设计

串行:多个任务是一个运行完后再运行下一个
并发:多个任务看起来是同时运行的

多道技术:多道技术中的多道指的是多个程序,多道技术的实现是为了解决多个程序竞争或者说共享同一个资源(比如cpu)的有序调度问题,解决方式即多路复用,多路复用分为时间上的复用和空间上的复用。

1、空间上的复用:将内存分为几部分,每个部分放入一个程序,这样,同一时间内存中就有了多道程序。

2、时间上的复用:当一个程序在等待I/O时,另一个程序可以使用cpu,如果内存中可以同时存放足够多的程序,则cpu的利用率可以接近100%,类似于我们小学数学所学的统筹方法。

多个进程的内存空间是相互隔离的,且是物理隔离。否则会丧失安全性和稳定性。

兼容分时系统CTSS:多用户多任务。应用多道技术来实现多个任务的并发运行。

Ken Thompson开发了一个简易的,单用户版本的MULTICS(分时操作系统),也就是后来的UNIX系统。

正式班D5的更多相关文章

  1. 正式班D7

    2020.10.13星期二 正式班D7 一.上节课复习 Linux发展 批处理系统 多道技术 分时操作系统 multics->Unix->minix->Linux(如Redhat.c ...

  2. 正式班D8

    2020.10.15星期四 正式班D8 一.上节课复习 OSI七层协议 socket socket是对传输层以下的封装 IP+port标识唯一一个基于网络通讯的软件 TCP与UDP TCP:因为在通信 ...

  3. 正式班D9

    2020.10.16星期五 正式班D9 一.vmware workstation的使用 虚拟机管理软件 定义 虚拟机(Virtual Machine)软件是一套特殊的软件,它可以作为操作系统独立运行, ...

  4. 正式班D11

    2020.10.20星期二 正式班D11 bash解释器交互式环境特性 命令和文件自动补全(Tab只能补全命令和文件) 快捷键 CTRL+C ==>终止前台运行的程序 CTRL+D ==> ...

  5. 正式班D12

    2020.10.21星期三 正式班D12 一.目录结构 系统目录结构 目录 文件夹:存放的是具体有哪些文件 文件:存放的就是具体的数据 需要记住的 /dev/cdrom # 光盘设备,光盘里存放的内容 ...

  6. 正式班D13

    2020.10.22星期四 正式班D13 修改文件内容 vim编辑 vim基础 可理解为Windows下的文本编辑器 vim可用来修改配置.写脚本 三种模式(命令模式.输入模式.末行模式) 命令模式按 ...

  7. 正式班D14

    2020.10.23星期五 正式班D14 9.5 文件处理三剑客(支持|) 9.5.1 sed流式编辑器 事先制定好编辑文件的指令,让sed自动完成对文件的整体编辑(同一时间内存中只有文件中一条) # ...

  8. 正式班D16

    2020.10.27星期二 正式班D16 目录 9.9 字符处理命令 9.9.1 sort排序 9.9.2 uniq去重 9.9.3 cut处理规律文本 9.9.4 tr替换 9.9.5 wc统计 9 ...

  9. 正式班D20

    2020.11.02星期五 正式班D20 目录 11 软件包管理 11.1 软件包介绍 11.1.1 编程语言分类 11.1.2 三种安装包 11.2 rpm包管理 11.2.1 rpm包简介 11. ...

随机推荐

  1. git 合并两个分支的某个文件

    软件开发基本都是多个feature分支并行开发,而在上线前有可能某个分支的开发或测试还没有完成,又或者是产品调整,取消了该分支功能的上线计划,我们在release前不合并该分支即可,然而如果该分支中的 ...

  2. unity坑-编译错误

    问题: 项目里面有一个 StreamReader来读取一个文件,使用OpenText() 方法. 但是UNITY却提示 StreamReader类不包含OpenText()方法,并且也没有找到扩展方法 ...

  3. 如何让css样式只在当前组件起作用?

    当前组件<style>写成<style  scoped>

  4. Linux 用户与权限

    这些天一直在看Linux的命令但是却没有写文章,因为感觉没有必要,哪些简单的命令,vi cat cd 啥的,是个做开发的就知道,所以就没写; 用户管理 第一个我们知道的用户就是Root 没错哦,这就是 ...

  5. 支持MySQL数据库的agumaster版本

    下载地址:https://files.cnblogs.com/files/xiandedanteng/agumaster20200501.zip

  6. 20190923-11Linux crond 系统定时任务 000 019

    crond 服务管理 1.重新启动crond服务 [root@hadoop101 ~]# service crond restart centOS7是 systemctl restart crond ...

  7. Bootstrap4总结

    一. bootstrap简介 Bootstrap,来自 Twitter(全国最大的微博),是目前最受欢迎的前端框架. bootstrap下载及演示 http://v3.bootcss.com 什么是b ...

  8. Java并发编程之闭锁与栅栏

    一.前言 闭锁与栅栏是在多线程编程中的概念,因为在多线程中,我们不能控制线程的执行状态,所以给线程加锁,让其按照我们的想法有秩序的执行. 闭锁 CountDownLatch,实例化时需要传入一个int ...

  9. pytest测试框架 -- setup和teardown等

    一.用例运行级别 1.函数级别(setup.teardown 或 setup_function.teardown_function): 仅对处于同作用域的测试函数有效(该函数定义不在类中,则对非类中测 ...

  10. adb安装apk包提示protocol failure问题

    截图来自CSDN,待验证