自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(251)
  • 资源 (11)
  • 收藏
  • 关注

原创 操作系统-第二章-进程管理

程序的顺序执行概述:一个程序由若干程序段组成,它们必须按照某种先后顺序执行,仅当前一个操作执行完毕之后才能执行后续操作,这就是程序的顺序执行过程程序顺序执行时的特征顺序性:每一个操作必须在下一个操作开始之前结束封闭性:程序一旦开始运行,就不受外界干扰,因为程序运行时独占系统的各种资源,只有本程序才能改变可再现性:只要程序的初始条件和执行环境相同,重复执行的结果是相同的点击下载...

2018-10-03 08:55:34 359

原创 计算机网络思维导图-第三章-数据链路层

计算机网络思维导图-第三章-数据链路层点击下载mmap文件其它mmap文件下载:关注下方微信公众号,获取欢迎加入交流群:451826376更多信息:www.itcourse.top...

2018-07-03 16:20:42 2953

原创 编译原理-自底向上优先分析概述

前言前面学了自顶向下的分析方法,它是使用推导的方式进行语法分析。这里学的自底向上优先分析是使用规约进行的语法分析自底向上优先分析的原理:从输入串开始,朝着文法的开始符号进行规约,直到到达开始符号。这是一个最左规约的过程自底向上优先分析的分类:简单优先分析法、算符优先分析法自底向上分析所使用的自动机是PDA(下推自动机) 工作方式“移进-规约”从左至右让输入串进栈,在移动的过程中不断查看栈顶

2018-05-07 10:25:07 2617

原创 编译原理-LL(1)文法

前面说的像消除左递归、提取最左公因子、求FIRST集合……,今天给它一个称呼,叫作LL(1)文法LL(1)文法:若文法G的预测分析表M中不含有多重定义项,则称G为LL(1)文法 判断一个文法是不是LL(1)文法当且仅当对于G的每个非终结符A的任何两个产生式A → α | β,有:// 消除左递归,提取最左公因子的情况下1)FIRST(α) ∩ FIRST(β) = ∅2)若ε ∈ FIRST

2018-05-07 10:24:44 6280 1

原创 编译原理-求文法G的预测分析表

前言为什么求预测分析表:为了消除回溯,前面做了许多准备。其中关键是FIRST集合和FOLLOW集合,它们两个组合,达到了预测候选式的目的。为了使计算机比较好处理,把它们的预测结果统计成一张二维表,这就是求预测分析表的原因定义:M[A][a] 是一个二维数组,其中行A表示的是栈顶符号,a表示的读头下的符号(A为非终结符,a为终结符),它们存放的是当前状态下所使用的候选式(或存放出错标志,指出A不该

2018-05-04 15:38:39 3995 1

原创 编译原理-求SELECT集合

前言为什么要求SELECT集合:前面求解的FIRST集合和FOLLOW集合都是为了回溯的问题。求SELECT集合是一个比较简单的操作,主要是为了给后面求预测分析表提供数据方法首先,得会求解FIRST集合和FOLLOW集合(可点击查看)求解方法: 1.如果 α 不能推出 ε,则:SELECT(A → α) = FIRST(α) 2.如果 α 推出 ε,则:SELE...

2018-05-04 14:55:04 18243 1

原创 编译原理-求FOLLOW集合

前言为什么需要求FIRST集合:因为一个产生式存在多个候选式,选择哪一个候选式是不确定的,所以这就产生了回溯。回溯需要消耗大量的计算、存储空间,所以我们需要消除回溯。而消除回溯的其中一种方法叫作“预测”,即根据栈顶非终结符去预测后面的候选式,那预测方法就是求第一个非终结符,来判断是否和读头匹配,以达到预测的效果为什么需要求FOLLOW集合:求FOLLOW集合的目的和FIRST集合的目的是一...

2018-05-04 14:54:41 5934

原创 编译原理-提取最左因子

前言为什么需要提取最左因子:当存在公共的最左因子时,FIRST集合之间会造成两两相交的情况,为了不使FIRST集合之间相交,所以需要提取最左因子提取办法很简单,比如 A → δβ1 | δβ2 | δβ3 | …… |δβn | δ,就提取成 A → δA’ A’ → β1 | β2 | β3 | …… | βn | ε 重复这个操作,直到所有的FIRST...

2018-05-04 14:54:20 3077

原创 编译原理-求FIRST集合

前言为什么需要求FIRST集合:因为一个产生式存在多个候选式,选择哪一个候选式是不确定的,所以这就产生了回溯。回溯需要消耗大量的计算、存储空间,所以我们需要消除回溯。而消除回溯的其中一种方法叫作“预测”,即根据栈顶非终结符去预测后面的候选式,那预测方法就是求第一个非终结符,来判断是否和读头匹配,以达到预测的效果 FIRST集合定义文字定义:FIRST(α)集合是A的所有可能推导出的开头...

2018-05-04 14:53:54 1504

原创 编译原理-消除左递归

前言在进行语法分析的时候,如果采用自上而下的分析方法(从开始符开始,推句子),那么要求文法不是左递归的,进而如果是左递归的,则要求消除左递归左递归的定义:文法经过一次或多次推导之后,出现如下形式 左递归的分类 直接左递归:P → Pa简介左递归:P → Aa, A → …… → Pb直接左递归的消除对于 P → Pa | b 形式(b可为空)...

2018-05-04 14:53:30 17813 2

原创 编译原理-正规文法和有穷自动机的等价性(自动机→文法)

这是“文法→自动机”的逆过程,把过程反过来就行。可以点击以查看相关内容。注意的一点就是:对终态增加规则 Z → ε。下面直接上例子例子1) VN = {A,B,C,D} 2) VT = {a,b} 3) S = A 4) f与P的对应A → aBA → bDB → bCC → aAC → bDD → bDD → aB...

2018-05-04 14:53:06 2512 1

原创 编译原理-正规文法和有穷自动机的等价性(文法→自动机)

前言正规文法与有穷自动机的等价:若正规文法G、有穷自动机M,满足L(M) = L(G),就认为两者是等价的正规文法转有穷自动机方法正规文法G和有穷自动机M表示如下: G与M的对应关系1) 状态集合 Q = VN ∪ Z2) 字母表 ∑ = VT3) 初态 q0 = S4) P与f的转换规则a) A → aB ==> f(A,a) = Bb...

2018-05-04 14:52:34 5835 1

原创 Java面试笔试-010-Java中的clone方法

描述1)引用传递与值传递 - 由于指针不仅会给开发人员带来使用上的不便,而且也是造成程序不稳定的根源,为了消除C/C++语言的这些缺点,Java语言取消了指针的概念,但这只是在Java语言中没有明确提供指针的概念与用法,而实质上每个new语句返回的都是一个指针的引用,只不过在大部分情况下开发人员不需要关心如何去操作这个指针而已。由于Java取消了指针的概念,因此开发人员在编程中往往忽略了对象和引用

2018-05-04 14:49:49 150

原创 JVM-029-Hotspot算法实现-安全区域

使用Safepoint似乎已经完美地解决了如何进入GC的问题,但实际情况却并不一定。Safepoint机制保证了程序执行时,在不太长的时间内就会遇到可进入GC的Safepoint。但是,程序“不执行”的时候呢?所谓的程序不执行就是没有分配CPU时间,典型的例子就是线程处于Sleep状态或者Blocked状态,这时候线程无法响应JVM的中断请求,“走”到安全的地方去中断挂起,JVM也显然不太可能等待线

2018-05-04 14:49:24 258

原创 JVM-028-Hotspot算法实现-安全点

在OopMap的协助下,HotSpot可以快速且准确地完成GC Roots枚举,但一个很现实的问题随之而来:可能导致引用关系变化,或者说OopMap内容变化的指令非常多,如果为每一条指令都生成对应的OopMap,那将会需要大量的额外空间,这样GC的空间成本将会变得很高。实际上,HotSpot也的确没有为每条指令都生成OopMap,前面已经提到,只是在“特定的位置”记录了这些信息,这些位置称为安全点

2018-05-04 14:49:03 167

原创 JVM-027-Hotspot算法实现-枚举根节点

从可达性分析中从GC Roots节点找引用链这个操作为例,可作为GC Roots的节点主要在全局性的引用(例如常量或类静态属性)与执行上下文(例如栈帧中的本地变量表)中,现在很多应用仅仅方法区就有数百兆,如果要逐个检査这里面的引用,那么必然会消耗很多时间。另外,可达性分析对执行时间的敏感还体现在GC停顿上,因为这项分析工作必须在一个能确保一致性的快照中进行——这里“一致性”的意思是指在整个分析期间

2018-05-04 14:48:41 616 2

原创 JVM-026-垃圾收集算法-分代收集算法

当前商业虚拟机的垃圾收集都采用“分代收集”(Generational Collection)算法,这种算法并没有什么新的思想,只是根据对象存活周期的不同将内存划分为几块。一般是把Java堆分为新生代和老年代,这样就可以根据各个年代的特点采用最适当的收集算法。在新生代中,每次垃圾收集时都发现有大批对象死去,只有少量存活,那就选用复制箅法,只需要付出少量存活对象的复制成本就可以完成收集。而老年代中因为对

2018-05-04 14:48:20 137

原创 JVM-025-垃圾收集算法-标记、整理算法

复制收集算法在对象存活率较高时就要进行较多的复制操作,效率将会变低。更关键的是,如果不想浪费50%的空间,就需要有额外的空间进行分配担保,以应对被使用的内存中所有对象都100%存活的极端情况,所以在老年代一般不能直接选用这种算法。根据老年代的特点,有人提出了另外一种“标记-整理”(Mark-Compact)算法,标记过程仍然与“标记-清除”算法一样,但后续步骤不是直接对可回收对象进行清理,而是让所

2018-05-04 14:48:00 225

原创 JVM-024-垃圾收集算法-复制算法

为了解决效率问题,一种称为“复制”(Copying)的收集算法出现了,它将可用内存按容量划分为大小相等的两块,每次只使用其中的一块。当这一块的内存用完了,就将还存活着的对象复制到另外一块上面,然后再把已使用过的内存空间一次清理掉。这样使得每次都是对整个半区进行内存回收,内存分配时也就不用考虑内存碎片等复杂情况,只要移动堆顶指针,按顺序分配内存即可,实现简单,运行高效。只是这种算法的代价是将内存缩小为

2018-05-04 14:47:36 273

原创 Java面试笔试-009-没有方法的接口

描述1)接口 - 由于Java不支持多重继承,即一个类只能有一个父类,为了克服单继承的缺点,Java语言引入接口这一概念。接口是抽象方法定义的集合(接口中也可以定义一些常量值),是一种特殊的抽象类。接口中只包含方法的定义,没有方法的实现。接口中的所有方法都是抽象的。接口中成员的作用域修饰符都是public,接口中的常量值默认使用public static final修饰。由于一个类可以实现多个接口

2018-05-04 14:47:16 226

原创 Java面试笔试-008-构造器

描述构造函数是一种特殊的函数,用来在对象实例化时初始化对象的成员变量。在Java语言中,构造函数具有以下特点。1)构造函数名与类名一致 - 构造函数必须与类的名字相同,并且不能有返回值(返回值也不能为void)。2)可以有多个构造函数 - 当开发人员没有提供构造函数时,编译器在把源代码编译成字作码的过程中会提供一个没有参数默认的构造函数,但该构造函数不会执行任何代码。 如果开发人员提供了构造

2018-05-04 14:46:55 308

原创 Java面试笔试-007-一个Java文件中的类的数目

描述一个Java文件中可以定义多个类,但是最多只能有一个类被public修饰,并且这个类的类名与文件名必须相同,若这个文件中没有public的类,则文件名随便是一个类的名字即可。 需要注意的是,当用javac指令编译这个.java文件时,它会给每一个类生成一个对应的.class 文件,示例如下。class Base { public void print() { Syst

2018-05-04 14:46:36 142

原创 Java面试笔试-006-Java中的作用域

描述在计算机程序中,声明在不同地方的变量具有不同的作用域,例如全局变量、局部变量等。在Java语言中,作用域是由花括号的位置决定的,它决定了其定义的变量名的可见性与生命周期。在Java语言中,变量的类型主要有3种:成员变量、静态变量和局部变量。1)成员变量 - 类的成员变量的作用范围与类的实例化对象的作用范围相同,当类被实例化时,成员变量就会在内存中分配空间并初始化,直到这个被实例化对象的生

2018-05-04 14:46:13 172

原创 JVM-023-垃圾收集算法-标记、清除算法

最基础的收集算法是“标记-清除”(Mark-Sweep)算法,如同它的名字一样,算法分为“标记”和“清除”两个阶段:首先标记出所有需要回收的对象,在标记己完成后统一回收所有被标记的对象,它的标记过程其实在前一节讲述对象标记判定时已经介绍过了。之所以说它是最基础的收集算法,是因为后续的收集算法都是基于这种思路并对其不足进行改进而得到的。它的主要不足有两个: 1.一个是效率问题,标记和清除两个过程的效

2018-05-04 14:45:55 113

原创 JVM-022-回收方法区

很多人认为方法区(或者HotSpot虚拟机中的永久代)是没有垃圾收集的,Java虚拟机规范中确实说过可以不要求虚拟机在方法区实现垃圾收集,而且在方法区中进行垃圾收集的“性价比”一般比较低:在堆中,尤其是在新生代中,常规应用进行一次垃圾收集一般可以回收70%〜95%的空间,而永久代的垃圾收集效率远低于此。永久代的垃圾收集主要回收两部分内容:废弃常量和无用的类。废弃常量回收废弃常量与回收Java堆

2018-05-04 14:45:32 220

原创 Java面试笔试-005-Java程序的初始化顺序

描述在Java语言中,当实例化对象时,对象所在类的所有成员变量首先要进行初始化,只有当所有类成员完成初始化后,才会调用对象所在类的构造函数创建象。1)初始化一般遵循3个原则 Java程序的初始化一般遵循3个原则(优先级依次递减): ①静态对象(变量)优先于非静态对象(变量)初始化,其中,静态对象(变量)只初始化一次,而非静态对象(变量) 可能会初始化多次。 ②父类优先于子类进行初始化。

2018-05-04 14:45:05 149

原创 Java面试笔试-004-在main方法前输出内容

描述众所周知,在Java语言中,main()方法是程序的入口方法,在程序运行时,最先加载的就是main()方法,但这是否意味着main()方法就是程序运行时第一个被执行的模块呢? 答案是否定的。在Java语言中,由于静态块在类被加载时就会被调用,因此可以在main()方法执行前,利用静态块实现输出“Hello World”的功能,以如下代码为例。public class Test {

2018-05-04 14:44:40 140

原创 Http-012-告知服务器意图的 HTTP 方法

GET :获取资源GET 方法用来请求访问已被 URI 识别的资源。指定的资源经服务器端解析后返回响应内容。也就是说,如果请求的资源是文本,那就保持原样返回;如果是像 CGI(Common Gateway Interface,通用网关接口)那样的程序,则返回经过执行后的输出结果。使用 GET 方法的请求-响应的例子请求:GET /index.html HTTP/1.1Host: www.ha

2018-05-04 14:44:11 216

原创 确定有穷自动机(DFA)化简(最小化)

预备最简化的DFA:这个DFA没有多余状态、也没有两个相互等价的状态。一个DFA可以通过消除无用状态、合并等价状态而转换成一个与之等价的最小状态的有穷自动机。无用状态:从自动机开始状态出发,任何输入串也发到达的那个状态,或者这个状态没有通路可达终态。等价转态:两个状态,识别相同的串,结果都同为正确或错误,这两个状态就是等价的。区别状态:不是等价状态。化简DFA分割法:把...

2018-04-27 11:35:12 37927 9

原创 (NFA的确定化)NFA转换为等价的DFA(含视频教程)

视频教程,点这里DFA和NFA组成定义DFA构成:五元组(K,∑,f,S,Z)K:所有状态的集合∑:所有可接受的输入符号的集合f:转换函数,是K × ∑ → K 上的映射。就是一个状态读入某个输入符号之后所到达的下一个状态的规则S:K中的初始状态(只有一个)Z:K中的终态集合(多个)NFA构成:五元组K:所有状态的集合∑:所有可接受的输入符号的集合f:转换函数,...

2018-04-27 10:09:49 14140

原创 史上最简单的海明码求解方法(含视频讲解)

视频讲解概述纠错编码:在接收端不但能检查错误,而且还能纠正检查出来的错误。常见的纠错编码是海明编码海明码:在信息字段中插入若干位数据,用于监督码字力的哪一位数据发生了变化,具有一位纠错能力求解海明码步骤1)求出校验码位数原理假设传送的信息位有k位,数据校验位有r位,整个码字的长度就设置为k+r位又因为每一位数据有0、1两个状态,所以r位可以表示2^r种...

2018-04-24 08:44:07 3472 1

原创 JVM-021-生存还是死亡

即使在可达性分析算法中不可达的对象,也并非是“非死不可”的,这时候它们暂时处于“缓刑”阶段,要真正宣告一个对象死亡,至少要经历两次标记过程:1.如果对象在进行可达性分析后发现没有与GC Roots相连接的引用链,那它将会被第一次标记并且进行一次筛选,筛选的条件是此对象是否有必要执行finalize()方法。当对象没有覆盖finalize()方法,或者finalize()方法已经被虚拟机调用过,虚拟

2018-04-24 08:43:25 226

原创 JVM-020-再谈引用

无论是通过引用计数算法判断对象的引用数量,还是通过可达性分析算法判断对象的引用链是否可达,判定对象是否存活都与“引用”有关。在JDK1.2以前,Java中的引用的定义很传统:如果reference类塑的数据中存储的数值代表的是另外一块内存的起始地址,就称这块内存代表着一个引用。这种定义很纯粹,但是太过狭隘,一个对象在这种定义下只有被引用或者没有被引用两种状态,对于如何描述一些“食之无味,弃之可惜”的

2018-04-23 12:08:56 134

原创 Java面试笔试-003-public static void main(String[] args)

描述1)publicpublic是权限修饰符,表明任何类或对象都可以访问这个方法。2)staticstatic表明main()方法是一个静态方法,即方法中的代码是存储在静态存储区的,只要类被加载后,就可以使用该方法而不需要通过实例化对象来访问,可以直接通过类名.main()直接访问,JVM在启动时就是按照上述方法的签名(必须有public与static修饰,返回值为void,且方法的参数为字符中数组

2018-04-23 12:08:08 5047

原创 Java面试笔试-002-Java与C/C++有何异同

描述1)Java为解释型语言。其运行过程为:程序源代码经过Java编译器编译成字节码,然后 由JVM解释执行。而C/C++为编译型语言,源代码经过编译和链接后生成可执行的二进制代 码。因此,Java的执行速度比C/C+ +慢,但是Java能够跨平台执行,而C/C++不能。2)Java为纯面向对象语言。所有代码(包括函数、变量等)必须在类中实现,除基本数 据类型 (包括int、float等)外,所有类

2018-04-23 12:07:38 181

原创 Java面试笔试-001-Java语言的优点

描述1)Java语言为纯面向对象的语言。Java为纯面向对象的语言。《Java编程思想》提到Java语言是一种“Everything is object” 的语言,它能够直接反应现实生活中的对象,例如火车、 动物等,因此通过它, 开发人 员编写程序更为容易。2)平台无关性。Java语言可以“一次编译,到处运行”。无论是在Windows平台还是在 Linux、MacOS等其他平台上对Java程序进行编

2018-04-23 12:06:53 507

原创 设计模式(Java)-005-单例模式-双重检测锁

双重锁检测式(由于JVM底层内部模型关系,偶尔会出现问题。不建议使用) 1.其它和懒汉式一样,只是通过双重检测锁处理后,获取单例的效率更高了步骤 1.私有化构造器 2.提供一个私有的静态的该类对象的引用 3.一个公有的静态的同步方法,返回单例对象(第一次调用该方法时创建单例对象)说明 1.原型是懒汉式,只是不再直接对方法进行加锁,只有第一次调用时才存在同步,从而提高了获取单例对象时的效

2018-04-23 12:06:10 159

原创 设计模式(Java)-004-单例模式-懒汉式

懒汉式线程不安全、调用效率不高、但是可以延迟加载) 1.线程不安全(可以解决):对getInstance方法进行synchronized 2.调用效率不高:因为对getInstance方法进行了sysnchronized 3.可以延迟加载:再第一次获取单例的时候再创建对象步骤 1.私有化构造器 2.提供一个私有的静态的该类对象的引用 3.一个公有的静态的同步方法,返回单例对象(第一次调

2018-04-23 12:05:46 114

原创 设计模式(Java)-003-单例模式-饿汉式

饿汉式(线程安全、调用效率高、但是不能延迟加载) 1.线程安全:在类加载时完成对象的创建 2.调用效率高:getInstance没有任何同步限制 3.不能延迟加载:正是因为在类加载时就完成了对象的创建步骤: 1.构造器私有 2.提供静态私有的对象 3.提供一个静态公有方法,获取静态私有对象说明:static属性会在类装载时进行初始化,此时并不会设计到多线程问题。虚拟机保证只会装

2018-04-23 12:05:19 103

原创 设计模式(Java)-002-单例模式(Singleton)概述

解释程序在运行时,通常都会生成很多实例。例如,表示字符串的java.lang.String类的实例与字符串是一对一的关系,所以当有1000个字符串的时候,会生成1000个实例。但是,当我们想在程序中表示某个东西只会存在一个时,就会有“只能创建一个实例”的需求。典型的例子有表示程序所运行于的那台计算机的类、表示软件系统相关设置的类,以及表示视窗系统(windowsystem)的类。当然,只要我们

2018-04-23 12:04:23 99

操作系统-第二章-进程管理

)进程的撤销 简述:一个进程在完成其任务后应予以撤销,以便及时释放它所占用的各类资源 撤销原语 分类 只撤销一个具有指定标识符的进程 撤销指定进程及其所有子孙进程 撤销事件:进程正常结束、进程异常结束、外界干预 撤销过程(使用撤销原语) 从 PCB 集合找到被撤销进程的 PCB 若该进程正处于运行状态,立即停止该进程的执行,设置重新调度标志,以便进程撤销后将处理器分配给其它进程 对后一种撤销类型,若被撤销的进程有子孙进程,还应将子孙进程撤销 回收被撤销进程所占有的资源

2018-10-03

操作系统-第一章-绪论

1 )处理器管理 处理器管理:主要任务是对处理器的分配和运行实施有效的管理 主要功能(处理器管理归结为进程管理) 进程控制:负责进程的创建、撤销、状态转换 进程同步:对并发执行的进程进行协调 进程通信:负责完成进程间的信息交换 进程调度:按一定的算法进行处理器分配 2 )存储器管理 存储器管理:主要任务是对内存进行分配、保护、扩充 主要功能 内存分配:按一定的策略为每道程序分配内存 内存保护:保证各程序在自己的内存区域内运行而互不干扰 内存扩充:为允许大型作业或多作业的运行,必须借助虚拟存储技术去获得增加内存的效果 3 )设备管理 设备管理:主要任务是对计算机系统内的所有设备实施有效的管理 主要功能 设备分配:按一定的设备分配原则对设备进行分配。为了使设备和主机并行工作,还需要采用缓冲技术和虚拟技术 设备传输控制:实现物理的输入输出操作,即启动设备、中断设备、结束处理等 设备独立性:即用户程序中的设备与实际使用的物理设备无关 4 )文件管理 文件管理:负责信息管理的部分叫作文件系统。主要任务是有效的支持文件的存储、检索、修改等操作,解决文件的共享、保密、保护 主要功能 文件存储空间管理:包括存储空间的分配和回收 目录管理:目录是为了方便文件管理

2018-10-03

计算机网络-第三章.数据链路层

加0规则:按指定的除数的位数-1,加在传送的数据后面 101001000 3)商的规则 补位后,余数部分首位是0,除数首位是1,商0 其它商1 4)求余数的规则: 异或(不同为1,相同为0) 5) 最后留下余数R,做FCS 6) 最终传送数据是:传送数据 + 余数 101001001 7) 接受方:用接收到的数据/协商好的除数==>余数为0,传输过程没有错误;否则错误,扔掉,要求重传 8)说明 除数是数据链路层协商定的 商不管 注 具有r检测位的多项式,能够检测出所有小于或等于r的突发错误 长度大于r+1的错误,逃脱的概率是1/(2的r次方) 仅能做到无差错接收(不是可靠传输) CRC是检错码。CRC是具有纠错功能的,但是在计算机网络中,一般是出错就直接要求重传,所以默认CRC是检错码(不是纠错码) 概述:在接收端不但能检查错误,而且还能纠正检查出来的错误。常见的纠错编码是海明编码 概述:在信息字段中插入若干位数据,用于监督码字里的哪一位数据发生了变化,具有一位纠错能力 1)求出校验码位数 原理 假设信息位有k位,冗余位r位,整个码字的长度就设置为k+r位 每一位数据有0、1两个状态,r位可以表示2^r种状态 一种状态来表示一个码元发生了错误;k+r位码元,需要k+r种状态来表示 还额外需要一位表示数据的正确情况 所以2^r-1>=k+r才能检查一位错误 例子 推导D=101101的海明码,信息位有6位

2018-10-03

计算机网络-第二章.物理层

首先,主机 A 将分组逐个地发往与它直接相连的交换机 1 ,交换机 1 将主机 A 发来的分组进行缓存 2 )交换机 1 查找自己的转发表,不同时刻转发表可能会有不同,因此有的分组转发给交换机 2 ,有的转发给交换 3 和交换机 4 3 )以此类推,直到所有分组到达主机 B 注意:当分组在交换机 1- 交换机 2 等链路上时,只是占用了这一段,并没有全部占用网络资源 特点 发送分组前无需建立连接 网络尽最大努力交付,但不保证可靠性,有可能丢失 每个分组是独立处理的,所以转发路径可能不一样,所以不一定按序到达接收方 交换机尚未接收完第二个分组,它就可以把已经收到的第一个分组发送出去,不仅减少了时延,还大大提高了吞吐量 当某一台交换机或一段链路故障时,可以相应的更新转发表,寻找到另一条替代路径转发分组,对故障适应能力强 发送方和接收方不独占某一段链路,所以资源利用率高 虚电路 简介:在发送数据之前,在源主机和目的主机之间建立一条虚连接。建立完毕后,用户发送的数据(以分组为单位) 将通过该路径按顺序传送到目的主机。通信完成后,释放连接。 虚电

2018-10-03

计算机网络-第一章.计算机网络体系结构

主机、通信处理机、通信线路、交换设备 软件:实现资源共享的软件、各种工具软件(如 QQ ) 协议:数据在线路上传输必须遵守的一定的规则 2 )工作方式组成(边缘部分、核心部分) 边缘部分:所有连接在互联网上,供用户直接使用的主机组成,用来进行通信和资源共享 核心部分:大量的网络和连接这些网络的路由器组成,为边缘部分提供连通性和交换服务 3 )功能组成(通信子网、资源子网) 通信子网:各种传输介质和、通信设备和相应的网络协议组成,为网络提供数据传输、交换和控制能力,实现联网的计算机间的数据通信。 资源子网:主机、终端以及各种软件资源、信息资源组成,负责全网的数据处理业务,面向网络用户提供各种网络资源与服务 注:通信子网包括物理层、数据链路层、网络层 1.1.3. 计算机网络的功能(数据通信、资源共享、分布式处理、信息综合处理、负载均衡、提高可靠性) 数据通信:连接控制、传输控制、差错控制、流量控制、路由选择、多路复用等子功能 资源共享:数据资源、软件资源、硬件资源 分布式处理:将任务传送到网络中的其它计算机进

2018-10-03

计算机网络-第一章-计算机网络体系结构

计算机网络第一章节思维导图..

2018-10-03

计算机网络思维导图-第三章-数据链路层

详细的计算机网络数据链路层的思维导图,花费了两个月时间完成

2018-07-03

计算机网络-第二章-物理层

- 计算机网络第二章,物理层的思维导图, https://blog.csdn.net/qq_33605778/article/details/79899674

2018-04-11

计算机网络-思维导图-第一章

1.1.2.计算机网络的组成 1)物理组成(硬件、软件、协议) 硬件:主机、通信处理机、通信线路、交换设备 软件:实现资源共享的软件、各种工具软件(如QQ) 协议:数据在线路上传输必须遵守的一定的规则 2)工作方式组成(边缘部分、核心部分) 边缘部分:所有连接在互联网上,供用户直接使用的主机组成,用来进行通信和资源共享 核心部分:大量的网络和连接这些网络的路由器组成,为边缘部分提供连通性和交换服务 3)功能组成(通信子网、资源子网) 通信子网:各种传输介质和、通信设备和相应的网络协议组成,为网络提供数据传输、交换和控制能力,实现联网的计算机间的数据通信。 资源子网:主机、终端以及各种软件资源、信息资源组成,负责全网的数据处理业务,面向网络用户提供各种网络资源与服务 注:通信子网包括物理层、数据链路层、网络层

2018-04-08

操作系统-思维导图-第一章.mmap

- 引入计算机系统的目的 1.提供一个计算机用户和与计算机硬件系统之间的接口,使计算机更易于使用 2.有效地控制和管理计算机系统中各种硬件和软件资源,使之得到更有效的利用 3.合理的组织计算系统的工作流程,以改善系统性能 ……

2018-04-08

魔术师发牌算法

解决魔术师发牌的算法

2016-10-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除