计算机史话

阿兰图灵是通用计算机的提出者,但是在有些问题上效率十分低下。

图灵机,又称图灵计算机指一个抽象的机器,是,英国数学家艾伦・麦席森・图灵(1912―-1954年)于1936年提出的一种抽象的计算模型,即将人们使用纸笔进行数学运算的过程进行抽象,由一个虚拟的机器替代人类进行数学运算。它有一条无限长的纸带,纸带分成了一个一个的小方格,每个方格有不同的颜色。有一个机器头在纸带上移来移去。机器头有一组内部状态,还有一些固定的程序。在每个时刻,机器头都要从当前纸带上读入一个方格信息,然后结合自己的内部状态查找程序表,根据程序输出信息到纸带方格上,并转换自己的内部状态,然后进行移动

最早的存储指令结构计算机模型实际是由ENIAC创建者埃可特和莫奇利,冯诺依曼与以上二位共同商议,1944年9月起草了《EDVAC报告书一号草案》,并署名,且为埃可特和莫奇利留了署名位置,但戈德斯塔提前发表了这份报告导致埃可特和莫奇利没有书名,所以现在存储程序计算机的逻辑结构成了广为人知的“冯诺依曼体系结构”。明确提出了,存储程序,顺序执行指令,使用二进制开关电路。并且这个体系产生了两个新的工程学科,计计算机体系结构和软件工程。冯诺依曼把计算机硬件划分为:CA(中央运算单元)CC(中央控制单元)M(内存)I(输入设备)O(输出设备。)

第一台冯诺依曼体系计算机1948年6月研制出原型机”Baby”由英国团队研制出来。

二战期间英国的计算机水平非常厉害,但是英国政府隐瞒了计算机方面研究的成就,包括阿兰图林一度不为人所知,因此导致美国冯诺依曼体系结构成了以后计算机的主要设计思想。

香农定律是关于信道容量的计算的一个经典定律,可以说是信息论的基础。

Bug,是女程序员葛蕾丝霍普引入。

计算机发展

第0代:从17世纪开始西方的机械计算机迅速发展。中国的算盘不能归于计算机,其需要人工拨珠修改数据,人工检查结果。最本质的就是运算中需要人工计算拨动珠子这一点,当然中国的珠算是拥有数千年历史的计算工具,其自然有其其强大之处,能够把人力计算发展到很强大的状态,但其主要的计算任务还是由人来操作这一点就有与现代意义上的计算机有着本质区别了。西方的机械计算器,只需要人工输出后回自动计算,得出结果。二者有着本质的区别。

第1代:电子管数字机(1946—1958年),硬件方面,逻辑元件采用的是真空电子管,主存储器采用汞延迟线、阴极射线示波管静电存储器、磁鼓、磁芯;外存储器采用的是磁带。软件方面采用的是机器语言、汇编语言。应用领域以军事和科学计算为主。这一时期体积大、功耗高、可靠性差、速度慢(一般为每秒数千次至数万次)、价格昂贵。这一时期还没有操作系统的概念,通常称为单道批处理系统(Single-Stream Batch Processing System)将一批作业一次性提交给计算机执行,计算机程序则都是程序员通过纸带等直接编程与计算机交互。

第2代:晶体管数字机(1958—1964年),软件方面的操作系统、高级语言及其编译程序应用领域以科学计算和事务处理为主,并开始进入工业控制领域。开始研发多道程序系统(Multiprogramming System)。这种操作系统能够同时处理多个程序,每个程序都有自己的内存空间和CPU时间片,从而提高了计算机的利用率。特点是体积缩小、能耗降低、可靠性提高、运算速度提高(一般为每秒数10万次,可高达300万次)、性能比第1代计算机有很大的提高。

第3代:集成电路数字机(1964—1970年),硬件方面,逻辑元件采用中、小规模集成电路(MSI、SSI),主存储器仍采用磁芯。软件方面出现了分时操作系统以及结构化、规模化程序设计方法。特点是速度更快(一般为每秒数百万次至数千万次),而且可靠性有了显著提高,价格进一步下降,产品走向了通用化、系列化和标准化等。应用领域开始进入文字处理和图形图像处理领域。随着编程语言的发展,现代操作系统开始出现和成熟。

第4代:大规模集成电路计算机(1970年-2000年左右),硬件方面,逻辑元件采用大规模和超大规模集成电路(LSI和VLSI)。软件方面出现了数据库管理系统、网络管理系统和面向对象语言等。1971年世界上第一台微处理器在美国硅谷诞生,开创了PC新时代。应用领域从科学计算、事务管理、过程控制逐步走向家庭。这一时期也是个人计算机操作系统,网络操作系统发展和成熟时期。

第5代:移动计算云计算的崛起(2000年左右-至今),移动计算,以手机为主的移动设备迅速发展,计算性能不断提高。 移动计算与云计算是相辅相成的,大量的计算任务从终端部署到云上,当然这二者与高速互联网的发展密不可分。这一阶段各种移动操作系统,以及网络计算系统发展成熟,并且迅速更新迭代。

未来的发展预测:虽然如今又不断向人工智能,量子计算机方向发展,但是像人工智能本质上还是传统计算机模型,只是针对硬件进行了特殊设计,并没有什么改革性的发展。量子计算机目前更是没有成熟,也没有广泛的应用。不过这两者以后不远即将会成熟和发展成为主流。

计算机分类

Flynn分类 1966年,Michael J.Flynn提出根据指令流、数据流的并行度对计算机系统进行分类,定义如下。 ·指令流:机器执行的指令序列 ·数据流:由指令流调用的数据序列,包括输入数据和中间结果 ·并行度:指令或数据并行执行的最大可能数目。 Flynn根据不同的指令流-数据流组织方式把计算机系统分为4类。 1·单指令流单数据流(Single Instruction Stream Single DataStream,SISD) SISD其实就是传统的顺序执行的单处理器计算机,其指令部件每次只对一条指令进行译码,并只对一个操作部件分配数据。 2·单指令流多数据流(Single Instruction Stream Multiple Data Stream,SIMD) SIMD以并行处理机为代表,结构如图1,并行处理机包括多个重复的处理单元PU1~PUn,由单一指令部件控制,按照同一指令流的要求为它们分配各自所需的不同的数据。 3·多指令流单数据流(Multiple Instruction Stream Single Data Stream,MISD) MISD的结构,它具有n个处理单元,按n条不同指令的要求对同一数据流及其中间结果进行不同的处理。一个处理单元的输出又作为另一个处理单元的输入。 4·多指令流多数据流(Multiple Instruction Stream Multiple Data Stream,MIMD) MIMD的结构是指能实现作业、任务、指令等各级全面并行的多机系统,多处理机就属于MIMD。 冯式分类 1972年冯泽云提出用最大并行度来对计算机体系结构进行分类。所谓最大并行度Pm是指计算机系统在单位时间内能够处理的最大的二进制位数。设每一个时钟周期△ti内能处理的二进制位数为Pi,则T个时钟周期内平均并行度为Pa=(∑Pi)/T(其中i为1,2,…,T)。平均并行度取决于系统的运行程度,与应用程序无关,所以,系统在周期T内的平均利用率为μ=Pa/Pm=(∑Pi)/(TPm)。用平面直角坐标系中的一点表示一个计算机系统,横坐标表示字宽(N位),即在一个字中同时处理的二进制位数;纵坐标表示位片宽度(M位),即在一个位片中能同时处理的字数,则最大并行度Pm=NM。 由此得出四种不同的计算机结构: ①字串行、位串行(简称WSBS)。其中N=1,M=1。 ②字并行、位串行(简称WPBS)。其中N=1,M>1。 ③字串行、位并行(简称WSBP)。其中N>1,M=1。 ④字并行、位并行(简称WPBP)。其中N>1,M>1。

计算机安全

硬件安全

位置保护,计算机硬件所在物理位置的保护。

物理入侵检测,对计算机硬件所在物理位置的未授权访问的检测。

硬件攻击,对信息或计算机硬件表示的物理攻击的方法。

窃听,攻击监视器的闪光、声音、无线电或其他信号来检测通信与计算。

物理接口攻击

环境安全

硬件泄密

电磁,温度等

物理攻击和窃听

OS&软件安全

操作系统安全

访问控制,CPU,进程内存(缓冲区溢出攻击),硬盘数据加密等

认证授权

口令,智能卡,生物特性(指纹,虹膜,笔迹,动作等)

数字签名

RSA,MD5,SHA1,DSA,ECDSA椭圆曲线数字签名算法

数字签名通常是不可解密,使用哈希函数进行摘要。

数据加密

对称(AES,DES)

非对称(RSA,Diffie-Hellman密钥交换协议 )

病毒相关

各种恶意软件窃取数据或者破坏计算机系统以及在计算机系统上安插后门

渗入威胁主要有:假冒、旁路控制、授权侵犯;

植入威胁主要有:特洛伊木马、陷门。

网络安全

网络攻击主要有四种方式中断、截获、修改和伪造。

中断是以可用性作为攻击目标,它毁坏系统资源,使网络不可用。

截获是以保密性作为攻击目标,非授权用户通过某种手段获得对系统资源的访问。

修改是以完整性作为攻击目标,非授权用户不仅获得访问而且对数据进行修改。

伪造是以完整性作为攻击目标,非授权用户将伪造的数据插入到正常传输的数据中。

解决方案

入侵检测系统部署入侵检测能力是衡量一个防御体系是否完整有效的重要因素,强大完整的入侵检测体系可以弥补防火墙相对静态防御的不足。入侵检测系统集入侵检测、网络管理和网络监视功能于一身,能实时捕获内外网之间传输的所有数据,利用内置的攻击特征库,使用模式匹配和智能分析的方法,检测网络上发生的入侵行为和异常现象,并在数据库中记录有关事件,作为网络管理员事后分析的依据,系统可以发出实时报警。

漏洞扫描系统,采用最先进的漏洞扫描系统定期对工作站、服务器、交换机等进行安全检查,并根据检查结果向系统管理员提供详细可靠的安全性分析报告,为提高网络安全整体水平产生重要依据。

网络安全软件部署,各种杀毒软件等。

网络安全相关硬件部署,如蜜糖机等。

网络硬件安全

路由器,交换机,硬件防火墙,

网络传输安全

防火墙

数据完整性

数据防篡改

入侵检测,DDOS攻击

计算机系统软硬件以及网络都涉及

计算机原理

1·机内数据表示:硬件能直接辨识和操作的数据类型和格式 2·寻址方式:最小可寻址单位、寻址方式的种类、地址运算 3·寄存器组织:操作寄存器、变址寄存器、控制寄存器及专用寄存器的定义、数量和使用规则 4·指令系统:机器指令的操作类型、格式、指令间排序和控制机构 5·存储系统:最小编址单位、编址方式、主存容量、最大可编址空间 6·中断机构:中断类型、中断级别,以及中断响应方式等 7·输入输出结构:输入输出的连接方式、处理机/存储器与输入输出设备间的数据交换方式、数据交换过程的控制 8·信息保护:信息保护方式、硬件信息保护机制。

计算机硬件系统

1.指令系统包括机器指令的操作类型、格式、寻址等。 2.存储系统包括多级存储层次、虚拟存储器结构、高速缓冲存储器结构及存储保护等。 3.输入输出系统包括通道结构、输入输出处理机结构等。 4.中央处理机结构包括冯·诺依曼结构、非冯·诺依曼结构、重叠结构、流水结构、并行处理结构等。 5.多机系统包括互连技术,多处理机结构、分布处理结构、计算机网络结构等。 6.人机通信联系包括人-机接口、计算机可靠性、可用性和可维护性(这三者称为RAS技术)、容错技术、故障诊断等。 此外,还研究计算机硬件描述语言、计算机系统性能评价等内容。

计算机软件系统

编译原理

Lex,Flex

Yacc,Bison

词法分析

正则表达式

有限自动机DFA

非确定有限自动机NFA

语法分析

上下文无关文法

推导 语法分析树 二义性文法 文件结束符

预测分析 LR分析

计算机网络系统

计算机网络系统