0%

官方系统架构设计师教程-ch2-计算机与网络基础知识

计算机与网络基础知识

计算机系统由硬件和软件两部分组成。计算机系统中的软件通常分为系统软件和应用软件两大类。

系统软件支持应用软件的运行,为用户开发应用软件提供平台,用户可以使用它,但不能随意修改它。常用的系统软件有操作系统、语言处理程序、连接程序、诊断程序和数据库管理系统等。

应用软件是指计算机用户利用计算机的软、硬件资源为某一专门的应用目的而开发的软件。例如:科学计算、工程设计、数据处理、事务处理、过程控制等方面的程序,以及文字处理、表格处理、辅助设计(CAD)和实时处理等软件。

操作系统基础知识

操作系统(Operating System, OS)是计算机系统的核心系统软件,其他软件是建立在操作系统基础上的,并在操作系统的统一管理和支持下运行。操作系统与计算机系统软/硬件的关系如图2-1所示。

图2-1 操作系统与计算机系统软/硬件的关系找不到图片(Image not found)

操作系统的原理、类型和结构

操作系统定义

计算机系统的硬件资源包括中央处理机(CPU)、存储器(主存与外存)和输入/输出设备等物理设备。计算机系统的软件资源是以文件形式保存在存储器上的程序和数据等信息。操作系统既有效地组织和管理系统中的各种软、硬件资源,合理地组织计算机系统的工作流程,又控制程序的执行,并且为用户使用计算机提供了一个良好的环境和友好的接口,从而使用户能充分利用计算机资源,提高系统的效率。

操作系统的作用如下。

(1)通过资源管理,提高计算机系统的效率。

(2)改善人机界面,向用户提供友好的工作环境。

操作系统分类

操作系统按功能不同可分为:单用户操作系统和批处理操作系统;分时操作系统和实时操作系统;网络操作系统和分布式操作系统;以及嵌入式操作系统。

操作系统的特征

操作系统的4个特征是并发性(concurrency)、共享性(sharing)、虚拟性(virtual)和不确定性(non-determinacy)。

操作系统的功能

操作系统的五大管理功能是进程管理、文件管理、存储管理、设备管理和作业管理。

处理机与进程管理

进程(process)是资源分配和独立运行的基本单位。研究操作系统的进程,实质上是研究系统中诸进程之间的并发特性以及进程之间的相互制约性。

进程的定义及其分类

进程是程序的一次执行,该程序可以和其他程序并发执行。进程通常由程序、数据及进程控制块(Process Control Block, PCB)组成。PCB描述了进程的基本情况,是进程存在的唯一标志。

程序和进程的区别为程序是静态的指令序列,进程是为执行该程序的线程而保留的资源集。

进程依性质不同可分为:系统进程和用户进程;父进程和子进程。

进程的状态转换与控制

进程一般有2种基本状态:就绪、运行和阻塞。如图2-2(a)所示为进程基本状态及其转换,也称三态模型。

图2-2 进程基本状态及其转换找不到图片(Image not found)

进程的五态模型引入了新建态和终止态,如图2-2(b)所示。具有挂起状态的进程状态及其转换,如图2-3所示。

图2-3 进程状态及其转换找不到图片(Image not found)

进程控制是指对系统中所有进程从创建到消亡的全过程实施有效的控制。这意味着不仅要控制正在运行的进程,而且还要能创建新的进程,撤销已完成的进程。对进程进行控制的机构是由操作系统内核实现的,大多数操作系统的内核包含支撑功能和资源管理功能。进程控制是通过进程控制原语实现的,进程控制原语主要有创建原语、撤销原语、挂起原语、激活原语、阻塞原语和唤醒原语。

进程互斥与同步以及P,V操作
进程间的同步

异步环境下的一组并发进程之间互发消息、相互合作、互相等待,使得各进程按一定的速度执行的过程称为进程同步,也即同步是使在异步环境下的各进程按一定的顺序和速度执行。

进程间的互斥

一组并发进程中的一个或多个程序段,因共享某一公有资源而使得它们必须以一个不允许交叉的顺序执行。也即,互斥要保证临界资源在某一时刻只被一个进程访问。

临界资源

系统中有些资源可以供多个进程同时使用,有些资源一次只能供一个进程使用,称为临界资源(Critical Resource, CR),如打印机、公共变量和表格等。

临界区管理原则

临界区(Critical Section, CS)是进程中对临界资源实施操作的那段程序。互斥临界区管理的原则是$\color{green}{\text{有空即进}}$、$\color{green}{\text{无空则等}}$、$\color{green}{\text{有限等待}}$、$\color{green}{\text{让权等待}}$。

信号量机制

1965年,荷兰学者Dijkstra提出的信号量机制是一种卓有成效的进程同步与互斥的工具。

整型信号量与PV操作

信号量是一个整型变量,根据控制对象的不同赋不同的值。信号量分为两类。

● 公用信号量:实现进程间的互斥,初值=1或资源的数目。

● 私用信号量:实现进程间的同步,初值=0或某个正整数。

信号量S的物理意义是:S≥0表示某资源的可用数,S<0其绝对值表示阻塞队列中等待该资源的进程数。

PV操作是实现进程同步与互斥的常用方法。PV操作是低级通信原语,在执行期间不可分割。其中,P操作表示申请一个资源,V操作表示释放一个资源。

P操作定义:S:=S-1,若S≥0,则执行P操作的进程继续执行;否则若S<0,则置该进程为阻塞状态(因为无可用资源),并将其插入阻塞队列。

P操作可用如下过程表示:

图片详情找不到图片(Image not found)

V操作定义:S:=S+1,若S>0,则执行V操作的进程继续执行;否则若S≤0,则从阻塞状态唤醒一个进程,并将其插入就绪队列,然后执行V操作的进程继续执行。

V操作可用如下过程表示:

图片详情找不到图片(Image not found)
利用PV操作实现进程的互斥

令信号量mutex的初值为“1”,当进入临界区时执行P操作,退出临界区时执行V操作。则进入临界区的代码段如下:

代码详情
1
2
3
P(mutex)
临界区
V(mutex)
利用PV操作实现进程的同步

进程的同步是由于进程间合作引起的相互制约的问题,要实现进程的同步可用一个信号量与消息联系起来。当信号量的值为0时表示希望的消息未产生,当信号量的值为非0时表示希望的消息已经存在。假定用信号量S表示某条消息,进程可以通过调用P操作测试消息是否到达,调用v操作通知消息已准备好。

同步问题的经典例子是生产者—消费者问题。相应的程序段形式如下:

●生产者

Loop

生产一产品next;

P(Bufempty);

Next产品存缓冲区;

V(Buffull);

endloop

●消费者

Loop

P(Buffull);

V(Bufempty);

从缓冲区中取产品;

使用产品;

endloop

其中,信号量Bufempty和Buffull分别表示缓冲区中的空单元数和非空单元数,它们的初值分别是1和0。

进程通信与管程
进程通信

通信(communication)是指进程间的信息交换。根据通信内容可分为控制信息的交换和数据的交换。控制信息的交换称为低级通信,进程的同步与互斥是通过信号量来实现通信的,属于低级信息。数据的交换称为高级通信。高级通信的类型有共享存储系统和消息传递系统和管道通信。高级通信的方式有直接通信和间接通信。

管程

汉森(Brinsh Hansen)和霍尔(Hoare)提出了另一种同步机制——管程。

管程是由一些共享数据、一组能为并发进程执行的作用在共享数据上的操作的集合、初始代码以及存取权组成的,也即共享数据及在其上操作的一组过程就构成了管程。进程可以在任何需要资源的时候调用管程,且在任一时刻最多只有一个进程能够真正地进入管程,其他的只能等待。管程提供了一种可以允许多进程安全有效地共享抽象数据类型的机制。

每一个管程都有一个名字,形式如下:

图片详情找不到图片(Image not found)
进程调度与死锁
进程调度

进程调度即处理器调度(又称上下文转换),它的主要功能是确定把处理器在什么时候分配给哪一个进程。在某些操作系统中,一个作业从提交到完成需要经历高、中、低三级调度。

调度方式与算法

调度方式:调度方式是指当有更高优先级的进程到来时如何分配CPU。调度方式分为可剥夺和不可剥夺两种。

调度算法:常用的有先来先服务、时间片轮转(round robin)、优先级调度和多级反馈调度算法。

死锁

死锁是指两个以上的进程互相都因请求对方已经占有的资源,无限期地等待并无法继续运行下去的现象。

死锁是系统的一种出错状态,它浪费系统资源,还会导致整个系统崩溃,所以应该尽量预防和避免死锁。

死锁产生的原因及条件

产生死锁的原因是资源竞争及进程推进顺序非法。产生死锁的4个必要条件是互斥条件、请求保持条件、不可剥夺条件和环路条件。

解决死锁的策略:死锁的处理策略主要有4种:鸵鸟策略(即不理睬策略)、预防策略(破坏死锁的4个必要条件之一)、避免策略(精心地分配资源,动态地回避死锁)、检测与解除死锁(一旦发生死锁,系统不但能检测出,还能解除)。

线程

线程是进程中的一个实体,是被系统独立分配和调度的基本单位。在引入了线程的操作系统中,通常一个进程都有若干个线程。线程只拥有一些运行中必不可少的资源,它可与同属一个进程的其他线程共享进程所拥有的全部资源。线程具有许多传统进程所具有的特性,称为轻型进程(Light-Weight Process);称传统进程为重型进程(Heavy-Weight Process)。线程可创建另一个线程,同一个进程中的多个线程可并发执行。线程也具有就绪、运行、阻塞三种基本状态。

存储管理

存储器是计算机系统的关键性资源,是存放各种信息的主要场所。存储器的发展方向是高速、大容量和小体积。存储管理的主要任务是如何提高主存的利用率、扩充主存以及对主存信息实现有效保护。存储管理的对象是主存储器(简称主存或内存)。

存储管理的概念

存储组织的功能是在存储技术和CPU寻址技术许可的范围内组织合理的存储结构,使得各层次的存储器都处于均衡的繁忙状态,其依据是访问速度匹配、容量要求和价格等。一般存储器的结构有“寄存器—主存—外存”和“寄存器—缓存—主存—外存”两种,如图2-4所示。

图2-4 存储器的层次结构找不到图片(Image not found)

逻辑地址:用户程序经编译后,每个目标模块以0为基地址进行的顺序编址,它不是主存中的真实地址,是相对基地址而言的。逻辑地址又称为相对地址、程序地址或虚拟地址。

物理地址:主存中各存储单元的地址,从统一的基地址进行的顺序编址,是主存中的真实地址,可以寻址并实际存在。物理地址又称为绝对地址。

存储空间:简单说来,逻辑地址空间(简称地址空间)是逻辑地址的集合,物理地址空间(简称存储空间)是物理地址的集合。

地址重定位

程序的逻辑地址被转换成主存的物理地址的过程称为地址重定位。地址重定位有两种方式:静态重定位(在程序执行之前进行地址重定位,即装入内存时重定位)和动态重定位(在程序执行期间,在每次存储访问之前进行地址重定位)。

存储管理的功能

存储管理的功能有主存储器的分配和回收、提高主存储器的利用率、存储保护、主存扩充。

存储管理的方式

存储管理的方式有分区存储管理、分页存储管理、分段存储管理、段页式存储管理和虚拟存储管理。

设备管理

在计算机系统中,输入/输出(I/O)设备、辅存设备及终端设备等都称为外部设备,它们是计算机系统与外界交互的工具,具体负责计算机与外部的输入输出工作。

设备管理的任务是保证在多道程序环境下,当多个进程竞争使用设备时,按一定策略分配和管理各种设备,控制设备的各种操作,完成输入/输出设备与主存之间的数据交换。

设备管理的目标是提高设备的利用率,为用户提供方便统一的界面。

设备管理的主要功能是动态地掌握并记录设备的状态、设备分配和释放、缓冲区管理、实现物理输入/输出设备的操作、提供设备使用的用户接口、设备的访问和控制、输入/输出缓冲和调度。

设备的分类

按设备的使用特性分为存储设备、输入/输出设备、终端设备和脱机设备。

从资源分配角度分为独占设备、共享设备和虚拟设备。

按设备的从属关系分为系统设备和用户设备。

按数据组织方式分为块设备(Block Device)和字符设备(Character Device)

按数据传输速率分为低速设备、中速设备、高速设备。

按输入/输出对象分为人机通信设备、机机通信设备。

按是否可交互分为非交互设备、交互设备。

设备管理的主要技术

● 中断技术

● DMA技术(Direct Memory Access, DMA)

● 缓冲技术

● 虚设备与SPOOLING(simultaneous peripheral operations online,外围设备联机)技术

设备管理软件

● 中断处理程序

● 设备驱动程序

● 与设备无关的系统软件

● 用户层I/O软件

数据传输控制方式

设备管理的主要任务之一是控制设备和内存或CPU之间的数据传送,常用的数据传送控制方式如下。

● 程序控制方式

● 中断方式

● 直接存储访问方式

● 通道方式

磁盘调度算法

磁盘是可供多个进程共享的设备。磁盘调度是使各进程对磁盘的平均访问时间最小。常用的调度算法有先来先服务(first-come first-served, FCFS)、最短寻道时间优先(Shortest Seek Time First, SSTF)、扫描算法(SCAN)。

文件管理

文件(File)是具有符号名的、在逻辑上具有完整意义的一组相关信息项的集合。文件名的格式和长度因系统而异,操作系统根据文件名对其进行控制和管理。

文件管理系统是操作系统中对文件进行统一管理的一组软件和相关数据(即被管理的文件)的集合,简称文件系统。

文件系统的功能按名存取、统一用户接口、并发访问和控制、安全性控制、优化性能以及差错恢复。

文件的类型

按文件性质和用途可分为系统文件、库文件和用户文件。

按文件的安全属性可分为只读文件、读写文件、可执行文件和不保护文件。

按文件的组织形式可分为普通文件、目录文件、设备文件(特殊文件)。

按信息保存期限可分为临时文件、档案文件和永久文件。

按信息流向可分为输入文件、输出文件、输入/输出文件。

文件的结构和组织

文件的结构是指文件的组织形式。从用户角度看到的文件组织形式称为文件的逻辑结构,从实现角度看到的文件在存储设备上的存放方式,称为文件的物理结构。

文件的逻辑结构有结构的记录文件和无结构的字符流文件。

文件的物理结构有连续结构、链接结构、索引结构、多个物理块的索引表。

文件访问方法

文件的访问方法是指读写文件存储设备上的一个物理块的方法。常用的访问方法有$\color{green}{\text{顺序访问}}$和$\color{green}{\text{随机访问}}$。顺序访问是指对文件中的信息按顺序依次读写的方式;随机访问是指对文件中的信息可以按任意的次序随机地读写文件中的信息。

文件存储设备管理

文件是存储在文件存储设备上的,文件存储设备具有大容量、被多用户共享、多次被占用和释放的特点,因此,文件系统必须对文件存储设备上的空闲空间进行组织和管理,包括对空闲空间的组织、分配与回收等。常用的空闲空间管理方法有位图法、索引法和链接法。

文件控制块和文件目录

文件控制块是系统为每个文件设置的用于描述和控制文件的数据结构,它是文件存在的唯一标志,简称为(File Control Block, FCB)。FCB一般包含基本信息、位置信息、存取控制信息和使用信息。

文件目录是文件控制块的有序集合。常见的文件目录结构有一级目录结构、二级目录结构和多级目录结构。

文件的使用

工作目录也称当前目录。每个用户都有自己的工作目录,任一目录节点都可以被设置为工作目录,文件系统允许用户随时改变自己的工作目录。

文件系统提供了一组专门用于目录和文件管理的命令。如目录管理命令:建立目录、显示工作目录、改变目录、删除目录;文件控制命令:建立文件、删除文件、打开文件、关闭文件、改文件名、改变文件属性;文件存取命令:读写文件、显示文件内容、复制文件等。

文件的共享是指不同的用户使用同一文件,它是不同用户完成同一任务的必须的功能。

文件的安全是指文件的保密和保护,即限制非法用户使用和破坏文件。文件的安全管理措施常常在系统级、用户级、目录级和文件级上实施。

作业管理

作业管理和作业控制

作业是系统为完成一个用户的计算任务(或一次事务处理)所做的工作总和。它由程序、数据和作业说明书三部分组成。作业管理程序是操作系统中用来控制作业进入、执行和撤销的一组程序。

用户作业可以采用脱机和联机两种控制方式控制作业运行。作业控制块JCB是记录与该作业有关的各种信息的登记表。JCB是作业存在的唯一标志,包括用户名、作业名、状态标志等信息。在输入井中,通常将作业控制块排成一个或多个队列,称为作业后备队列,也就是说作业后备队列是由若干个JCB组成的。

作业状态及转换

作业的4种状态为提交、后备、执行和完成。作业的状态及其转换如图2-5所示。

图2-5 作业的状态及其转换找不到图片(Image not found)
作业调度及其常用调度算法

作业调度是完成从后备状态到执行状态的转变及从执行状态到完成状态的转变。常用的作业调度算法有先来先服务、短作业优先、响应比高优先、优先级调度算法和均衡调度算法。在一个以批量处理为主的系统中,通常用平均周转时间或平均带权周转时间来衡量作业调度算法的性能。

用户界面

用户界面是计算机中实现用户与计算机通信的软、硬件的总称。用户界面也称用户接口或人机界面。

用户界面的硬件部分包括用户向计算机输入数据或命令的输入装置及由计算机输出供用户观察或处理的输出装置。目前常用的输入/输出装置有键盘、鼠标、显示器和打印机等。用户界面的软件部分包括用户与计算机相互通信的协议、约定、操纵命令及其处理软件。常用的人机通信方法有命令语言、菜单选项、图符驱动、表格填充、视窗操作及直接操纵等。

网络操作系统

网络操作系统

网络操作系统(Network Operating System, NOS)是使网络中各计算机能方便而有效地共享网络资源,为网络用户提供所需的各种服务的软件和有关规则的集合。通常的操作系统具有处理机管理、存储器管理、设备管理及文件管理,而网络操作系统除了具有上述的功能外,还具有提供高效、可靠的网络通信能力和提供多种网络服务的功能。

网络操作系统的特征

网络操作系统的特征包括硬件独立性、多用户支持、支持网络实用程序及其管理功能、多种客户端支持、提供目录服务以及支持多种增值服务等。

网络操作系统的分类

网络操作系统分为集中模式、客户机/服务器模式和对等模式(peer-to-peer)。

现代操作系统已把网络功能包含到操作系统的内核中,作为操作系统核心功能的一个组成部分,并由此决定了不同网络的应用领域及方向。目前最流行的网络操作系统主要有NetWare系列、Windows系列、UNIX和Linux及相应的服务软件。

常见操作系统简介

Unix系统

UNIX操作系统是由美国贝尔实验室发明的一种多用户、多任务的分时操作系统。现已广泛运行于中型机和小型机等各种环境,用于大型信息系统的关键业务处理,如数据库和Internet主机。UNIX结构如图2-6所示。UNIX最内层硬件提供基本服务,内核提供全部应用程序所需的各种服务。

图2-6 UNIX系统结构找不到图片(Image not found)

目前,UNIX通常与服务硬件产品集成在一起,具有代表性的有IBM公司的AIXUNIX、SUN公司的SolarisUNIX和HP公司的HPUNIX等。

Windows家族

Microsoft公司的Windows操作系统家族产品有Windows95、Windows98、Windows ME、Windows 2000 Professional、Windows XP、Windows Server 2003和Windows Vista等。

Windows Server 2003是继Windows XP后Microsoft发布的又一个产品,它在Windows 2000 Server的基础上增加了许多新功能,包括配置流程向导、远程桌面连接、Internet信息服务(IIS6.0)、简单的邮件服务器(POP3)、流式媒体服务器(Windows Media Services, WMS)、系统关闭事件跟踪等功能。

Linux系统

1991年,芬兰赫尔辛基大学的学生Linus Torvalds利用互联网,发布了他在i386个人计算机上开发的Linux操作系统内核的源代码,创建了具有全部UNIX特征的Linux操作系统。Linux是一个支持多用户、多任务、多进程、实时性较好的、功能强大而稳定的操作系统,也是目前运行硬件平台最广泛的操作系统。Linux是以互联网和开放源码为基础的,许多系统软件的设计专家们都利用互联网对它进行了改进和提高。近年来,Linux得到了包括IBM、COMPAQ、HP、Oracle、Sybase、Informix在内的许多著名软硬件公司的支持,目前Linux已全面进入应用领域。

RedHatLinux是目前世界上使用最多的Linux操作系统家庭成员,它提供了丰富的软件包,具有强大的网络服务、多媒体应用和安全管理等功能。

数据库系统基础知识

数据库(DataBase, DB)是指长期储存在计算机内的、有组织的、可共享的数据集合。数据库系统(DataBase System, DBS)从广义上讲是由数据库、硬件、软件和人员组成,管理的对象是数据。数据库管理系统(DataBase Management System, DBMS)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库。主要功能有数据定义、数据库操作、数据库运行管理、数据组织、存储和管理、数据库的建立与维护及其他功能。DBMS通常分为三类:关系数据库系统(Relation DataBase Systems, RDBS)、面向对象的数据库系统(Object-Oriented DataBase system, OODBS)、对象关系数据库系统(Object-Oriented Relation DataBase system, ORDBS)。

数据库系统采用三级模式结构,如图2-7所示。数据库系统在三级模式间提供了两级映像:模式/内模式映像、外模式/模式映像来保证数据库中数据具有较高的逻辑独立性和物理独立性。

关系数据库基础

数据库的结构与模式

数据库结构的基础是数据模型,是用来描述数据的一组概念和定义。数据模型的三要素是数据结构、数据操作以及数据的约束条件。常用的数据模型有概念数据模型、基本数据模型以及面向对象模型。

图2-7 数据库系统体系结构找不到图片(Image not found)

关系数据模型由关系数据结构、关系操作集合和关系完整性约束三大要素组成。

实体—联系(E-R)模型

概念模型中最常用的方法为实体—联系方法,简称E-R方法,主要概念有实体、联系和属性。该方法直接从现实世界中抽象出实体和实体间的联系(如图2-8所示)。

图2-8 实体和实体间的联系找不到图片(Image not found)

E-R图的主要构件如表2-1所示。

表2-1 E-R图的主要构件找不到图片(Image not found)

某学校教学管理的E-R模型如图2-9所示。

图2-9 某学校教学管理E-R模型找不到图片(Image not found)

特别需要指出的是,E-R模型强调的是语义,与现实世界的问题密切相关。扩充的E-R模型包括弱实体、特殊化、概括和聚集等。

数据的规范化

规范化理论研究的是关系模式中各属性之间的依赖关系及其对关系模式性能的影响。关系数据库设计理论的核心是数据间的函数依赖,衡量的标准是关系规范化的程度及分解的无损连接和保持函数依赖性。

数据依赖是通过一个关系中属性间值的相等与否体现出来的数据间的相互关系,是现实世界属性间联系和约束的抽象,是数据内在的性质,是语义的体现。函数依赖则是一种最重要、最基本的数据依赖。包括函数依赖、非平凡的函数依赖、平凡的函数依赖、完全函数依赖、部分函数依赖、传递依赖、码、主属性和非主属性、外码、值依赖定义、函数依赖的公理系统(Armstrong公理系统)。

范式是关系模型满足的确定约束条件。范式有1NF(第一范式)、2NF(第二范式)、3NF(第三范式)、BCNF(巴克斯范式)、4NF(第四范式)和5NF,其中1NF级别最低。这几种范式之间有5NF⊂4NF⊂BCNF⊂3NF⊂2NF⊂1NF成立。

关系模型的规范化是指把一个低一级范式的关系模式转换成若干个高一级范式的关系模式的过程。关系数据库设计的方法之一就是设计满足适当范式的模式,并通过判断分解后的模式达到第几范式来评价模式规范化的程度。

事务管理

事务是一个操作序列,这些操作“要么都做,要么都不做”,事务是数据库环境中不可分割的逻辑工作单位。事务和程序是两个不同的概念,一般一个程序可包含多个事务。

事务的4个特性:原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)。这4个特性也称为事务的ACID性质。

在SQL语言中事务定义的语句有三条:BEGIN TRANSACTION事务开始、COMMIT事务提交和ROLLBAK事务回滚。

并发控制

并发操作是指在多用户共享的系统中,用户可能同时对同一数据进行操作。并发操作带来的问题是数据的不一致,主要有丢失更新、不可重复读和读脏数据。其主要原因是事务的并发操作破坏了事务的隔离性。DBMS的并发控制子系统负责协调并发事务的执行,保证数据库的完整性不受破坏,避免用户得到不正确的数据。

并发控制的主要技术是封锁。封锁的类型有排他锁(简称X锁或写锁)和共享锁(简称S锁或读锁)。并发控制还与三级封锁协议、活锁与死锁、并发调度的可串行性、两段封锁协议、封锁的粒度、事务的嵌套等有关。

数据库的备份与恢复

在数据库的运行过程中,难免会出现计算机系统的软、硬件故障,从而影响数据库中数据的正确性,甚至破坏数据库,使数据库中全部或部分数据丢失。因此,保护数据库的关键技术在于建立冗余数据,即备份数据。建立冗余数据的方法是进行数据转储和建立日志文件。数据的转储分为 $\color{green}{\text{静态转储}}$ 和 $\color{green}{\text{动态转储}}$ 、 $\color{green}{\text{海量转储}}$ 和 $\color{green}{\text{增量转储}}$ 。如何在系统出现故障后能够及时使数据库恢复到故障前的正确状态,就是数据库恢复技术。

数据库的4类故障是事务故障、系统故障、介质故障及计算机病毒。

事务故障的恢复一般有两个操作:撤销事务(UNDO)和重做事务(REDO)。

介质故障的恢复需要数据库管理员(DataBase Administrator, DBA)的参与,装入数据库的副本和日记文件副本,再由系统执行撤销和重做操作。

在一个数据库系统中,这两种方法一般是同时采用的。为了避免磁盘介质出现故障影响数据库的可用性,许多DBMS提供数据库镜像功能用于数据库恢复,数据库镜像是通过复制数据实现的,但频繁地复制数据会降低系统的运行效率,因此实际应用中往往只对关键的数据和日志文件镜像。

关系数据库设计

数据库设计是指对于一个给定的应用环境,构造最优的数据库,建立数据库及其应用系统,使之能有效地存储数据,满足各种用户的需求。数据库设计包括结构特性的设计和行为特性的设计两方面的内容。

数据库设计的特点

数据库设计的很多阶段都可以和软件工程的各阶段对应起来,数据库设计的特点有:从数据结构即数据模型开始,并以数据模型为核心展开,这是数据库设计的一个主要特点;静态结构设计与动态行为设计分离;试探性;反复性和多步性。

数据库设计的方法

目前已有的数据库设计方法可分为4类,即直观设计法、规范设计法、计算机辅助设计法和自动化设计法。常用的有基于3NF的设计方法、方法、基于实体联系(E-R)模型的数据库设计方法、基于视图概念的数据库设计方法、面向对象的关系数据库设计方法、计算机辅助数据库设计方法、敏捷数据库设计方法等。

数据库设计的基本步骤

数据库设计分为需求分析、概念结构设计、逻辑结构设计、物理结构设计、应用程序设计和运行维护6个阶段,如图2-10所示。

图2-10 数据库的设计步骤找不到图片(Image not found)
需求分析

需求分析阶段的任务是:对现实世界要处理的对象(组织、部门、企业等)进行详细调查,在了解现行系统的概况、确定新系统功能的过程中,收集支持系统目标的基础数据及其处理方法。需求分析是在用户调查的基础上,通过分析逐步明确用户对系统的需求,包括数据需求和围绕这些数据的业务处理需求。

在需求分析中,通过自顶向下、逐步分解的方法分析系统。分析的结果用数据流图(Data Flow Diagram, DFD)进行图形化的描述,并用一些规范的表格对数据分析结果和描述做补充,最后形成需求说明书。

概念结构设计

数据库概念结构设计是在需求分析的基础上,依照需求分析中的信息需求,对用户信息加以分类、聚集和概括,建立信息模型,并依照选定的数据库管理系统软件,把它们转换为数据的逻辑结构,再依照软硬件环境,最终实现数据的合理存储。这一过程也称为数据建模。

数据库概念结构设计的策略通常有自顶向下、自底向上、逐步扩张、混合策略,最常用的是自底向上策略。

设计数据库概念模型的最著名、最常用的方法是P. P. S. chen于1976年提出的“实体—联系方法”(Entity Relationship Approach),简称E-R方法。采用E-R方法的数据库概念结构设计可分为三步:设计局部E-R模型、设计全局E-R模型以及全局E-R模型的优化。

逻辑结构设计

逻辑结构设计是在概念结构设计基础上进行的数据模型设计,可以是层次、网状模型和关系模型。逻辑结构设计阶段的主要任务是确定数据模型、将E-R图转换为指定的数据模型、确定完整性约束、确定用户视图。

物理结构设计

数据库在物理设备上的存储结构与存取方法称为数据库的物理结构。数据库的物理结构设计是对已确定的数据库逻辑结构,利用DBMS所提供的方法、技术,以较优的存储结构和数据存取路径、合理的数据存放位置以及存储分配,设计出一个高效的、可实现的数据库物理结构。

一般来说,物理结构设计要做的工作有存储记录的格式设计、存储结构设计、存取方法设计和确定系统配置。

数据库应用程序设计

数据库应用系统开发是DBMS的二次开发,一方面是对用户信息的存储,另一方面就是对用户处理要求的实现。

数据库应用程序设计要做的工作有选择设计方法、制定开发计划、选择系统架构、设计安全性策略。在应用程序设计阶段,设计方法有结构化设计方法和面向对象设计方法两种;安全性策略主要是指硬件平台、操作系统、数据库系统、网络及应用系统的安全。

数据库应用系统的实现是根据设计、由开发人员编写代码程序来完成的,包括数据库的操作程序和应用程序。作为关系数据库标准语言,SQL已经被大量的DBMS系统所使用。

数据库运行和维护

数据库的正常运行和优化也是数据库设计的内容之一。在数据库运行维护阶段要做的工作主要有数据库的转储和恢复,数据库的安全性和完整性控制,数据库性能的监督、分析和改造,数据库的重组和重构等。

分布式数据库系统

分布式数据库的概念

分布式数据库系统(Distributed Database System, DDBS)是针对地理上分散,而管理上又需要不同程度集中管理的需求而提出的一种数据管理信息系统。满足分布性、逻辑相关性、场地透明性和场地自治性的数据库系统被称为完全分布式数据库系统。

分布式数据库系统的特点是数据的集中控制性、数据独立性、数据冗余可控性、场地自治性和存取的有效性。

分布式数据库的体系结构

我国在多年研究与开发分布式数据库及制定《分布式数据库系统标准》中,提出了把分布式数据库抽象为4层的结构模式,如图2-11所示。这种结构模式得到了国内外一定程度的支持和认同。

图2-11 分布式数据库结构模式图找不到图片(Image not found)

4层模式划分为全局外层、全局概念层、局部概念层和局部内层,在各层间还有相应的层间映射。这种4层模式适用于同构型分布式数据库系统,也适用于异构型分布式数据库系统。

分布式数据库系统的应用

分布式数据库的应用领域有分布式计算、Internet应用、数据仓库、数据复制以及全球联网查询等,Sybase公司的Replication Server即是一种典型的分布式数据库系统。

商业智能

商业智能基本概念

商业智能(Business Intelligence, BI)是企业对商业数据的搜集、管理和分析的系统过程,目的是使企业的各级决策者获得知识或洞察力,帮助他们做出对企业更有利的决策。它是数据仓库、联机分析处理(Online Analytical Processing, OLAP)和数据挖掘等相关技术走向商业应用后形成的一种应用技术。

商业智能系统主要实现将原始业务数据转换为企业决策信息的过程。它主要包括数据预处理、建立数据仓库、数据分析及数据展现4个主要阶段。

一般认为数据仓库、联机分析处理和数据挖掘技术是商业智能的三大组成部分。

数据仓库
数据仓库的概念与特性

著名的数据仓库专家W. H. Inmon在Building the Data Warehouse一书中将数据仓库定义为:数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile),且随时间变化的(Time Variant)数据集合,支持管理部门的决策过程。

数据仓库的关键特征为面向主题、集成的、非易失的、时变的。

数据仓库的结构

数据仓库采用三层结构,底层是数据仓库服务器、中间层是OLAP服务器、顶层是前端工具,如图2-12所示。

图2-12  $\color{green}{\text{数据仓库体系结构}}$找不到图片(Image not found)
数据仓库的实现方法

数据仓库的实现步骤有规划、需求研究、问题分析、数据的抽取清洗集成装载、数据仓库设计、数据仓库管理、分析报表查询、数据仓库性能优化及数据仓库的部署发布等几个步骤。实现方法有自顶向下方法、自底向上方法及二者混合方法。

对于开发数据仓库系统,一个推荐的方法是以递增、进化的方式实现数据仓库,如图2-13所示。

图2-13 数据仓库开发的推荐方法找不到图片(Image not found)
多维分析海量数据分析器——OLAP

对于TB级的海量数据,联机分析处理OLAP利用多维的概念,提供了切片、切块、下钻、上卷和旋转等多维度分析与跨维度分析功能。

OLAP系统架构主要分为基于关系数据库的ROLAP(Relational OLAP)、基于多维数据库的MOLAP(Multidimensional OLAP)和基于混合数据组织的HOLAP(Hybrid OLAP)三种。

数据挖掘

从技术上来看,数据挖掘(data mining)是从大量的、不完全的、有噪声的、模糊的、随机的数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。从商业的角度来看,数据挖掘是一种新的商业信息处理技术,其主要特点是对大量业务数据进行抽取、转换、模型化处理,从中提取辅助商业决策的关键性数据。我们采用数据挖掘的广义观点:数据挖掘是从存放在数据库、数据仓库或其他信息库中的大量数据中挖掘有趣知识的过程。

数据挖掘与传统的数据分析(如查询、报表、联机应用分析)的本质区别是:数据挖掘是在没有明确假设的前提下去挖掘信息、发现知识。数据挖掘所得到的信息应具有先知、有效和实用三个特征。

数据挖掘的功能

数据挖掘的目标是从数据库中发现隐含的、有意义的知识,主要功能有5类:自动预测趋势和行为、关联分析、聚类、概念描述和偏差检测。

常用的数据挖掘技术

常用的数据挖掘技术包括关联分析、序列分析、分类分析、聚类分析、预测以及时间序列分析等。

数据挖掘的流程

数据挖掘的流程为确定挖掘对象、准备数据、建立模型、数据挖掘、结果分析和知识应用。

数据挖掘的应用

从目前情况来看,数据挖掘的热点包括空间数据库的挖掘、多媒体数据库的挖掘、时序数据和序列数据的挖掘、文本数据库的挖掘、Web挖掘。

数据挖掘的应用领域有生物医学和DNA的数据挖掘、金融业中的数据挖掘、零售业中的数据挖掘、电信业中的数据挖掘、视频和音频数据挖掘、科学和统计数据挖掘等。

商用数据挖掘的事例有Intelligent Miner、Enterprise Miner、MineSet、Clementine、DBMiner等。

常见的数据库管理系统

Oracle

Oracle是一种适用于大型、中型和微型计算机的关系数据库管理系统。Oracle的结构包括数据库的内部结构、外存储结构、内存储结构和进程结构。在Oracle中,数据库不仅指物理上的数据,还包括处理这些数据的程序,即DBMS本身。Oracle使用PL/SQL(Procedural Language/SQL)语言执行各种操作。Oracle除了以关系格式存储数据外,Oracle 8以上的版本还支持面向对象的结构(如抽象数据类型)。

Oracle产品主要包括数据库服务器、开发工具和连接产品三类。Oracle还提供了一系列的工具产品,如逻辑备份工具Export、Import等。

IBM DB2

DB2是IBM的一种分布式数据库解决方案。简单地说,DB2就是IBM开发的一种大型关系型数据库平台,它支持多用户或应用程序在同一条SQL语句中查询不同Database甚至不同DBMS中的数据。

DB2核心数据库的特色有支持面向对象的编程、支持多媒体应用程序、备份和恢复功能、支持存储过程和触发器、支持SQL查询、支持异构分布式数据库访问、支持数据复制。

DB2采用多进程多线索体系结构,可运行于多种操作系统之上。IBM还提供了Visualizer、Visualage、Visualgen等开发工具。

Sybase

Sybase是美国SYBASE公司在20世纪80年代中推出的客户机/服务器(Client/Server, CLS)结构的关系数据库系统,也是世界上第一个真正的基于客户机/服务器结构的RDBMS产品。

Sybase数据库主要由三部分组成:进行数据库管理和维护的联机的关系数据库管理系统Sybase SQLServer,支持数据库应用系统建立与开发的一组前端工具Sybase SQLToolset,可把异构环境下其他厂商的应用软件和任何类型的数据连接在一起的接口Sybase OpenClient/OpenServer。

Sybase提供了Sybase Adaptive Server Enterprise高性能企业智能型关系数据库管理系统、EA Server电子商务解决方案应用服务器、系统分析设计工具PowerDesigner和应用开发工具PowerBuilder。

Microsoft SQL Server

Microsoft SQL Server是一种典型的关系型数据库管理系统,可运行于多个操作系统上,它使用Transact-SQL语言完成数据操作。

SQL Server的基本服务器组件包括Open Data Services、MS SQL Server、SQL Server Agent和MSDTC(Microsoft Distributed Transaction Coordinator)。

SQL Server数据平台包括以下工具:关系型数据库、复制服务、通知服务、集成服务、分析服务、报表服务、管理工具和开发工具。

计算机网络基础知识

网络概述

计算机网络是指利用通信设备和线路将地理位置分散的、功能独立的计算机系统或由计算机控制的外部设备连接起来,在网络操作系统的控制下,按照约定的通信协议进行信息交换、实现资源共享的系统。计算机网络的组成元素有网络结点和通信链路。计算机网络的功能有数据通信、资源共享、负载均衡和高可靠性。

计算机网络按通信距离可分为广域网(WAN)、局域网(LAN)和城域网(MAN);按信息交换方式可分为电路交换网、分组交换网和综合交换网;按网络拓扑结构可分为星形网、树形网、环形网和总线网;按通信介质可分为双绞线网、同轴电缆网、光纤网和卫星网等;按传输带宽可分为基带网和宽带网;按使用范围可分为公用网和专用网;按速率可分为高速网、中速网和低速网;按通信传播方式可分为广播式和点到点式;按使用方式可分为校园网和企业网;按连接范围可分为内联网和外联网;按网络提供的服务可分为通信网和信息网。

开放系统互连参考模型

开放系统是指遵从国际标准的、能够通过互连而相互作用的系统。系统之间的相互作用只涉及系统的外部行为,而与系统内部的结构和功能无关。国际标准化组织(International Standard Organization, ISO)公布了开放系统互连参考模型(OSI/RM)。OSI/RM为开放系统互连提供了一种功能结构的框架。OSI/RM是一种分层的体系结构,参考模型共有7层,分层的基本想法是每一层都在它的下层提供的服务基础上提供更高级的增值服务,而最高层提供能运行分布式应用程序的服务。这样,分层的方法就把复杂的问题分解开了,并保持了层次之间的独立性。OSI/RM的网络体系结构如图2-14所示,由低层至高层分别为物理层(physical layer)、数据链路层(datalink layer)、网络层(network layer)、传输层(transport layer)、会话层(session layer)、表示层(presentation layer)和应用层(application layer)。

图2-14 OSI模型的网络体系结构找不到图片(Image not found)
OSI协议集

国际标准化组织除定义了开放系统互连(Open System Interconnection, OSI)参考模型之外,还开发了实现7个功能层次的各种协议和服务标准,这些协议和服务通称为“OSI协议”。和其他协议一样,OSI协议是实现某些功能的过程的描述和说明。每一个OSI协议都详细地规定了特定层次的功能特性。OSI协议集如表2-2所示。

表2-2 OSI协议集找不到图片(Image not found)

计算机网络

广域网、局域网和城域网

广域网又称远程网,它是指覆盖范围广,传输速率相对较低,以数据通信为主要目的的数据通信网。它的特点是:分布范围广,数据传输率低,数据传输可靠性随着传输介质的不同而不同、拓扑结构复杂。广域通信网有公共交换电话网和各种公用数据网(包括分组交换网、帧中继网、ATM网、移动通信网等)。目前用于广域传输的协议有PPP(点对点协议)、DDN、ISDN(综合业务数字网)、FR(帧中继)和ATM(异步传输模式)等。

局域网是指传输距离有限,传输速度较高,以共享网络资源为目的的网络系统,它的特点是:分布范围有限,有较高的通信带宽和数据传输率高,数据传输可靠误码率低,通常采用同轴电缆或双绞线作为传输介质,拓扑结构简单简洁,网络的控制一般为分布式,通常被单一组织所拥有和使用。局域网使用的拓扑结构有总线拓扑、环型拓扑、星形拓扑以及它们的混合型。

城域网是规模介于局域网和广域网之间的一种较大范围的高速网络,一般覆盖临近的多个单位和城市,从而为接入网络的企业、机关、公司及社会单位提供文字、声音和图像的集成服务。

网络拓扑结构是指网络中通信线路和节点的几何排序,用以表示整个网络的结构外貌,反映各节点之间的结构关系。它影响着整个网络的设计、功能、可靠性和通信费用等重要方面。常用的网络拓扑结构有总线型、星型、环型、树型和分布式结构等。

局域网和城域网的国际标准都是IEEE802标准。决定局域网的主要技术有用以传输数据的传输介质、用以连接各种设备的拓扑结构、用以共享资源的介质访问控制方法。这三种技术在很大程度上决定了传输数据的类型、网络的响应时间、吞吐率和利用率,以及网络应用等各种网络特性。其中最重要的是介质访问控制方法。在局域网和城域网中,所有的设备都共享传输介质,所以需要一种方法能有效地分配传输介质的使用权,这种功能就叫做介质访问控制协议。对总线型、星型和树型拓扑结构最适合的介质访问控制协议是CSMA/CD(Carrier Sense Multiple Access/Collision Detection)介质访问控制方法有集中式控制和分布式控制两种。

国际电子电气工程师协会IEEE制定的局域网的标准:IEEE 802.3(CSMA/CD,以太网)、IEEE 802.4(Token Bus,令牌总线)、IEEE 802.5(Token Ring,令牌环),由于它们已被市场广泛接受,所以IEEE 802系列标准已被ISO采纳为国际标准。随着网络技术的发展,又出现了IEEE 802.7(FDDI)、IEEE 802.3u(快速以太网)、IEEE 802.12(100VG-AnyLAN)、IEEE 802.3z(千兆以太网)等新一代网络标准。

无线局域网(Wireless Local Area Networks, WLAN)就是在不采用传统缆线的同时,提供以太网或者令牌网络的功能。与有线网络相比,无线局域网具有以下优点:安装便捷,使用灵活,经济节约,易于扩展。IEEE 802.11标准是由面向数据的计算机局域网发展而来,网络采用无连接的协议,目前市场上的大部分产品都是根据这个标准开发的。无线局域网可以在普通局域网基础上通过无线Hub、无线接入站(AP)、无线网桥、无线Modem及无线网卡等来实现,其中以无线网卡最为普遍,使用最多。无线局域网的关键技术,除了红外传输技术、扩频技术、窄带微波技术外还有一些其他技术,如调制技术、加解扰技术、无线分集接收技术、功率控制技术和节能技术。无线局域网在室外主要有以下几种结构:点对点型、点对多点型、多点对点型和混合型。基于无线局域网具有的诸多优点,它可广泛应用于下列领域:接入网络信息系统、难以布线的环境、频繁变化的环境、使用便携式计算机等可移动设备进行快速网络连接、用于远距离信息的传输、专门工程或高峰时间所需的暂时局域网、流动工作者可得到信息的区域、办公室和家庭办公室(Small office/Home office, SOHO)用户,以及需要方便快捷地安装小型网络的用户。

网络互联

网络互连目的是使一个网络的用户能访问其他网络的资源,使不同网络上用户能够互相通信和交换信息,实现更大范围的资源共享。在网络互连时,一般不能简单地直接相连而通过一个中间设备来实现。

网络互联设备的作用是连接不同的网络,网络互联设备可以根据它们工作的协议层进行分类:中继器(repeater)、网桥(bridge)、路由器(router)、网关(gateway)和交换机等。在实际的网络互联产品中可能是几种功能的组合,从而可以提供更复杂的互联网服务。局域网用网桥互连,广域网的互联设备是路由器。网络线路与用户节点连接时需要的是网络传输介质互连设备,如T型头、收发器、RJ-45、RS232接口、DB-15接口、VB35同步接口、网络接口单元和调制解调器等。物理层的互连设备有中继器和集线器(hub),数据链路层的互连设备有网桥、交换机,网络层互连设备是路由器,网关是应用层互连设备。

传输介质是信号传输的媒体,常用的介质分为有线介质和无线介质。有线介质有双绞线、同轴电缆和光纤等;无线介质有微波、红外线和激光等。在一个局域网中,其基本组成部件为服务器、客户机、网络设备、通信介质和网络软件等。

Internet及应用

Internet,又称因特网,是世界上规模最大、覆盖面最广且最具影响力的计算机互联网络,它将分布在世界各地的计算机利用开放系统互联协议连接在一起,用来进行数据传输、信息交换和资源共享。

用户接入因特网的方式有终端方式、SLIP/PPP方式、专线方式(DDN、FR、ISDN专线、网络电缆直连)、代理服务器方式等。

TCP/IP(Transmission Control Protocol/Internet Protocol)作为Internet的核心协议,已被广泛应用于局域网和广域网中,TCP/IP的主要特性为逻辑编址、路由选择、域名解析、错误检测和流量控制以及对应用程序的支持等。

TCP/IP是个协议族,它包含多种协议。ISO/OSI模型与TCP/IP模型的对比如表2-3所示。

表2-3 TCP/IP模型与OSI模型的对比找不到图片(Image not found)

从表上可知,TCP/IP分层模型由4个层次构成,即应用层、传输层、网际层和网络接口层。网际层定义的协议除了IP外,还有(Internet Control Message Protocol, ICMP)、(Address Resolution Protocol, ARP)和(Reverse Address Resolution Protocol, RARP)等几个重要协议。应用层的协议有(Network File Serve, NFS)、Telnet、(Simple Mail Transport Protocol, SMTP)、(Simple Network Management Protocol, SNMP)和(File Transfer Protocol, FTP)等。

Internet的地址主要有两种书写形式:域名格式和IP地址格式。域名和IP地址是一一对应的。现在的IP协议版本号为4,也称之为IPv4,新的IP协议为IPv6,IPv6将彻底解决IP地址缺乏问题。

WWW(World Wide Web),也称万维网或全球网,是指在因特网上以超文本为基础形成的信息网。它采用统一的资源定位器(Uniform Resource Locator, URL)和图文声并茂的用户界面,可以方便地浏览Internet上的信息和利用各种网络服务。互联网常用的服务包括:域名服务(Domain Name Server, DNS)、WWW服务、E-mail电子邮件服务、FTP文件传输服务、Telnet远程登录服务、Gopher等等。

网络管理与网络安全

网络管理

网络管理是对计算机网络的配置、运行状态和计费等进行的管理。它提供了监控、协调和测试各种网络资源以及网络运行状况的手段,还可提供安全字处理和计费等功能。在OSI网络管理标准中定义了网络管理的五大基本功能:配置管理、性能管理、故障管理、安全管理和计费管理。事实上,网络管理还应该包括其他一些功能,如网络规划、网络操作人员的管理等。

计算机网络安全

计算机网络安全是指计算机、网络系统的硬件、软件以及系统中的数据受到保护,不因偶然的或恶意的原因而遭到破坏、更改、泄露,确保系统能连续和可靠地运行,使网络服务不中断。网络安全从本质上讲就是网络上的信息安全。信息安全是在分布式计算环境中对信息的传输、存储、访问提供安全保护,以防止信息被窃取、篡改和非法操作。信息安全的基本要素是保密性、完整性、可用性、真实性和可控性。完整的信息安全保障体系应包括保护、检测、响应和恢复等4个方面。信息安全术语有密码学、鉴别、Kerberos鉴别、公钥基础设施、数字签名、访问控制。

网络威胁:是对网络安全缺陷的潜在利用,这些缺陷可能导致非授权访问、信息泄露、资源耗尽、资源被盗或者被破坏等。网络安全威胁的种类有窃听、假冒、重放、流量分析、数据完整性破坏、拒绝服务、资源的非授权使用、陷门和特洛伊木马、病毒、诽谤等。

网络安全漏洞:通常,入侵者首先寻找网络存在的安全弱点,然后从缺口处无声无息地进入网络。因而开发黑客反击武器的思想是找出现行网络中的安全弱点,演示、测试这些安全漏洞,然后指出应如何堵住安全漏洞。当前,信息系统的安全性非常脆弱,主要体现在操作系统、计算机网络和数据库管理系统都存在安全隐患,这些安全隐患表现在:物理安全性、软件安全漏洞、不兼容使用安全漏洞、选择合适的安全哲理。

网络攻击是指任何的非授权行为。攻击的范围从简单的使服务器无法提供正常的服务到完全破坏或控制服务器。在网络上成功实施的攻击级别依赖于用户采取的安全措施。网络攻击有被动攻击、主动攻击、物理临近攻击、内部人员攻击和分发攻击。

任何形式的互联网络服务都会导致安全方面的风险,问题是如何将风险降低到最低程序。目前的网络安全措施有数据加密、数字签名、身份认证、防火墙和入侵检测等。

VPN

所谓虚拟专用网(Virtual Private Network, VPN)是建立在公用网上的、由某一组织或某一群用户专用的通信网络,其虚拟性表现在任意一对VPN用户之间没有专用的物理连接,而是通过(Internet Services Provider, ISP)提供的公用网络来实现通信;其专用性表现在VPN之外的用户无法访问VPN内部的网络资源,VPN内部用户之间可以实现安全通信。这里讲的VPN是指在Internet上建立的、由用户(组织或个人)自行管理的VPN,而不涉及一般电信网中的VPN。

实现VPN的关键技术有隧道技术(Tunneling)、加解密技术(Encryption & Decryption)、密钥管理技术(Key Management)和身份认证技术(Authentication)。

VPN的解决方案有三种:内联网VPN(Intranet VPN)、外联网VPN(Extranet VPN)和远程接入VPN(Access VPN)。

网络工程

网络工程是根据用户单位的需求及具体情况,结合现时网络技术的发展水平及产品化程序,经过充分需求分析和市场调研,从而确定网络建设方案,依据方案有步骤、有计划实施的网络建设活动。网络工程建设是一项复杂的系统工程,一般可分为网络规划和网络设计阶段、工程组织和实施阶段以及系统运行维护阶段。

存储及负载均衡技术

RAID技术

RAID(Redundant Array of Inexpensive Disks,磁盘阵列)是一种由多块廉价磁盘构成的冗余阵列。使用磁盘阵列的目的是建立数据冗余、增强容错、提高容量、增进性能。

RAID技术主要包含RAID 0~RAID 7等规范,以及复合RAID模式RAID 0+1、5+1等。在RAID家族里,RAID 0和RAID 1在个人电脑上得到了广泛的应用。

硬件RAID的实现:一般使用SCSI或者IDE/ATA作为硬盘系统的接口。硬件RAID实现分为两种:一种是内置(或集成)RAID控制器,一种是外置RAID控制器。

软件RAID的实现:除了使用RAID卡或者主板所带的芯片实现磁盘阵列外,在一些操作系统中可以直接利用软件方式实现RAID功能,例如在Windows 2000/XP中就已经内置了RAID功能,Linux用Raidtools来实现RAID功能。

网络存储技术

网络存储采用面向网络的存储体系结构,使数据处理和数据存储分离,由专门的系统负责数据处理,存储设备或子系统负责数据的存储。网络存储结构通过网络连接服务器和存储资源,具有灵活的网络寻址能力和远距离数据传输能力,实现了在一个或多个位置简单而可靠的数据存储、恢复和不同主机不同存储设备之间的资源共享。

网络存储体系结构大致分为三种:直连式存储(Direct Attached Storage, DAS)、网络连接存储(Network Attached Storage, NAS)和存储区域存储(Storage Area Network, SAN)。

负载均衡技术

负载均衡(Load Balance)是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。

负载均衡是在现有的网络结构的基础上,通过扩展网络设备和服务器的带宽,来增加吞吐量,提升网络的数据处理能力,提高网络的灵活性、可靠性、可用性和可维护性,最终目的是加快服务器的响应速度,从而提高用户的体验度。

负载均衡从结构上分为本地负载均衡(Local Server Load Balance)和全局负载均衡(Global Server Load Balance)。

负载均衡的实现方法有两种:第一种方法是把大量的并发访问或数据流量分配到多个设备上分别处理,以减少用户等待响应的时间;第二种方法是将单个的重负载的运算分摊到多个设备上做并行处理,再将每个设备的运行结果汇总后返回给用户。

一个网络的负载均衡,一般情况下从传输链路聚合、采用更高层网络交换技术和设置服务器群集策略三个角度来实现。常用的负载均衡技术有操作系统自带的负载均衡服务、基于特定服务器软件的负载均衡、基于DNS的负载均衡、反向代理负载均衡、基于NAT的负载均衡技术、扩展的负载均衡技术以及硬件方式。

服务器集群技术

集群(Cluster)是一组相互独立的服务器在网络中表现为单一的系统,并以单一系统的模式加以管理。此单一系统为客户端提供高可靠性的服务,并大幅提高了服务器的安全性。

一个Cluster包含多台(至少二台)拥有共享数据存储空间的服务器,任何一台服务器在运行一个应用时,应用数据被存储在共享的数据空间内。每台服务器的操作系统和应用程序文件存储在各自的本地存储空间上。

大多数模式下,集群中所有的计算机拥有一个共同的名称,各节点服务器通过一内部局域网相互通讯,集群内任一系统上运行的服务都可被所有的网络客户所使用,当一台节点服务器发生故障时,这台服务器上所运行的应用程序将在另一节点服务器上被自动接管,客户也能很快地自动地连接到新的应用服务器上。

集群服务在部署关键业务、电子商务、商务流程中的作用将日益重要起来。

多媒体技术及其应用

多媒体技术基本概念

媒体

媒体是指承载信息的载体,又称媒介。媒体有两种含义:一是表示信息的载体,如文本、图形、图像、动画、音频和视频等;二是存储信息的实体,如纸张、磁盘、光盘和半导体存储器等。

媒体的种类,根据ITU-T(原CCITT)建议的定义,媒体有5种:感觉媒体、表示媒体、显示媒体、存储媒体和传输媒体。

感觉媒体(Perception Medium)是指人们接触信息的感觉形式,如视觉、听觉、触觉、嗅觉和味觉等。

表示媒体(Representation Medium)是指信息的表示形式,如文字、图形、图像、动画、音频和视频等。

显示媒体(Presentation Medium)是表现和获取信息的物理设备。如输入显示媒体键盘、鼠标器和麦克风等;输出显示媒体显示器、打印机和音箱等。

存储媒体(Storage Medium)是存储数据的物理设备,如磁盘、光盘和内存等。

传输媒体(Transmission Medium)是指传输数据的物理载体,如电缆、光缆和交换设备等。

多媒体

多媒体是数字、文字、声音、图形、图像和动画等各种媒体的有机组合,并与先进的计算机、通信和广播电视技术相结合,形成一个可组织、存储、操纵和控制多媒体信息的集成环境和交互系统。由此可见,“多媒体”这个术语既指信息表示媒体的多样化,又包括了传播、处理和使用多媒体的各种技术和方法。

多媒体技术

多媒体技术是指以数字化为基础,能够对多种媒体信息进行采集、编码、存储、传输、处理和表现,综合处理多种媒体信息并使之建立起有机的逻辑联系,集成为一个系统并能具有良好交互性的技术。多媒体媒体元素是指多媒体应用中可显示给用户的媒体形式。目前我们常见的媒体元素主要有文本、图形、图像、声音、动画和视频图像等。多媒体技术包括计算机技术、视听技术及通信技术。

多媒体技术的特征有多样性、集成性、交互性和实时性。

多媒体计算机

多媒体计算机(Multimedia Personal Computer, MPC)是指能够综合处理多种媒体信息的计算机。也即:

MPC=PC+CD-ROM+声卡+显示卡+多媒体操作系统

多媒体数据压缩编码技术

由国际标准化协会、国际电信协会和国际电联领导下,制定的三个有关视频图像压缩编码的国家标准:JPEG标准、H·261标准和MPEG标准。

多媒体数据压缩编码的国际标准
静态图像压缩编码的国际标准

JPEG(Joint Photographic Experts Group,联合图像专家小组标准)是一种对静态图像压缩的编码算法。“联合”的含义是:国际电报电话咨询委员会(Consultative Committee on International Telephone and Telegraph, CCITT)和国际标准化协会联合组成的图像专家小组。静态图像压缩标准有JPEG、JPEG2000。

运动图像压缩标准

MPEG(Moving Picture Experts Group,运动图像专家组)是专门制定多媒体领域内的国际标准的一个组织,该组织成立于1988年,由全世界大约300名多媒体技术专家组成。MPEG标准是面向运动图像压缩的一个系列标准。目前有MPEG-1、MPEG-2、MPEG-4、MPEG-7、MPEG-21、DVI。

MPEG的优势:首先,它是作为一个国际化的标准来研究制定的,所以,具有很好的兼容性。其次,MPEG能够比其他算法提供更好的压缩比,最高可达200∶1。更重要的是,MPEG在提供高压缩比的同时,对数据的损失很小。与同样是音频压缩标准的AC系列标准相比,MPEG标准系列由于不存在专利权的问题,它更适合于大力推广。随着MPEG新标准的不断推出,数据压缩和传输技术必将趋向更加规范化。

多媒体数据压缩方法的分类

目前常用的数据压缩编码方法可以分为两大类:一类是无损压缩编码法(Lossless Compression Coding),也称冗余压缩法或熵编码法;另一类是有损压缩编码法(Loss Compression Coding),也称为熵压缩法,如图2-15所示。

多媒体系统的组成

多媒体系统的层次结构与计算机系统的结构在原则上是相同的,由底层的硬件系统和其上的各层软件系统组成,只是考虑多媒体的特性各层次的内容有所不同。多媒体系统的层次结构如图2-16所示。

图2-15 常用压缩编码方法分类找不到图片(Image not found)
图2-16 多媒体系统的层次结构找不到图片(Image not found)
多媒体硬件

多媒体硬件系统由主机、多媒体外部设备接口卡和多媒体外部设备构成。

多媒体计算机的主机可以是大/中型计算机,也可以是工作站,用得最多的是微机。

多媒体外部设备接口卡根据获取、编辑音频、视频的需要插接在计算机上。常用的有声卡、视频压缩卡、VGA/TV转换卡、视频捕捉卡、视频播放卡和光盘接口卡等。

多媒体外部设备十分丰富,按功能分为视频/音频输入设备、视频/音频输出设备、人机交互设备、数据存储设备4类。视频/音频输入设备包括摄像机、录像机、影碟机、扫描仪、话筒、录音机、激光唱盘和MIDI合成器等;视频/音频输出设备包括显示器、电视机、投影电视、扬声器和立体声耳机等;人机交互设备包括键盘、鼠标、触摸屏和光笔等;数据存储设备包括CD-ROM、磁盘、打印机和可擦写光盘等。

多媒体软件

多媒体软件系统按功能可分为系统软件和应用软件。

系统软件是多媒体系统的核心,它不仅具有综合使用各种媒体、灵活调度多媒体数据进行媒体的传输和处理的能力,而且要控制各种媒体硬件设备协调地工作。多媒体系统软件主要包括多媒体操作系统、媒体素材制作软件及多媒体函数库、多媒体创作工具与开发环境、多媒体外部设备驱动软件和驱动器接口程序等,如下。

● 多媒体素材制作工具软件。

● 文字特效制作软件:MSWord(艺术字)、UleadCOOL3D。

● 音频处理软件:Syntrillium Cooledit、TwelveTone Cakewalk。

● 图形与图像处理软件:CorelDRAW、Adobe Photoshop、Ulead PhotoImpact。

● 动画制作软件:Macromedia FlashMX、Discreet 3dsmax、Alias/Wavefront Maya。

● 视频编辑软件:AdobePremiere、UleadMediaStudio。

● 多媒体著作工具软件:Microsoft PowerPoint、Microsoft FrontPage、Macromedia Authorware、Macromedia Director。

● 多媒体编程语言:VB、VC++、Delphi。

应用软件是在多媒体创作平台上设计开发的面向应用领域的软件系统,通常由应用领域的专家和多媒体开发人员共同协作、配合完成的多媒体应用系统和多媒体产品。例如,教育软件、电子图书等。

多媒体技术的研究内容

数据压缩

在多媒体系统中,由于涉及的各种媒体信息主要是非常规数据类型,如图形、图像、视频和音频等,这些数据所需要的存储空间是十分巨大和惊人的。为了使多媒体技术达到实用水平,除了采用新技术手段增加存储空间和通信带宽外,对数据进行有效压缩将是多媒体发展中必须要解决的最关键的技术之一。

数据的组织与管理

数据量大,种类繁多,关系复杂是多媒体数据的基本特征。面向对象数据库(Object Oriented Data Base, OODB)和多媒体数据库结合超媒体(hypermedia)技术的应用,为多媒体信息的建模、组织和管理提供了有效的方法。

多媒体信息的展现与交互

在多媒体环境下,各种媒体并存,视觉、听觉、触觉、味觉和嗅觉媒体信息的综合与合成,各种媒体的时空安排和效应,相互之间的同步和合成效果,相互作用的解释和描述等都是多媒体领域需要研究和解决的问题。

多媒体通信与分布处理

多媒体通信对多媒体产业的发展、普及和应用有着举足轻重的作用,构成了整个产业发展的关键和瓶颈。还需要优化现有的电话网、广播电视网和计算机网络,以使其传输性能能较好地满足多媒体数据数字化通信的需求。

多媒体的分布处理是一个十分重要的研究课题。因为要想广泛地实现信息共享,计算机网及其在网络上的分布式与协作操作就不可避免。多媒体空间的合理分布和有效的协作操作将缩小个体与群体、局部与全球的工作差距。超越时空限制,充分利用信息,协同合作,相互交流,节约时间和经费等是多媒体信息分布的基本目标。

虚拟现实技术

所谓虚拟现实,就是采用计算机技术生成一个逼真的视觉、听觉、触觉及味觉等感官世界,用户可以直接用人的技能和智慧对这个生成的虚拟实体进行考察和操纵。这个概念包含三层含义:首先,虚拟现实是用计算机生成的一个逼真的实体,“逼真”就是要达到三维视觉、听觉和触觉等效果;其次,用户可以通过人的感官与这个环境进行交互;最后,虚拟现实往往要借助一些三维传感技术为用户提供一个逼真的操作环境。

虚拟现实是一种多技术多学科相互渗透和集成的技术,研究难度非常大。但由于它是多媒体应用的高级境界,且应用前景远大,而且某些方面的应用甚至远远地超过了这种技术本身的研究价值。

智能多媒体技术

将具有推理功能的知识库与多媒体数据库结合起来,形成智能多媒体数据库。智能多媒体数据库另一个重要研究课题是多媒体数据库基于内容检索技术,它需要把人工智能领域中的高维空间的搜索技术、视音频信息的特征抽取和识别技术、视音频信息的语义抽取问题以及知识工程中的学习、挖掘及推理等问题应用到基于内容的检索技术中。

把多媒体信息实时处理和压缩编码算法集成到CPU芯片中

计算机产业的发展趋势应该是把多媒体和通讯的功能集成到CPU芯片中,过去计算机结构设计较多地考虑计算功能,主要用于数学运算及数值处理,随着多媒体技术和网络通讯技术的发展,需要计算机具有综合处理声、文、图信息及通讯的功能。其一,是以多媒体和通讯功能为主,融合CPU芯片原有的计算功能,它的设计目标是用在多媒体专用设备、家电及宽带通讯设备,可以取代这些设备中的CPU及大量Asic和其他芯片。其二,是以通用CPU计算功能为主,融合多媒体和通讯功能,它们的设计目标是与现有的计算机系列兼容,同时具有多媒体和通讯功能,主要用在多媒体计算机中。

多媒体技术的应用领域

多媒体技术为计算机的应用开拓了更广阔的领域,不仅涉及到计算机的各个应用领域,也涉及到通信、传播、出版、商业广告及购物、文化娱乐、工程设计等各种领域或行业。多媒体在各行各业领域中的应用又推动了多媒体技术与产品的发展,开创了多媒体技术发展的新时代。各种计算机应用软件都竞相加入多媒体元素,多媒体节目也渗入到各行各业中,并进入到人们的家庭生活和娱乐中。

办公自动化

多媒体技术的出现为办公室增加了控制信息的能力和充分表达思想的机会,许多应用程序都是为提高办公人员的工作效率而设计的,从而产生了许多新型的办公自动化系统。由于采用了先进的数字影像和多媒体计算机技术,把文件扫描仪、图文传真机、文件资料微缩系统和通信网络等现代化办公设备综合管理起来,构成了全新的办公自动化系统。

电子出版物

电子出版物是指以数字代码方式将图、文、声、像等信息存储在磁、光、电介质上,通过计算机或类似设备阅读使用,并可复制发行的大众传播媒体。电子出版物的内容可分为电子图书、手册、文档、报刊杂志、教育培训、娱乐游戏、宣传广告、信息咨询和简报等,许多作品是多种类型的组合。多媒体电子出版物是计算机多媒体技术与文化、文艺、教育等多种学科相结合的产物。

多媒体通信

随着网络的发展,电子邮件已被普遍采用。而包括声、文、图在内的多媒体邮件更受到用户的普遍欢迎,在此基础上发展起来的可视电话、视频会议系统、数字家电(电话、电视、传真、音响)和远程医疗系统为人类提供了全新的服务方式。

多媒体通信有着极其广泛的内容,信息点播(Information Demand)和计算机协同工作(Computer Supported Cooperative Work, CSCW)系统对人类生活、学习和工作产生了深刻的影响。

教育与培训

以多媒体计算机为核心的现代教育技术使教学手段和方法丰富多彩,使计算机教学如虎添翼。多媒体教学不仅使学生获得生动的学习环境,而且使教师拥有高水平、高质量的教学环境。

正是因为多媒体教育对于促进教学思想、教学内容和教学手段的改革,实现多元化、主体化和社会化,全面提高教学质量有着重大的意义,网络课程、虚拟课堂、虚拟实验室、数字图书馆、多媒体技能培训系统等多媒体教育产品已广泛用于初、中级基础教育,高等教育及职业培训等方面。

商业与咨询

各类商家将各种服务指南存放于多媒体系统中向公众展示、推介和咨询的有多媒体商业简报、产品演示、查询服务等。

军事与娱乐

将多媒体技术应用于军事和娱乐的有军事遥感、核武器模拟、战场模拟、CD、MIDI、VCD、DVD、游戏等。

不难看出,多媒体技术在人类工作、学习、信息服务、娱乐、家庭生活及艺术创作等各个领域都表现出非凡的能力,并在不断开拓新的应用领域。

系统性能

系统性能是一个系统提供给用户的众多性能指标的集合。它既包括硬件性能,也包括软件性能;既包括部件性能指标,也包括综合性能指标。系统性能包含性能指标、性能计算、性能设计和性能评估4个方面的内容。

性能指标

性能指标,是软、硬件的性能指标的集成。在硬件中,包括计算机、各种通信交换设备、各类网络设备等;在软件中,包括操作系统、协议以及应用程序等。

计算机

对计算机评价的主要性能指标有时钟频率(主频)、运算速度、运算精度、内存的存储容量、存储器的存取周期、数据处理速率(Processing Data Rate, PDR);吞吐率、各种响应时间间、各种利用率、RASIS特性,即可靠性(Reliability)、可用性(Availability)、可维护性(Sericeability)、完整性和安全性(Integraity and Security);平均故障响应时间、兼容性、可扩充性、性能价格比。

路由器

对路由器评价的主要性能指标有设备吞吐量、端口吞吐量、全双工线速转发能力、背靠背帧数、路由表能力、背板能力、丢包率、时延、时延抖动、VPN支持能力、内部时钟精度、队列管理机制、端口硬件队列数、分类业务带宽保证、RSVP、IP Diff Serv、CAR支持、冗余、热插拔组件、路由器冗余协议、网管、基于Web的管理、网管类型、带外网管支持、网管粒度、计费能力/协议、分组语音支持方式、协议支持、语音压缩能力、端口密度、信令支持。

交换机

对交换机评价所依据的性能有交换机类型、配置、支持的网络类型、最大ATM端口数、最大SONET端口数、最大FDDI端口数、背板吞吐量、缓冲区大小、最大MAC地址表大小、最大电源数、支持协议和标准、路由信息协议(RIP)、RIP2、开放式最短路径优先第2版、边界网关协议(BGP)、无类别域间路由(CIDR)、互联网成组管理协议(IGMP)、距离矢量多播路由协议(DVMRP)、开放式最短路径优先多播路由协议(MOSPF)、协议无关的多播协议(PIM)、资源预留协议(RSVP)、802.1p优先级标记,多队列、路由、支持第3层交换、支持多层(4到7层交换、支持多协议路由、支持路由缓存、可支持最大路由表数、VLAN、最大VLAN数量、网管、支持网管类型、支持端口镜像、QoS、支持基于策略的第2层交换、每端口最大优先级队列数、支持基于策略的第3层交换、支持基于策略的应用级QoS、支持最小/最大带宽分配、冗余、热交换组件(管理卡,交换结构,接口模块,电源,冷却系统、支持端口链路聚集协议、负载均衡。

网络

评价网络的性能指标有设备级性能指标、网络级性能指标、应用级性能指标、用户级性能指标、吞吐量。

操作系统

评价操作系统的性能指标有系统的可靠性、系统的吞吐率(量)、系统响应时间、系统资源利用率、可移植性。

数据库管理系统

衡量数据库管理系统的主要性能指标包括数据库本身和管理系统两部分,有数据库的大小、数据库中表的数量、单个表的大小、表中允许的记录(行)数量、单个记录(行)的大小、表上所允许的索引数量、数据库所允许的索引数量、最大并发事务处理能力、负载均衡能力、最大连接数等等。

Web服务器

评价Web服务器的主要性能指标有最大并发连接数、响应延迟、吞吐量。

性能计算

性能指标计算的主要方法有定义法、公式法、程序检测法和仪器检测法。

常用的性能指标的计算过程(Millions of Instructions Per Second, MIPS)的计算方法、峰值计算、等效指令速度(吉普森(Gibson)法)。

在实际应用中,往往是对这些常用性能指标的复合计算,然后通过算法加权处理得到最终结果。

性能设计

性能调整

当系统性能降到最基本的水平时,性能调整由查找和消除瓶颈组成。对于数据库系统,性能调整主要包括CPU/内存使用状况、优化数据库设计、优化数据库管理以及进程/线程状态、硬盘剩余空间、日志文件大小等;对于应用系统,性能调整主要包括应用系统的可用性、响应时间、并发用户数以及特定应用的系统资源占用等。

在开始性能调整之前,必须做的准备工作有识别约束、指定负载、设置性能目标。在建立了性能调整的边界和期望值后,就可以开始调整了,这是一系列重复的受控的性能试验,循环的调整过程为收集、分析、配置和测试。

阿姆达尔解决方案

阿姆达尔(Amdahl)定律主要用于系统性能改进的计算中。阿姆达尔定律是指计算机系统中对某一部件采用某种更快的执行方式所获得的系统性能改变程度,取决于这种方式被使用的频率,或所占总执行时间的比例。

阿姆达尔定律定义了采用特定部件所取得的加速比。假定我们使用某种增强部件,计算机的性能就会得到提高,那么加速比就是下式所定义的比率:

图片详情找不到图片(Image not found)

加速比反映了使用增强部件后完成一个任务比不使用增强部件完成同一任务加快了多少。加速比主要取决于两个因素:

(1)在原有的计算机上,能被改进并增强的部分在总执行时间中所占的比例。这个值称为增强比例,它永远小于等于1。

(2)通过增强的执行方式所取得的改进,即如果整个程序使用了增强的执行方式,那么这个任务的执行速度会有多少提高,这个值是在原来条件下程序的执行时间与使用增强功能后程序的执行时间之比。

原来的机器使用了增强功能后,执行时间等于未改进部分的执行时间加上改进部分的执行时间。

图片详情找不到图片(Image not found)

总的加速比等于两种执行时间的比:

图片详情找不到图片(Image not found)

性能评估

性能评估是为了一个目的,按照一定的步骤,选用一定的度量项目,通过建模和实验,对一个系统的性能进行各项检测,对测试结果作出解释,并形成一份文档的技术。性能评估的一个目的是为性能的优化提供参考。

基准测试程序

大多数情况下,为测试新系统的性能,用户必须依靠评价程序来评价机器的性能。下面列出了4种评价程序, $\color{red}{\text{它们评测的准确程度依次递减}}$ : $\color{green}{\text{真实的程序}}$ 、 $\color{green}{\text{核心程序}}$ 、 $\color{green}{\text{小型基准程序}}$ 、 $\color{green}{\text{合成基准程序}}$ 。(合成基准程序)

把应用程序中用得最多、最频繁的那部分核心程序作为评价计算机性能的标准程序,称为基准测试程序(benchmark)。基准测试程序有整数测试程序Dhrystone、浮点测试程序Lnpack、Whetstone基准测试程序、SPEC基准测试程序和TPC基准程序。

Web服务器的性能评估··

在Web服务器的测试中,反映其性能的指标主要有:最大并发连接数、响应延迟和吞吐量等。

常见的Web服务器性能评测方法有基准性能测试、压力测试和可靠性测试。

系统监视

进行系统监视通常有三种方式:一是通过系统本身提供的命令,如UNIX/Linux中的W、ps、last,Windows中的netstat等;二是通过系统记录文件查阅系统在特定时间内的运行状态;三是集成命令、文件记录和可视化技术,如Windows的Perfmon应用程序。

网课

Flynn分类法

Flynn分类法找不到图片(Image not found)

CISC 与RISC

图片详情找不到图片(Image not found)

计算机层次化存储结构

图片详情找不到图片(Image not found)

最快的是寄存器

局部性原理

性价比方案

cache->按内容存储(相联存储)

cache

图片详情找不到图片(Image not found)

时间局部性和空间局部性

图片详情找不到图片(Image not found)

随机存储器和只读存储器

分类
图片详情找不到图片(Image not found)
编址

行数*列数

先加1再运算

注意借位的时候是借16

图片详情找不到图片(Image not found)

答案:112k,4

磁盘工作原理

磁盘结构与参数

寻道时间+等待时间

图片详情找不到图片(Image not found)
例题
图片详情找不到图片(Image not found)
336,66找不到图片(Image not found)

计算机性能指标和阿姆达尔解决方案

性能指标
图片详情找不到图片(Image not found)
阿姆达尔解决方案

带公式,类似于2,8定律

不优化/优化

图片详情找不到图片(Image not found)
例题:不需要记公式的方法
图片详情找不到图片(Image not found)

计算机性能评价方法

  • 时钟频率法
  • 指令执行速度法
  • 等效指令速度法(吉普森混合法)
  • 数据处理速率法(PDR):存储
  • 综合理论性能法(CTP):cpu+存储
  • 基准程序法:cpu+存储+IO
    • Dhrystone基准程序
    • Linpack基准程序
    • Whetstone基准程序
    • SPEC基准程序
    • TPC基准程序
图片详情找不到图片(Image not found)

计算机性能监测方法

  • 软件监控:使用软件对系统性能数据进行采集分析,此方法会消耗较多的系统资源。
  • 硬件监控:使用专用硬件设备对系统性能数据进行采集分析,适用于高负载的计算机系统。

进程状态转换图

运行态:所有的资源都得到满足
就绪态:只缺cpu
等待态:除了cpu还缺别的

图片详情找不到图片(Image not found)

5态:出现人为挂起

前驱图

完成的一系列活动的约束关系

图片详情找不到图片(Image not found)

进程的同步与互斥

同步与异步

  • 同步有速度匹配要求

互斥与共享

图片详情找不到图片(Image not found)
例子

停下脚步,等消费者消费了才能放进去市场

图片详情找不到图片(Image not found)

PV操作

临界区是代码段

图片详情找不到图片(Image not found)

信号量和锁的区别
信号量与锁的区别

信号量可以用来解决同步互斥问题,锁只能解决共享资源的互斥问题

PV操作练习题1

只要是同步问题,信号量释放和获取的顺序是相反的,解决互斥问题,信号量释放和获取的顺序是一致的

图片详情找不到图片(Image not found)

PV操作与前趋图

图片详情找不到图片(Image not found)

箭头是信号量,箭头开始是p操作,箭头结束时v操作

图片详情找不到图片(Image not found)
PV操作练习题2

非抢占被唤醒不立即执行

图片详情找不到图片(Image not found)

死锁问题

不死锁:所有分配需要数-1个

图片详情找不到图片(Image not found)

银行家算法

死锁产生的原因找不到图片(Image not found)
图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)

页式存储、阶段存储、段页式存储

程序超过内存的大小,需要时调入

页式存储
图片详情找不到图片(Image not found)

页式存储

  • 页表中的地址转换增加了系统开销
  • 抖动现象

调入的时候是以页为单位的,所以页内地址时绝对的

例题

物理块号有的时候又叫做页帧号

刚访问过的不能调出

图片详情找不到图片(Image not found)
段式存储

按逻辑结构来划分可长可短

需要存三个,段号,段长,基地址

便于存储

图片详情找不到图片(Image not found)
段页式存储
图片详情找不到图片(Image not found)
块表
图片详情找不到图片(Image not found)

页面淘汰算法

最优是理论上的

抖动:加资源效率变低了

图片详情找不到图片(Image not found)
FIFO
图片详情找不到图片(Image not found)
例题

FIFO从左往右扫描(前往后)

LRU从右往左扫描(后往前)

图片详情找不到图片(Image not found)
例题

访问页表也算一次访问内,找到一个字的内容需要2次访问内存;一个地址只有8位数据,所以16/2每一个数据需要两次(包括指令)访问。

默认指令会产生1次缺页中断,数据会产生两次缺页中断(缺页中段是对cache来说的,没有cache每次取址都要一次中断)

图片详情找不到图片(Image not found)

索引文件结构

13个索引节点

0-9,10个地址是直接索引

10,是一级间接索引

11,二级间接索引

12,三级间接索引

图片详情找不到图片(Image not found)
例题

物理编号见图

第几级间接索引可以看引出几个盘块

图片详情找不到图片(Image not found)

树形目录结构

图片详情找不到图片(Image not found)

位示图

图片详情找不到图片(Image not found)
例题

第几个字是从1开始算

第几位置是从0开始算

图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)

数据传输控制方式

图片详情找不到图片(Image not found)

微内核操作系统

越小越安全

出问题只需要重启别的服务(文件系统)

图片详情找不到图片(Image not found)

数据库三级模式两级映射

课本描述

层次架构设计

图片详情找不到图片(Image not found)

内模式:数据怎么优化存储

概念模式:一张张表

视图:inner_join?

参考文献

Q:实际的存在到底是怎么样的?

数据库设计过程说明

图片详情找不到图片(Image not found)

ER模型

图片详情找不到图片(Image not found)
集成找不到图片(Image not found)
一对一转成两个关系模式

一个关系模式可以理解为数据库中的一张表

图片详情找不到图片(Image not found)
一对多转成两个关系模式

联系放在多的表中

图片详情找不到图片(Image not found)
多对多转成两个关系模式

联系单独作为一张表

图片详情找不到图片(Image not found)
例题
图片详情找不到图片(Image not found)

关系代数

  • 已知关系代数表达式的考题:(求关系代数表达式的结果)
  • 网课说的考题:已知业务场景,求关系代数表达式;已知关系代数,找一个与之等价的关系代数表达式

关系可以理解为数据库中的表

  • 并( $\cup$ ):将两个集合合并到一起,并且相同的记录只显示一次
  • 交( $\cap$ ):找出两个集合中相同的记录
  • 差( $-$ ):“我有你没有”就是差
图片详情找不到图片(Image not found)
  • 笛卡尔积( $\times$ )
  • 投影(符号:$\Pi or \pi$,可以理解为SELECT操作),投影是选列的操作
  • 选择(符号:$\sigma$,相当于条件操作WHERE),选择操作选择的是行
图片详情找不到图片(Image not found)
  • 联接(符号:$\Join$,多张表连接操作,一般连接$\sigma{<}(R\Join S)$),等值连接($\sigma{=}(R\Join S)$),
  • 连接操作和笛卡尔积的区别:都有的列只保留一个
  • 自然连接:相同的列做等值连接

不写条件,相同的列名做链接

图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)

规范化理论_函数依赖

图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)

规范化理论的价值和用途

非规范化的关系模式,可能存在的问题包括:数据冗余、更新异常、插入异常、删除异常

图片详情找不到图片(Image not found)

规范化理论_求候选关键字

候选键没有冗余的属性,超键有冗余的属性,都可以唯一表示元组

图片详情找不到图片(Image not found)
求候选键
图片详情找不到图片(Image not found)

abcd的组合键

图片详情找不到图片(Image not found)

规范化理论_范式

图片详情找不到图片(Image not found)
第一范式
图片详情找不到图片(Image not found)
第二范式
  • SNO: $\color{green}{\text{学号}}$
  • CNO: $\color{green}{\text{课程号}}$
  • GRADE: $\color{green}{\text{成绩}}$ (一个学生可能选多门课, $\color{green}{\text{学号}}$ + $\color{green}{\text{课程号}}$ ,才能确定 $\color{green}{\text{成绩}}$ )
  • CREDIT: $\color{green}{\text{学分}}$ ( $\color{green}{\text{课程号}}$ ,可以确定 $\color{green}{\text{学分}}$ )

课程号和学分之间存在部分函数依赖,两个主键(学号,课程号),而学分只需要其中一个主键(课程号)就能确定

学分和课程号单独成为一张表

图片详情找不到图片(Image not found)
第三范式
图片详情找不到图片(Image not found)
BC范式
图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)

规范化理论_范式练习题

找到正确的答案即可,不要纠结太多

图片详情找不到图片(Image not found)

规范化理论模式分解

图片详情找不到图片(Image not found)
  • 保持函数依赖分解
图片详情找不到图片(Image not found)
  • 无损分解

法1:对表进行关联操作

图片详情找不到图片(Image not found)

法2:表格法

图片详情找不到图片(Image not found)

法3:公式法,适用于一分二

图片详情找不到图片(Image not found)

数据库并发控制

事务存在的必要性:银行转账

原子性:事务中的操作,不能分开来做

一致性:能量守恒,如银行转账,一个地方少了,另外一个地方要加回来

隔离性:事务之间互不影响

持续性:事务执行之后的影响是持续

图片详情找不到图片(Image not found)
并发控制中存在的问题
图片详情找不到图片(Image not found)
封锁协议和死锁
图片详情找不到图片(Image not found)

S锁是读锁,X锁是写锁

加了读锁,还可以加读锁,但是不能加写锁

写锁之上不能加任何锁

参考视频

数据库的完整约束

图片详情找不到图片(Image not found)

实体约束:主键不能为空
参照约束:必须是某个表中的属性的值
自定义完整约束:某个范围内

触发器:写脚本来约束

数据库安全

图片详情找不到图片(Image not found)

数据库备份与恢复

冷热

冷备份:停服的时候备份

热备份:运行的时候备份

图片详情找不到图片(Image not found)
备份数据的内容大小
图片详情找不到图片(Image not found)

增量备份,恢复的时候麻烦,

故障与恢复
图片详情找不到图片(Image not found)

分布式数据库

图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)

数据库优化

图片详情找不到图片(Image not found)

先筛选再连接比较比较好

数据仓库与数据挖掘

图片详情找不到图片(Image not found)
数据挖掘方法
图片详情找不到图片(Image not found)

联邦数据库

图片详情找不到图片(Image not found)

NoSQL

图片详情找不到图片(Image not found)

向上扩展:升级机器
向外扩展:集群

图片详情找不到图片(Image not found)

反规范化技术

提高查询速度

图片详情找不到图片(Image not found)

大数据

图片详情找不到图片(Image not found)

云技术+虚拟化

图片详情找不到图片(Image not found)

七层模型

图片详情找不到图片(Image not found)

集线器:多端口中继器

交换机:多端口网桥(连接两个同类型网络的设备)

局域网
B找不到图片(Image not found)

跨过网络层就不是同一个网络

网络技术标准与协议

图片详情找不到图片(Image not found)

ARP:地址解析协议,ip->mac

TCP
图片详情找不到图片(Image not found)

三次握手,重发

DHCP
图片详情找不到图片(Image not found)

C/S模型,租约模式,

169.254.X.X 和0.0.0.0出现故障

DNS
图片详情找不到图片(Image not found)

迭代查询:提供线索

递归查询:会直接返回结果

不现实的设计找不到图片(Image not found)
例题
图片详情找不到图片(Image not found)

网络规划与设计

图片详情找不到图片(Image not found)

先进性:考虑成本和稳定性,不一定最好的

逻辑设计
图片详情找不到图片(Image not found)
物理网络设计
图片详情找不到图片(Image not found)
分层设计
图片详情找不到图片(Image not found)
+ 核心层 + 汇聚层 + 接入层 交换机的核心层 #### 无线网
图片详情找不到图片(Image not found)

zigbee

网络接入技术

图片详情找不到图片(Image not found)

非对称:上下行不对称

3G WCDMA

网络存储

图片详情找不到图片(Image not found)

NAS:即插即用

SAN:业务网络和数据网络分开,缺点只有成本高

IPSAN:比SAN便宜

Raid

图片详情找不到图片(Image not found)
RAID 0,RAID 1找不到图片(Image not found)
raid5找不到图片(Image not found)

RAID 3, 校验盘容易坏

  • raid01,磁盘利用率依旧只有50%,先做镜像再做条块化,或者先做条块化在做镜像
  • raid3:有一个校验盘,(校验盘的数据容易坏)
  • raid5:校验信息不是固定的存储,优点

IPv6

图片详情找不到图片(Image not found)

物理网

图片详情找不到图片(Image not found)

感知层,网络层,应用层

RDID:ETC,房卡

RFID
图片详情找不到图片(Image not found)
二维码
图片详情找不到图片(Image not found)
传感网
图片详情找不到图片(Image not found)
M2M
图片详情找不到图片(Image not found)

云计算

图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)

网络与最大流量

图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)

线性规划

图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)
例题
图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)

运筹方法决策

图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)
乐观主义准则
图片详情找不到图片(Image not found)

整个表中取最大值

悲观主义准则
图片详情找不到图片(Image not found)
后悔值准则
图片详情找不到图片(Image not found)

运城方法_决策时决策与期望货币价值

决策树
图片详情找不到图片(Image not found)
决策表
图片详情找不到图片(Image not found)

状态转移矩阵

图片详情找不到图片(Image not found)
图片详情找不到图片(Image not found)

数学建模

  • 模型准备
  • 模型假设
  • 模型建立
  • 模型求解
  • 模型分析
  • 模型检验
  • 模型应用