上节课内容回顾:
1、什么是buffer与cache,它们各自的作用是什么 linux系统会把内存分为两种区域: buffer:缓冲区,攒一大波数据,再刷入硬盘 cache:缓存,把硬盘的数据在内存中缓存好,cpu取的时候可以直接从内存取 2、什么是内核态与用户态 内核态——>操作系统正在控制硬件 用户态-->应用程序正在运行 3、机械磁盘的IO延迟时间=平均寻道时间4ms+平均延迟时间5ms 4、一个7200转的硬盘带来的IO延迟大概是9ms 5、操作系统的启动流程是什么? 1、计算机加电 2、启动BIOS(计算机启动一定会先启动bios系统),扫描启动设备,从某一个启动设备中找到操作系统 3、读取启动设备的第一个扇区的大小(称之为主引导记录mbr) 446 bootloader=》grub程序 64分区信息 2结束标志位 4、grub程序负责将操作系统内核装载入内存,启动操作系统 5、操作系统会让BIOS去检测驱动程序
6、如何防止服务器断电? 1.选双电源机房。双电源接通到ups设备上。 2.机房应该配备ups。
3.配备小型柴油发电机
详见:https://zhidao.baidu.com/question/580332078.html
ups解释词:https://zhidao.baidu.com/question/24791206.html
7,、虚拟内存:
使计算机可以运行大于物理内存的程序,暂时不需要执行的程序放到磁盘的某块地方,这块地方成为虚拟内存,一般在特殊紧急情况下使用,保命为主,在linux中称为swap。
今日内容
一、硬盘接口
IDE并口
SATA串口===》现在常用
SCSI ======》现在常用
SAS(SATA+SCSI)
光纤通道
SSD+SAS=================》土豪
SSD+SATA=================》常规,对速度有特殊要求
机械硬盘+SAS==============》常规,比较核心业务使用,对速度要求常规
机械硬盘+SATA==============》内部服务
# raid=》"硬盘的集群"
多块硬盘要连接到RAID卡(阵列卡)上:
然后制作raid
raid0
至少1块盘
容量:n块盘何在一起的总容量
性能:理论上是N块盘合在在一起的读写速度,实际上是要略低一些
冗余性:不允许坏任何一块盘
场合:追求读写性能,但是对数据安全性没有啥要求,列如集群服务器
特点:追求速度,不考虑数据安全
raid1
至少2块盘
容量:1快盘的容量
性能:几乎就是一块盘的读写速度
冗余性:可以坏一块盘,另外一块盘有完整的数据
场合:对数据安全有要求,对速度读写速度没有特殊要求,列如服务器的系统盘
特点:追求数据安全,不考虑速度
raid5(介于raid0和raid1之间,是一种折中的方案)
至少3块盘,两两之间做校验===》异或运算,相同结果为0,不同结果为1
容量:废掉一块盘的容量,等量盘的情况下,容量低于raid0
性能:读写速度低于raid0,高于raid1
冗余性:可以坏一块盘,其余两块盘可以通过奇偶校验推导出坏盘的数据
场合:一般的场合都可以用
raid10
至少4块盘
raid1和raid0之间整合的产物,兼顾了raid1和raid0的性能,但是成本大幅度提升
通常用于数据库服务器
硬盘的容量单位:
1B=8Bit //字节(B、Byte)
1kB=1024B //千字节(KB、kilobyte)
1MB=1024KB //兆字节(MB,MegaByte)
1GB=1024MB //吉字节(GB,Gigabyte)
1TB=1024GB //太字节(TB,TeraByte)
1PB=1024TB //拍字节(PB,PetaByte)
1EB=1024PB //艾字节(EB,Exabyte)
1ZB=1024EB //泽字节(ZB,ZettaByte)
1YB=1024 ZB //尧字节(YB、YottaByte)
1BB=1024YB //BB(BrontoByte)
1NB=1024BB //NB (NonaByte)
1DB=1024NB //DB (doggaByte)
优化的基本原则
1.针对读操作,数据能从内存取就不要从硬盘
2.针对写操作,在内存中攒一波在写入硬盘
二、操作系统(了解)
前言:
操作系统最核心的概念就是进程
进程指的就是一个程序的运行过程,具体来说指的是操作系统控制硬件来运行的过程
第二代计算机
串行:多个任务是一个运行完毕后在运行下一个
批处理系统
一次把一个或者一道程序读入内存,运行完毕后,在执行下一个程序没有并行,称之为串行
优点:
1.充分利用了计算机资源
缺点:
1.让程序员明显感觉到等待
2.程序的运行是串行
3.整个过程都是人参与的
第三代计算机(******)
并发:多个任务看起来是同时运行
多道技术==》并发
1.空间上的复用:多道程序在运行前先必须加载到内存中
2.时间上的复用:多个任务复用凑的时间片,通俗的讲就是CPU在多个程序之间来回切换
什么时候切换呢? I:当一个任务遇到IO,肯定要切换-》提升效率 II:一个任务没有遇到IO但是占用CPU时间过长,也要切换=》降低效率 ps:多个进程的内存空间是互相隔离的,而且是物理隔离 分时操作系统CTTS:多用户多任务 应用多道技术来实现多个任务的并发的运行