目录
数据通信是计算机和通信相结合而产生的一种新的通信方式,它是各类计算机通信网赖以建立的基础。数据通信的发展已经有30年的历史,在人类进入信息社会的过程中,数据通信正起着越来越重要的作用。
数据通信具有许多不同于传统的电报、电话的特点,由于它主要是“人-机”通信或“机-机”通信,因而产生了一系列的要求。如:很多通信过程都需要能自动实现,在传输中发生差错时能自动地进行校正。同时由于信息处理内容与处理方式的不同,对通信的要求会有很大的差别。终端类型、传输代码、相应时间、传输速率、传输方式、系统结构、差错率等,需要考虑的因素比较复杂。
早期计算机网络都是一些面向终端的网络,以一台或几台主机为中心,通过通信线路与多个远程终端相联,构成一个集中式网络。如图1-1所示,一台主机通过通信线路连接了许多用户终端,各个用户终端可以共享主机的资源,包括它的数据处理能力、存储能力和信息资源。该主机也可以具有交换功能,实现各个用户之间的互相通信。在这种结构中,每个终端用户都在通信线路的终点,每条通信线路为它所连接的终端用户所专用。当然,图中的终端用户也可以是另一台计算机。
图1-1 集中式网络
60年代末,以美国国防部高级规划研究局计算机网(ARPA)的诞生为起点,出现了计算机与计算机之间的通信和资源共享,开辟了计算机技术发展的一个新领域-网络化与分布处理技术。如图1-2所示:主机和终端都和具有交换功能的通信网络连接,从网络的观点它们具有相同的地位,各个终端通过交换网络共享主机的资源,主机和终端也共享交换网络的资源。交换网由交换机和把它们连接成网络的通信线路组成,各个终端用户可以通过交换网互相通信,也可以通过主机互相通信。
图1-2 交换式网络
由于数据通信用户的许多不同的特点和要求,这就要求发展几种不同于电话交换的交换技术,现有的主要有以下三种:
数据通信的电路交换是根据电话交换原理发展起来的一种交换发式,其过程类似于打电话,当用户要求发送数据时,交换网就在主叫用户终端和被叫用户终端之间接通一条物理的数据传输通路。
电路交换的主要优点是:
(1)信息的传输时延小,对一次连接来说,传输时延固定不变。
(2)信息以信号形式在数据通路中“透明”传输,交换机对用户的数据信息不存储、分析和处理,交换机在处理方面的开销比较小。对用户的数据信息也不需要附加许多的用于控制的信息,信息传输的效率比较高。
(3)信息的编码方法和信息格式不受限制。
电路交换的主要缺点是:
(1)电路的接续时间较长,在数据传输开始之前,呼叫信号必须经过若干交换机,得到各交换机的认可,并传到最终被呼叫方,这个过程常常需要10秒甚至更长时间,短报文通信效率低。
(2)电路资源被通信双方独占,电路利用率低
(3)通信双方在信息传输速率、编码格式、同步方式、通信规程等方面要完全兼容,这就限制了各种不同速率、不同代码格式、不同通信规程的用户终端之间的互通。
(4)有呼损。即可能由于用户终端设备忙或交换网负载过重而叫不通。
电路交换适合于传输信息量较大,通信对象比较固定的用户。
世界各国对电路交换方式有过一段热潮时期,并且投资建设了电路交换数据通信网,但是,由于它在实现各种不同类型和特性的数据终端设备(包括计算机)之间的互通方面灵活性很差,它的发展不如分组交换方式,但是到目前为止电路交换原理在电话通信中一直占着统治地位,步进制、纵横制、程序控制的各代电话交换机都是基于电路交换原理。
DDN(数字数据网)提供了一种以专线方式入网的高速通信方式。用户终端通过DTU(数据终端单元)以专线方式接入DDN网,网内的DDN交换机之间以光纤联系,大大提高了信息传输的速度,如图1-3。
图1-3 DDN网
为了克服电路交换的缺点,人们提出了报文交换的思想,它的基本原理是“存储-转发”,即如果用户A要向用户B发送信息,A用户不需要先叫通和B用户之间的电路,而只需与交换机接通,由交换机暂时把A用户要发送的报文接收和存储起来,交换机根据报文提供的B用户的地址在交换网络中确定路由,并将报文送到输出线的队列上排队,等到该输出线空闲时立即将该报文送到下一个交换机,最后送到终点用户B。
报文交换的特征是:
(1)报文以存储转发方式通过交换机,输入输出线路的效率、代码格式等可以不同,很容易实现在不同类型终端之间的互相通信。
(2)在报文交换(从A用户到B用户)的过程中没有接续过程。来自不同用户的报文可以在一条线路上以报文为单位进行多路复用,线路可以以它的最高传输能力工作,大大提高了线路利用率。
(3)用户不需要叫通对方就可以发送报文,无呼损,并可以节省通信终端操作人员的时间。如果需要,同一报文可以由交换机转发到许多不同的收信地点。
报文交换的主要缺点是:
(1)信息通过交换机时产生的时延大,而且时延的变化也大,不利于实时通信。
(2)交换机要有能力存储用户发送的报文,其中有的报文可能很长,要求交换机有高速处理能力和大的存储容量。一般要配备磁盘和磁带存储器,交换机的设备比较庞大,费用较高。
(3)报文交换不适用于立即对话的通信方式。
报文交换适用于公众电报和电子信箱业务。
电子信箱是目前应用较为广泛的远程信箱处理系统,它利用存储转发方式为用户提供多种类型的信箱交换,其最基本的特点是用户可以在任何时间、任何地点发送和接收信件,而不管通信对方处于何种状态。但该业务显然不适于实时通信。
前面所介绍的电路交换不利于实现不同类型的数据之间的相互通信,而报文交换传输信息时延又太长,不满足许多通讯系统的实时性要求,分组交换技术较好地解决了这些矛盾。
分组交换仍采用了报文交换的“存储-转发”方式,但不象报文交换那样以报文为单位交换,而是把报文截成许多比较短的、被规格化了的“分组”(PACKET)进行交换和传输。由于分组长度较短,具有同一的格式,便于在交换机中存储和处理,“分组”进入交换机后只在主存储器中停留很短的时间,进行排队和处理。一旦确定了新的路由,就很快输出到下一个交换机或用户终端。分组穿过交换机或网络的时间很短(分组穿过一个交换机的时延平均为数毫秒或更短),能够满足绝大多数数据通信用户对信息传输的实时性要求。
分组交换的主要优点是:
分组交换的主要缺点是:
分组交换网与DDN网比较可以得到如下结果:
DDN网可提供的通讯速率较高,比较适合于动态图象、可视图文等的传输,但投资大、通信费用高;分组交换网投资小、通信费用低,适合于传输一般的文件、报表等。对于一般的银行业务,如通存通兑、储蓄对工等,性能绰绰有余
分组交换的最基本的思想就是实现通信资源的共享,它的出现使得越来越便宜的计算机的处理能力能够充分利用昂贵的通信资源。
为了经济有效的使用通信线路,我们使用多路复用的方法,即组合多个低速的数据终端共同使用一条高速的线路。可以使用各种不同的多路复用方法。从如何分配传输资源的观点可以分为两类:
把线路传输的时间轮流分配给每个用户,每个用户只在分配的时间里向线路发送信息和接收信息。当在分配的时间里用户没有信息要传输时,这段时间不能由其他用户使用,而保持为空闲状态,如图1-4。
1 2 3 4 1 2 3 4
图1-4 时分复用
把线路的频带资源分成多个子频带,分别分配给用户,形成数据传输子通路。每个用户终端的数据通过专门分配给它的子通路传输。当该用户没有数据传输时,别的用户不能使用。此通路保持空闲状态。如图1-5。
图1-5 频分复用
上述两种方法都实现了由多个用户对一条传输线路的资源的共享。但是由于在传输数据时都可能出现暂时的停顿,而使各个子信道的传输呈现空闲状态,线路的传输能力不能获得充分的利用,这就是预分配的缺点。
为了克服预分配资源的缺点,我们采用用户有数据要传输时才给它分配资源的方法,即动态分配或按需分配,这种根据用户需要分配线路资源的方法称为统计时分复用。这时每个用户的数据传输速率可以高于平均速率。最高可达到线路总的传输能力,如图1-6。
图1-6 统计时分复用
统计时分复用和预分配复用方式相比在各个终端与线路的接口处要增加两个功能:
这两项功能用于解决使用线路资源时产生的冲突。
要正确地传输数据,必须在发送端和接收端之间实现数据的同步,异步实际上也是同步的一种方法。
起止式同步也称异步方式,其方法是在每一个字符的前面和后面分别增加了一个“起”比特和一个“止”比特,“起”比特和“止”比特具有相同的格式,起比特的长度和数据比特相同,电压特性与数据“0”相同,止比特的长度可以选择为数据比特的1、1.5、2倍,它的电压极性与“1”相同。如果止比特结速时下一个起比特未开始,则止比特可以任意延长。如图1-7。
图1-7 起止式同步
由此可见,字符之间可以是不等间隔的,因此称为异步方式。起止式同步在一些人工操作的或低速的数据终端上获得广泛的应用,实现方法简单,价格低,它的缺点是每一个字符都要增加2-3个比特的开销,传输效率较低,但它不需要在发送和接收之间另外发送位定时信号,节省接口线,这是它的优点。
当进行异步通信时,发送方和接收方在如下参数上必须保持一致,否则不能正确译码:
起止式同步在传输数据时,用户面对的是字符流,在传输过程中还可能发生畸变,对数据的可靠性由用户程序完成,因此其应用程序就非常复杂。
(二)字符同步方式
字符同步方式是在发送和接收已经实现了位同步的基础上用于正确识别数据字符的一种同步方法。如图1-8,它是在一连串的数据字符的前面加1个或2个同步字符(SYN)来实现同步的。
图8 字符同步方式
同步字符SYN是事先定义的特殊字符,是由发送设备在发送数据之前加入的,在数据源发送的信息中不应出现同步字符。接收端如果在同步字符之后接收到非同步字符,则认为是数据信息的开始。为防止传输错码而导致同步的错误识别,通常连续发送两个同步字符。如果没有数据要发送,一般通过发送连续的同步字符维持发送与接收之间的同步。同时也表示线路处于空闲状态。
字符同步方式的传输效率显然高于起止式,它适用于中速通信,但它需要在发送方和接收方之间建立位同步,设备比较复杂。
字符同步方式通常伴随着字符通信规程一起使用,由于字符通信规程解决信息的透明传输问题比较复杂,影响了字符同步方式的使用。
(三)帧同步方式
帧同步也是在发送和接收之间已经建立了位同步的基础上正确识别由任意比特数构成的帧的一种同步方式,它在一个帧的前后加上帧标志,如图1-9。
图1-9 帧同步方式
帧标志(FLAG)是一个特殊的编码组合(01111110),接口电路对帧标志的识别是以比特为单位进行的。如果在一个帧的内部信息的任意比特序列中出现了与FJAG相同的组合将导致帧识别错误。为防止这种错误的发生,采用了“0”插入和“0”删除的方法。当接口的任何一方准备好发送一个帧时,首先需要透明操作,对两个帧标志之间的比特序列进行5个“1”的检查,如发现连续5个“1”,则在其后插入1个“0”;在接收端,首先通过帧标志确定一个帧的开始,一旦识别到帧的开始后就进行帧的透明操作。与发送方相反,将比特序列中5个连续“1”之后的“0”去掉,恢复发送的帧比特序列的本来面目。如图1-10。
F: 标志符,编码为01111110
L: 低位比特
M: 高位比特
图1-10 “0”插入与“0”删除
“0”插入、“0”删除以及帧标志的识别都是由通信芯片的硬件物理接口来完成的。对上层的协议和应用来说,该过程是透明的,无须协议程序或用户程序来进行干预。如果该程序结构的硬件支持上述功能,我们就说该物理接口支持同步,否则不支持同步。PC的串口是不支持同步的。
帧同步方式也具有传输效率高的优点,适用于各种速率的通信要求,获得了广泛的应用 。
在预分配复用方式下,每个用户的数据都在特定的子信道中流动,接收端容易区分用户传来的数据。在动态复用分配方式下,各个用户数据在同一线路上互相交织传输,因此不能用预先分配的时间片或频率把它们区分开来。
为了区别来自不同终端的用户数据,我们在把它们交织在一起发送到线路上之前给它们打上与终端或子信道有关的“标记”,通常是在用户数据之前加上终端号或子信道号,这样互接收端就可以通过识别用户数据的“标记”把它们区分开。
用户数据交织传输的方法有三种
时延最小,但效率太低,一般不采用
计算机与数据终端常常以字节(或字符)为单位发送和接收数据,因此可以采用字节交织方式
效率最高,因为增加的“标记’’数量与用户数据相比所占比例很小,但是它可能引起较大的时延,不过这种时延随着通信线路的数据传输速率的提高而减小。
通常,中高速线路适合于采用分组交织方式,低速线路适合于采用字节交织方式。在统计时分复用方式下,通过对数据组的编号,我们可以把各个终端的数据在线路上严格地区分开来,就好象把线路也分成了许多子信道一样。每个子信道用相应的号码表示,我们称这种子信道为逻辑信道。逻辑信道为终端提供独立的数据流通路,线路的逻辑信道号可以独立于终端的编号,逻辑信道号作为线路的一种资源可以在终端要求通信时由STDM分配给它。对每一个终端,每次呼叫可以分配不同的逻辑信道号。但是在同一次呼叫连接中,来自某一个终端的数据的逻辑信道号应相同。用线路的逻辑信道号给终端的数掘作“标记”比用终端号更加灵活方便,这样,一个终端可以同时通过网络建立多个数据通路,STDM以为每个通路分配一个逻辑信道号,并在STDM中建立终端号和逻辑信道号的对应表,网络通过逻辑信道号识别出是哪个终端发来的数据。
为了提高复用效率,我们将数据接一定的长度分组,每一个分组中包括一个分组头,其中包含所分配的逻辑信道号和其它控制信息。我们把这样的数据组称为分组(packet) ,来自数据终端的用户数据可能是一份很长的报文,我们将它按—定长度数截断并加上分组头形成分组,为了保证在接收端能够将分组还原为完整的报文,分组头中还要包含分组的顺序号等信息,为了保证分组在网络中正确地传输和交换,除了包含用户数据的分组之外,我们还要建立许多用于通信控制的分组,因此就出现了各种类型的分组,在分组头中也包含了识别分组类型的信息。各种分组的结构可能不同,但是它们都包含有分组头,分组头的长度为3个宇节,用户数据的长度通常为128个字节,复用的传输效率是很高的。
一个字符终端的数据通过名为PAD( Packet Assembler/Disassembler分组装配和拆卸设备)的设备将数据变成分组,并通过线路发送给网络(交换机)。一个PAD可以同时连接许多个终端,来自不同终端的数据可以通过同一条线路发送到网络,它们可以通过包含在分组头中的逻辑信道号严格地区分开来,相当于形成了许多逻辑上的子信道,每个终端就好象独占了一条子信道一样,它们可以随时向网络发送数据(或接收来自网络的数据)。
终端发送的数据的终点并不是网络,而是与网络相连的计算机或其它终端。PAD已经帮助终端把数据变成了分组,因此数据在网络中以分组为单位流动,穿越网络的节点和中继线,到达它的终点。
一个网络是由许多节点按照一定的拓扑结构互相连接而成,我们把节点和节点之间连接的线路称为中继线( Trunk line),同时节点也可以连接用户终端设备,用户设备与节点相连的线称为用户线( User line),节点是由一台或多台分组交换机构成。
分组交换机具有许多端口,它从某一端口接收分组,并根据分组中包含的有关终点地址的信息选择某一端口发送出去,当然,一个端口可同时接收和发送数据。
分组穿过网络到达终点的方法有两种:
(1)虚电路( Virtual Circuit)
(2)数据报( Datagram)
(一)虚电路
所谓虚电路就是两个用户终端设备在开始互相发送和接收数据之前需要通过网络建立逻辑上的连接。一旦这种连接建立之后就在网络中保持己建立的数据通路,用户发送的数据(以分组为单位)将按顺序通过网络到达终点,当用户不需要发送和接收数据时可以清除这种连接。我们称这种连接为“虚”电路,是因为分组交换机和PAD设备执行线路传输能力的动态按需分配原则,分组交换机为这种连接保持了一种链接关系,终端可以在任何时候发送数据(受流量控制),如果终端暂时没有数据可发送,网络仍保持这种连接关系,但是网络可以将线路的传输能力和交换机的传输能力用作其它服务,它并没有独占网络的资源。
虚电路方式的特点是:
(l)一次通信具有呼叫建立,数据传输和呼叫清除三个阶段。数据分组中不需要包含终点地址,对于数据量较大的通信传输效率高。
(2)数据分组按已建立的路径顺序通过网络,在网络终点不需要对数据重新排序,分组传输时延小,而且不容易产生数据分组的丢失。
(二)数据报
1984年以后的CCITT X.25建议已取消了数据报方式。
一个计算机网的功能应包括两个主要方面:通信和信息处理,它们都反映在网络的体系结构中。一个计算机网络的体系结构是对网络所具有的全部功能的描述,这种描述通常采用分层方式,也就是将它们分为若干层次。层次如何划分以及每层功能上的差别,都将导致网络体系结构的不同。当前,各主要计算机厂家生产的计算机系统产品中都有自己的网络体系结构,采用不同网络体系结构的计算机如不经中介是无法互连的,或者说彼此之间无法建立起可以相互访问的通路。为了解决这一矛盾,80年代韧,国际标准化组织(ISO)提出了开放系统互连(0pen System Interconnection)基本参考模型,它们可以与任何其他地点的开放系统进行互连(“开放”) 。“互连”则包括交换信息和协同工作(合作完成一个共同的任务)双重含意。
0SI模型由7个功能层组成,它们是:
(l)物理层
(2)数据链路层
(3)网络层
(4)运输层
(5)会话层
(6)表示层
(7)应用层
计算机A和计算机B通信需要解决两个问题,一个是数据要及时而且正确地传送,另一个是通信双方必须能够识别对方发送的数据。前一个问题要由计算机( A和B)和网络共同完成,后一个问题是计算机A和计算机B之间必须解决的问题。我们把7层中的 l、2、3层称为低层组,它是由计算机和网络共同执行的功能,把4、5、6、7层称为高层组,它是计算机A和计算机B之间执行的通信控制功能。
0SI参考模型之所以受到全世界的普遍接受和欢迎,就在于它提供了解决异种计算机通信问题的可能。两个系统,不管它们是怎样不同,如果它们具有下列共同之处,则可以有效地进行通信:
(l)它们执行相同的通信功能集合。
(2)这些功能由同样的层次集合组成,对同层提供同样的功能(提供功能的方式可以不同)。
(3)对等层必须采用相同的协议。
为了实现上述各点,需要有标准。标准确定每一层应提供的功能和服务,标准也确定对等层之间的通信协议。0SI参考模型只是确定了一个七层体系结构,它为确定这些标准和通信协议提供了标准的骨架。
图1-11
物理层为OSI模型的最低层,它的功能是在系统之间建立、保持和断开一条物理电路,提供时钟信号,提供正确的比特信息流的传输。
数据链路层负责链路上的数据传输,它将来自物理层的比特流分成数据块(帧);提供比待的识别,确保数据安全地到达接收DTE;提供流量控制,以确保DTE在任何时候都不会由于接收数据量过大而过载;特别重要的功能是检测传输差错,并提供一种纠错机制,克服数据的丢失、重复或错误。
网络层规定了用户进人网络的接口,以及网络之间互连的接口,网络层的基本服务是在两个运输实体之间提供透明的数据传输。
运输层提供了数据通信网络和上3层(用户系统)之间的接口,该层给予用户一些选择,以便从网络(即网络层)获得某种等级的通信质量。该层的设计使用户摆脱了网络的—些物理的和功能上的概念,它也是可以在多条链路上提供端到端通信能力的第一层。
会话层作为用户进人运输层的接口,它提供一种经过组织的方法在用户之间交换数据。例如同时的数据传输、交替的数据传输、用户应用程序之间的数据流的再同步等。用户能够选择同步类型和所需要的控制。
表示层提供数据的句法,即数据的表示,它不关心数据的含义或语义。其基本作用是从应用层接受数据类型(字符、整数等),然后同通信对象的对等层协商通信的句法表示(例如 ASCII),该层是由许多句法表组成的。
应用层用于支持终端用户的应用进程,与表示层不同,它关心的是数据的语义。该层包含—些支持应用进程的服务元素。应用进程的例子有:作业管理,金融数据交换,电子信箱、数据库管理等。
网络通信协议是一种网络通用语言,为连接不同操作系统和不同硬件体系结构的互联网络提供通信支持,是一种网络通用语言。
例如,网络中一个微机用户和一个大型主机的操作员进行通信,由于这两个数据终端所用字符集不同,因此操作员所输入的命令彼此不认识。为了能进行通信,规定每个终端都要将各自字符集中的字符先变换为标准字符集的字符后,才进入网络传送,到达目的终端之后,再变换为该终端字符集的字符。因此,网络通信协议也可以理解为网络上各台计算机之间进行交流的一种语言。
3.4.2 网络通信协议由三个要素组成:
语义,解释控制信息每个部分的意义。它规定了需要发出何种控制信息,以及完成的动作与做出什么样的响应。
语法,用户数据与控制信息的结构与格式,以及数据出现的顺序。
时序,对事件发生顺序的详细说明。
常见的网络通信协议有:TCP/IP协议、IPX/SPX协议、NetBEUI协议等。
TCP/IP协议
TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议) 协议具有很强的灵活性,支持任意规模的网络,几乎可连接所有服务器和工作站。在使用TCP/IP协议时需要进行复杂的设置,每个结点至少需要一个“IP地址”、一个“子网掩码”、一个“默认网关”、一个“主机名”,对于一些初学者来说使用不太方便。 [1]
IPX/SPX及其兼容协议
IPX/SPX(Internetwork Packet Exchange/Sequences Packet Exchange,网际包交换/顺序包交换)是Novell公司的通信协议集。IPX/SPX具有强大的路由功能,适合于大型网络使用。当用户端接入NetWarefe服务器时,IPX/SPX及其兼容协议是最好的选择。但在非Novell网络环境中,IPX/SPX一般不使用。
NetBEUI协议
NetBEUI(NetBios Enhanced User Interface , NetBios增强用户接口)协议是一种短小精悍、通信效率高的广播型协议,安装后不需要进行设置,特别适合于在“网络邻居”传送数据。
TCP/IP参考模型是首先由ARPANET所使用的网络体系结构,共分为四层:网络接口层(又称链路层)、网络层(又称互联层)、传输层和应用层,每一层都呼叫它的下一层所提供的网络来完成自己的需求。
每一层对应的协议有:
网络接口层协议:Ethernet 802.3、Token Ring 802.5、X.25、Frame relay、HDLC、PPP ATM等。
网络层协议:IP(Internet Protocol,英特网协议)、ICMP(Internet Control Message Protocol,控制报文协议)、ARP(Address Resolution Protocol,地址转换协议)、RARP(Reverse ARP,反向地址转换协议)。
传输层协议: TCP(Transmission Control Protocol,传输控制协议)和UDP(User Datagram protocol,用户数据报协议)。
应用层协议:FTP(File Transfer Protocol,文件传输协议)、TELNET(用户远程登录服务协议)、DNS(Domain Name Service,是域名解析服务)、SMTP(Simple Mail Transfer Protocol,j简单邮件传输协议)、NFS(Network File System,网络文件系统)、HTTP(Hypertext Transfer Protocol,超文本传输协议)。
文章浏览阅读1k次。通过使用ajax方法跨域请求是浏览器所不允许的,浏览器出于安全考虑是禁止的。警告信息如下:不过jQuery对跨域问题也有解决方案,使用jsonp的方式解决,方法如下:$.ajax({ async:false, url: 'http://www.mysite.com/demo.do', // 跨域URL ty..._nginx不停的xhr
文章浏览阅读2k次。关于在 Oracle 中配置 extproc 以访问 ST_Geometry,也就是我们所说的 使用空间SQL 的方法,官方文档链接如下。http://desktop.arcgis.com/zh-cn/arcmap/latest/manage-data/gdbs-in-oracle/configure-oracle-extproc.htm其实简单总结一下,主要就分为以下几个步骤。..._extproc
文章浏览阅读1.5w次。linux下没有上面的两个函数,需要使用函数 mbstowcs和wcstombsmbstowcs将多字节编码转换为宽字节编码wcstombs将宽字节编码转换为多字节编码这两个函数,转换过程中受到系统编码类型的影响,需要通过设置来设定转换前和转换后的编码类型。通过函数setlocale进行系统编码的设置。linux下输入命名locale -a查看系统支持的编码_linux c++ gbk->utf8
文章浏览阅读750次。今天准备从生产库向测试库进行数据导入,结果在imp导入的时候遇到“ IMP-00009:导出文件异常结束” 错误,google一下,发现可能有如下原因导致imp的数据太大,没有写buffer和commit两个数据库字符集不同从低版本exp的dmp文件,向高版本imp导出的dmp文件出错传输dmp文件时,文件损坏解决办法:imp时指定..._imp-00009导出文件异常结束
文章浏览阅读143次。当下是一个大数据的时代,各个行业都离不开数据的支持。因此,网络爬虫就应运而生。网络爬虫当下最为火热的是Python,Python开发爬虫相对简单,而且功能库相当完善,力压众多开发语言。本次教程我们爬取前程无忧的招聘信息来分析Python程序员需要掌握那些编程技术。首先在谷歌浏览器打开前程无忧的首页,按F12打开浏览器的开发者工具。浏览器开发者工具是用于捕捉网站的请求信息,通过分析请求信息可以了解请..._初级python程序员能力要求
文章浏览阅读7.6k次,点赞2次,收藏6次。@Service标注的bean,类名:ABDemoService查看源码后发现,原来是经过一个特殊处理:当类的名字是以两个或以上的大写字母开头的话,bean的名字会与类名保持一致public class AnnotationBeanNameGenerator implements BeanNameGenerator { private static final String C..._@service beanname
文章浏览阅读6.9w次,点赞73次,收藏463次。1.前序创建#include<stdio.h>#include<string.h>#include<stdlib.h>#include<malloc.h>#include<iostream>#include<stack>#include<queue>using namespace std;typed_二叉树的建立
文章浏览阅读7.1k次。在Asp.net上使用Excel导出功能,如果文件名出现中文,便会以乱码视之。 解决方法: fileName = HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8);_asp.net utf8 导出中文字符乱码
文章浏览阅读2.1k次,点赞4次,收藏23次。第一次实验 词法分析实验报告设计思想词法分析的主要任务是根据文法的词汇表以及对应约定的编码进行一定的识别,找出文件中所有的合法的单词,并给出一定的信息作为最后的结果,用于后续语法分析程序的使用;本实验针对 PL/0 语言 的文法、词汇表编写一个词法分析程序,对于每个单词根据词汇表输出: (单词种类, 单词的值) 二元对。词汇表:种别编码单词符号助记符0beginb..._对pl/0作以下修改扩充。增加单词
文章浏览阅读773次。我在使用adb.exe时遇到了麻烦.我想使用与bash相同的adb.exe shell提示符,所以我决定更改默认的bash二进制文件(当然二进制文件是交叉编译的,一切都很完美)更改bash二进制文件遵循以下顺序> adb remount> adb push bash / system / bin /> adb shell> cd / system / bin> chm..._adb shell mv 权限
文章浏览阅读6.8k次,点赞12次,收藏125次。1. 单目相机标定引言相机标定已经研究多年,标定的算法可以分为基于摄影测量的标定和自标定。其中,应用最为广泛的还是张正友标定法。这是一种简单灵活、高鲁棒性、低成本的相机标定算法。仅需要一台相机和一块平面标定板构建相机标定系统,在标定过程中,相机拍摄多个角度下(至少两个角度,推荐10~20个角度)的标定板图像(相机和标定板都可以移动),即可对相机的内外参数进行标定。下面介绍张氏标定法(以下也这么称呼)的原理。原理相机模型和单应矩阵相机标定,就是对相机的内外参数进行计算的过程,从而得到物体到图像的投影_相机-投影仪标定
文章浏览阅读2.2k次。文章目录Wayland 架构Wayland 渲染Wayland的 硬件支持简 述: 翻译一篇关于和 wayland 有关的技术文章, 其英文标题为Wayland Architecture .Wayland 架构若是想要更好的理解 Wayland 架构及其与 X (X11 or X Window System) 结构;一种很好的方法是将事件从输入设备就开始跟踪, 查看期间所有的屏幕上出现的变化。这就是我们现在对 X 的理解。 内核是从一个输入设备中获取一个事件,并通过 evdev 输入_wayland