第五课:集成电路与摩尔定律(硬件的发展)、操作系统、内存和储存介质(存储技术的发展)、文件系统、压缩、命令行界面及屏幕与 2D 图形显示
- 第十七章:集成电路与摩尔定律(硬件的发展)
- 1、分立元件与数字暴政
- 2、集成电路与仙童半导体
- 3、光刻0421
- 4、摩尔定律
- 5、进一步小型化会碰到的问题
- 第18章:操作系统
- 1、操作系统(OS)
- 2、批处理
- 3、外部设备
- 4、设备驱动程序
- 5、多任务处理
- 6、虚拟内存
- 7、动态内存分配
- 8、内存保护
- 9、多用户分时操作系统(Multics)
- 10、Unix
- 第十九章:内存和储存介质(存储技术的发展)
- 1、纸卡 纸带
- 2、延迟线存储器
- 3、磁芯
- 4、磁带
- 5、磁鼓
- 6、硬盘
- 7、内存层次结构
- 8、软盘
- 9、光盘
- 10、固定硬盘(SSD)
- 第二十章:文件系统
- 为什么要采用文件格式
- 1、TXT 文本文件
- 2、WAV 音频文件
- 3、BMP 图片文件
- 4、目录文件
- 5、平面文件系统 - Flat File System
- 6、解决文件紧密的排序造成的问题
- 7、碎片整理
- 8、分层文件系统 - Hierarchical File System
- 第二十一章:压缩
- 压缩的好处
- 1、游程编码 Run-Length Encoding
- 2、无损压缩 Lossless compression
- 3、霍夫曼树 Huffman Tree和字典编码 Dictionary coders
- 4、感知编码 Perceptual coding和有损压缩 jpeg 格式
- 5、时间冗余 Temporal redundancy
- 第二十二章:命令行界面
- 1、人机交互(Human-Computer Interaction)发展史
- 2、人机交互工具的变化
- 3、命令行界面 Command line interface
- 第二十三章:屏幕与 2D 图形显示
- 1、PDP-1 计算机、键盘和显示器分开,屏幕显示临时值
- 2、阴极射线管 Cathode Ray Tube (CRT)
- 3、液晶显示器 Liquid Crystal Displays (LCD),像素 (Pixel)
- 4、字符生成器 Character generator
- 5、屏幕缓冲区 Screen buffer
- 6、矢量命令画图
- 7、Sketchpad,光笔(Light pen),位图显示和画矩形
各位小伙伴想要博客相关资料的话关注公众号:chuanyeTry即可领取相关资料!
第十七章:集成电路与摩尔定律(硬件的发展)
1、分立元件与数字暴政
一开始,计算机都有独立组件构成,叫“分立元件”,然后不同组件再用线连在一起,这会导致计算机的构成很复杂,这个问题叫做数字暴政。
2、集成电路与仙童半导体
封装复杂性:与其把多个独立部件用电线连起来,拼装出计算机,不如把多个组件包在一起,变成一个新的独立组件。
这种新的独立组件就叫集成电路(IC),仙童半导体(用硅做成)让集成电路变成了现实。为了不用焊接或用一大堆线,发明了印刷电路板(PCB),他通过蚀刻金属线的方式把零件连接到一起。
3、光刻0421
即用光把复杂图案印到材料上。我们把一片薄片状的硅叫做晶圆,通过一系列生产步骤,将晶圆表面薄膜的特定部分除去的工艺叫做光刻。
光刻组件示意图如下:
光刻成品示意图如下:
4、摩尔定律
每两年左右,得益于材料和制造技术的发展,同样大小的空间,能塞进两倍数量的晶体管。
5、进一步小型化会碰到的问题
- 由于光的波长限制,精度已到极限。
- 量子隧穿效应:当晶体管非常小,电极之间可能只距离几个原子,电子会跳过间隙,会产生漏电问题。
第18章:操作系统
1、操作系统(OS)
操作系统也是一种程序,不过它有操作硬件的特殊权限,可以运行和管理其他程序。
2、批处理
一个程序运行后会自动运行下一个程序。
3、外部设备
和计算机连着的其他设备,如打印机。
4、设备驱动程序
为了使所写程序和不同类型的电脑兼容,我们需要操作系统充当软件和硬件之间的媒介,更具体地说,操作系统提供程序编程接口(API)来抽象硬件,叫“设备驱动程序”。程序员可以用标准化机制,和输入输出硬件(I/O)交互。
5、多任务处理
操作系统能使多个程序在单个CPU上同时进行的能力,叫做“多任务处理”。
6、虚拟内存
多程序处理带来了一个程序所占用内存可能不连续的问题,导致程序员难以追踪一个程序,为了解决这个问题操作系统会把内存地址虚拟化,这叫“虚拟内存”。
7、动态内存分配
虚拟内存的机制使程序的内存大小可以灵活增减,叫做“动态内存分配”,对程序来说,内存看上去是连续的。
8、内存保护
给每个程序分配单独的内存,那当这个程序出现混乱时,它不会影响到其他程序的内存,同时也能有效地防止恶意程序篡改其他程序,这叫做内存保护。
9、多用户分时操作系统(Multics)
用来处理多用户同时使用一台计算机的情况,即每个用户只能用一小部分处理器,内存等。
10、Unix
把操作系统分成两个部分,一个是操作系统的核心部分,如内存管理,多任务和输入/输出处理,这叫做“内核”,第二部分是一堆有用的工具,比如程序和运行库。
第十九章:内存和储存介质(存储技术的发展)
1、纸卡 纸带
问题:读取慢、难修改、难存临时值
2、延迟线存储器
利用线的延迟在线里存储数据,又叫顺序存储器或者循环存储器。
存在问题:
1.不能随意调出数据
2.难以增加内存密度
3、磁芯
原理:电磁感应
问题:成本高
4、磁带
问题:访问速度慢
5、磁鼓
与磁带相似
6、硬盘
与磁带相似
7、内存层次结构
在计算机中,高速昂贵和低速便宜的内存混合使用以取得一个平衡。
8、软盘
除了磁盘是软的,其他都和硬盘一样,好处是便携。
9、光盘
原理:光盘表面有很多小坑,造成光的不同反射,光学传感器会捕获到,并解码为1和0。
10、固定硬盘(SSD)
里面是集成电路
第二十章:文件系统
为什么要采用文件格式
可以随便存文件数据,但按格式存会更方便。
1、TXT 文本文件
用ASCII解码。
2、WAV 音频文件
记录的是振幅。
3、BMP 图片文件
记录每个像素的红绿蓝 RGB 值
4、目录文件
用来解决多文件问题,存其他文件的信息,比如开头,结尾,创建时间等。
5、平面文件系统 - Flat File System
文件都在同一个层次,早期空间小,只有十几个文件,平面系统够用。
6、解决文件紧密的排序造成的问题
- 把空间划分成一块块
- 文件拆分存在多个块里
7、碎片整理
文件的增删改查会不可避免的造成文件散落在各个块里,如果是磁带这样的存储介质就会造成问题,所以需要碎片整理——计算机把文件内容调换位置。
8、分层文件系统 - Hierarchical File System
有不同文件夹,文件夹可以层层嵌套。
第二十一章:压缩
压缩的好处
能存更多文件,传输也更快
1、游程编码 Run-Length Encoding
适合经常出现相同值的文件,以吃豆人游戏为例:
2、无损压缩 Lossless compression
没有损失任何数据的压缩。
3、霍夫曼树 Huffman Tree和字典编码 Dictionary coders
一种高效的编码模式,以压缩图片为例。
4、感知编码 Perceptual coding和有损压缩 jpeg 格式
删掉人类无法感知的数据的有损压缩方法,叫做“感知编码”,如音频文件,人类听不到超声波,所以可以舍去,MP3就是音频的一种压缩形式。
有损压缩的一个例子就是jpeg模式,如图:
5、时间冗余 Temporal redundancy
一个视频由很多图片构成,其中很多图片的背景一样,这就构成了时间冗余,很多视频编码格式,只存变化的部分。进阶的视频压缩模式会找到帧与帧的相似性,然后打补丁,MPEG-4 是视频压缩的常见标准。
第二十二章:命令行界面
1、人机交互(Human-Computer Interaction)发展史
计算机早期同时输入程序和数据(用纸卡/纸带)运行开始直到结束,中间没有人类进行操作,原因是计算机很贵,不能等人类慢慢输入,执行完结果打印到纸上。
到1950年代,计算机足够便宜+快,人类和计算机交互式操作变得可行为了让人类输入到计算机,改造之前就有的打字机,变成电传打字机。
到1970年代末,屏幕成本足够低,屏幕代替电传打字机,屏幕成为标配。
2、人机交互工具的变化
- 早期输出数据是打印到纸上,而输入是用纸卡/纸带一次性把程序和数据都给进去。
- QWERTY 打字机的发展
- 电传打字机 Teletype machine
作用:用于发电报,使两人可以远距离沟通。
3、命令行界面 Command line interface
输入命令,计算机会给予回应。
第二十三章:屏幕与 2D 图形显示
1、PDP-1 计算机、键盘和显示器分开,屏幕显示临时值
2、阴极射线管 Cathode Ray Tube (CRT)
CRT 有两种绘图方式:
矢量扫描 Vector Scanning
光栅扫描 Raster Scanning
3、液晶显示器 Liquid Crystal Displays (LCD),像素 (Pixel)
随着显示技术的发展,出现了LCD,LCD 也用光栅扫描。在屏幕上显示的清晰的点,叫“像素”。
4、字符生成器 Character generator
相比于像素,为了减少内存,人们更喜欢使用字符,计算机需要额外硬件,来从内存读取字符,转换成光栅图形\N 这样才能显示到屏幕上个硬件叫“字符生成器”,基本算是第一代显卡。它内部有一小块只读存储器,简称 ROM,存着每个字符的图形,叫“点阵图案”。
5、屏幕缓冲区 Screen buffer
为了显示,“字符生成器”会访问内存中一块特殊区域,这块区域专为图形保留,叫屏幕缓冲区,程序想显示文字时,修改这块区域里的值就行。
6、矢量命令画图
概念非常简单:所有东西都由线组成,矢量指令可以画出线,把许多矢量指令存在硬盘上,就能画出很多由线组成的复杂图形。
7、Sketchpad,光笔(Light pen),位图显示和画矩形
Sketchpad ,一个交互式图形界面,用途是计算机辅助设计 (CAD)。
光笔,就是一个有线连着电脑的触控笔,有了它们,用户可以画出很完美的线条并进行缩放等操作。
位图显示,内存中的位对应着屏幕上显示的像素。
想画更复杂的图形,如画矩形,我们需要四个值,起点的x y坐标,高度和宽度。