当前位置:文档之家› 考研计算机复试面试题总结

考研计算机复试面试题总结

考研计算机复试面试题总结
考研计算机复试面试题总结

概念问题

C++/数据结构

1、简述你对“面向对象”和“面向过程”编程思想的认识与思考用就可以了。

面向过程

就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调

面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。

例如五子棋,面向过程的设计思路就是首先分析问题的步骤:1、开始游戏,2、黑子先走,3、绘制画面,4、判断输赢,5、轮到白子,6、绘制画面,7、判断输赢,8、返回步骤2,9、输出最后结果。把上面每个步骤用分别的函数来实现,问题就解决了。

而面向对象的设计则是从另外的思路来解决问题。整个五子棋可以分为1、黑白双方,这两方的行为是一模一样的,2、棋盘系统,负责绘制画面,3、规则系统,负责判定诸如犯规、输赢等。第一类对象(玩家对象)负责接受用户输入,并告知第二类对象(棋盘对象)棋子

布局的变化,棋盘对象接收到了棋子的i变化就要负责在屏幕上面显示出这种变化,同时利用第三类对象(规则系统)来对棋局进行判定。

可以明显地看出,面向对象是以功能来划分问题,而不是步骤。同样是绘制棋局,这样的行为在面向过程的设计中分散在了总多步骤中,很可能出现不同的绘制版本,因为通常设计人员会考虑到实际情况进行各种各样的简化。而面向对象的设计中,绘图只可能在棋盘对象中出现,从而保证了绘图的统一。

功能上的统一保证了面向对象设计的可扩展性。比如我要加入悔棋的功能,如果要改动面向过程的设计,那么从输入到判断到显示这一连串的步骤都要改动,甚至步骤之间的循序都要进行大规模调整。如果是面向对象的话,只用改动棋盘对象就行了,棋盘系统保存了黑白双方的棋谱,简单回溯就可以了,而显示和规则判断则不用顾及,同时整个对对象功能的调用顺序都没有变化,改动只是局部的。

再比如我要把这个五子棋游戏改为围棋游戏,如果你是面向过程设计,那么五子棋的规则就分布在了你的程序的每一个角落,要改动还不如重写。但是如果你当初就是面向对象的设计,那么你只用改动规则对象就可以了,五子棋和围棋的区别不就是规则吗?(当然棋盘大小好像也不一样,但是你会觉得这是一个难题吗?直接在棋盘对象中进行一番小改动就可以了。)而下棋的大致步骤从面向对象的角度来看没有任何变化。

当然,要达到改动只是局部的需要设计的人有足够的经验,使用对象不能保证你的程序就是面向对象,初学者或者很蹩脚的程序员很可能以面向对象之虚而行面向过程之实,这样设计出来的所谓面向对象的程序很难有良好的可移植性和可扩展性。

2、ADT是什么?简述你对“数据抽象”和“信息隐藏”的认识

抽象数据类型(Abstract Data Type 简称ADT)是指一个数学模型以及定义在此数学模型上的一组操作。抽象数据类型需要通过固有数据类型(高级编程语言中已实现的数据类型)来实现。抽象数据类型是与表示无关的数据类型,是一个数据模型及定义在该模型上的一组运算。对一个抽象数据类型进行定义时,必须给出它的名字及各运算的运算符名,即函数名,并且规定这些函数的参数性质。一旦定义了一个抽象数据类型及具体实现,程序设计中就可以像使用基本数据类型那样,十分方便地使用抽象数据类型。

抽象数据类型通过类(class)实现

程序设计语言对抽象数据类型的支持是指允许用户自定义具有如下特征的数据类型:1. 模块封装:The representation of, and operations on, objects of the type are defined in a single syntactic unit

2. 信息隐蔽:The representation of objects of the type is hidden from the program units that use

these

objects, so the only operations possible are those provided in the type's definition

3、const和static有什么作用?

const是一个C和C++语言的关键字,它限定一个变量不允许被改变,即只读。使用const在一定程度上可以提高程序的安全性和可靠性,也便于实现对此进行优化(如把只读对象放入ROM中)。const作为类型限定符,是类型的一部分。

4、友元关系的利与弊

如果将一个函数或一个类声明为另一个类的友元,那么它就可以直接存取这个类对象中的各种数据,而不必在意这些数据的封装级别,即无论是private的,protected的,还是public 的,有钱同使,有难同当。

5、C++多态的实现

1. 用virtual关键字申明的函数叫做虚函数,虚函数肯定是类的成员函数。

2. 存在虚函数的类都有一个一维的虚函数表叫做虚表。类的对象有一个指向虚表开始的虚指针。虚表是和类对应的,虚表指针是和对象对应的。

3. 多态性是一个接口多种实现,是面向对象的核心。分为类的多态性和函数的多态性。

4. 多态用虚函数来实现,结合动态绑定。

5. 纯虚函数是虚函数再加上= 0。

6. 抽象类是指包括至少一个纯虚函数的类。

构造函数顺序:

基类构造函数派生类构造函数

前面输出的结果是因为编译器在编译的时候,就已经确定了对象调用的函数的地址,要解决这个问题就要使用迟绑定(late binding)技术。当编译器使用迟绑定时,就会在运行时再去确定对象的类型以及正确的调用函数。而要让编译器采用迟绑定,就要在基类中声明函数时使用virtual关键字(注意,这是必须的,很多学员就是因为没有使用虚函数而写出很多错误的例子),这样的函数我们称为虚函数。一旦某个函数在基类中声明为virtual,那么在所有的派生类中该函数都是virtual,而不需要再显式地声明为virtual。

前面输出的结果是因为编译器在编译的时候,就已经确定了对象调用的函数的地址,要解决这个问题就要使用迟绑定(late binding)技术。当编译器使用迟绑定时,就会在运行时再去确定对象的类型以及正确的调用函数。而要让编译器采用迟绑定,就要在基类中声明函数时使用virtual关键字(注意,这是必须的,很多学员就是因为没有使用虚函数而写出很多错误的例子),这样的函数我们称为虚函数。一旦某个函数在基类中声明为virtual,那么在所有的派生类中该函数都是virtual,而不需要再显式地声明为virtual。

编译器在编译的时候,发现基类中有虚函数,此时编译器会为每个包含虚函数的类创建一个虚表(即vtable),该表是一个一维数组,在这个数组中存放每个虚函数的地址。

那么如何定位虚表呢?编译器另外还为每个类的对象提供了一个虚表指针(即vptr),这个指针指向了对象所属类的虚表。在程序运行时,根据对象的类型去初始化vptr

,从而让

vptr正确的指向所属类的虚表,从而在调用虚函数时,就能够找到正确的函数。对于例1-2的程序,由于pAn实际指向的对象类型是fish,因此vptr指向的fish类的vtable,当调用pAn->breathe()时,根据虚表中的函数地址找到的就是fish类的breathe()函数。

那么虚表指针在什么时候,或者说在什么地方初始化呢?

答案是在构造函数中进行虚表的创建和虚表指针的初始化。还记得构造函数的调用顺序吗,在构造子类对象时,要先调用父类的构造函数,此时编译器只“看到了”父类,并不知道后面是否后还有继承者,它初始化父类对象的虚表指针,该虚表指针指向父类的虚表。当执行子类的构造函数时,子类对象的虚表指针被初始化,指向自身的虚表。对于例2-2的程序来说,当fish类的fh对象构造完毕后,其部的虚表指针也就被初始化为指向fish类的虚表。在类型转换后,调用pAn->breathe(),由于pAn实际指向的是fish类的对象,该对象部的虚表指针指向的是fish类的虚表,因此最终调用的是fish类的breathe()函数。

要注意:对于虚函数调用来说,每一个对象部都有一个虚表指针,该虚表指针被初始化为本类的虚表。所以在程序中,不管你的对象类型如何转换,但该对象部的虚表指针是固定的,所以呢,才能实现动态的对象函数调用,这就是C++多态性实现的原理。

6、STL是什么?组成部分和核心作用

标准模板库于1994年2月年正式成为ANSI/ISO C++的一部份,它的出现,促使C++程序员的思维方式更朝向泛型编程(generic program)发展。

7、阐述C++在什么情况下必须进行运算符重载。

8、为什么说“继承是C++面向对象的一个主要特征之一”,请做一下简要说明。

?

9、请说明函数模板(Function Template)和函数模板实例化(function-template specification)的区别和联系。

函数模板实例化

在函数模板为每个类型时首先调用中,编译器创建一个实例化。每个实例化是为该类型的该模板化功能的版本。在中,此函数为类型时,使用此实例化将调用。如果您有几个相同的实例化,即使在不同的模块,因此,只有该实例化的一个副本在可执行文件将结果。

函数参数将所有参数的函数模板允许和参数,对该参数不依赖于模板参数的位置。

函数模板可以通过声明与特定类型的模板显式实例化作为参数。

C++中提供了函数模板,实际上是建立一个通用函数,其函数类型和形参类型不具体指定,用一个虚拟的类型来代表,这个通用函数就成为函数模板。使用模板的好处就是对于那些函数体相同的函数都可以用这个模板来代替,而不必去定义每个具体的函数去实现。下面通过一个简单的具体例子(比较两个数的大小)来说明:

#include

using namespace std;

template //模板声明,T为类型参数

T Max(T a, T b) //定义一个通用函数,用T作虚拟的类型名

{

if (a>b)

{

return a;

}

else

return b;

}

模板实例化(template instantiation )是指在编译或时生成函数模板或类模板的具体实例源代码。ISO C++定义了两种模板实例化方法:隐式实例化(当使用实例化的模板时自动地在当前代码单元之前插入模板的实例化代码)、显式实例化(直接声明模板实例化)。

10、编译和的过程

源文件的编译过程包含两个主要阶段,而它们之间的转换是自动的。第一个阶段是预处理阶段,在正式的编译阶段之前进行。预处理阶段将根据已放置在文件中的预处理指令来修改源文件的容。#include指令就是一个预处理指令,它把头文件的容添加到.cpp文件中还有其他许多预处理指令

这个在编译之前修改源文件的方式提供了很大的灵活性,以适应不同的计算机和操作系统环

境的限制。一个环境需要的代码跟另一个环境所需的代码可能有所不同,因为可用的硬件或操作系统是不同的。在许多情况下,可以把用于不同环境的代码放在同一个文件中,再在预处理阶段修改代码,使之适应当前的环境。

预处理器显示为一个独立的操作,但一般不能独立于编译器来执行这个操作。调用编译器会自动执行预处理过程,之后才编译代码。

编译器为给定源文件输出的是机器码,执行这个过程需要较长时间。在对象文件之间并没有建立任何连接。对应于某个源文件的对象文件包含在其他源文件中定义的函数引用或其他指定项的引用,而这些函数或项仍没有被解析。同样,也没有建立同库函数的。实际上,这些函数的代码并不是文件的一部分。这些工作是由程序(有时称为编辑器)完成的

程序把所有对象文件中的机器码组合在一起,并解析它们之间的交叉引用。它还集成了对象模块所使用的库函数的代码。这是程序的一种简化表示,因为这里假定在可执行模块中,模块之间的所有都是静态建立的。实际上有些是动态的,即这些是在程序执行时建立的。

程序静态地建立函数之间的,即在程序执行之前建立组成程序的源文件中所包含的函数。动态建立的函数之间的(在程序执行过程中建立的)将函数编译并起来,创建另一种可执行模块—— 动态库或共享库。动态库中的函数是在程序调用函数时才建立的,在程序调用之前,该是不存在的。

动态库有几个重要的优点。一个主要的优点是动态库中的函数可以在几个并行执行的程序之间共享,这将节省相同函数占用的存空间。另一个优点是动态库在调用其中的函数之前是不会加载到存中的。也就是说,如果不使用给定动态库中的函数,该动态库就不会占用存空间

11、解释“优先级队列”这一抽象数据类型及实现方法

如果我们给每个元素都分配一个数字来标记其优先级,不妨设较小的数字具有较高的优先级,这样我们就可以在一个集合中访问优先级最高的元素并对其进行查找和删除操作了。这样,我们就引入了优先级队列这种数据结构。

缺省情况下,优先级队列利用一个最大堆完成函数列表:

empty() 如果优先队列为空,则返回真

pop() 删除第一个元素

push() 加入一个元素

size() 返回优先队列中拥有的元素的个数

top() 返回优先队列中有最高优先级的元素

用途就不用多说了吧,例如Huffman编码、分支限界、A*启发式都需要用到优先队列存放信

息。

12、逆波兰式用什么数据结构算法的效率比较高,为什么

13、C和C++,C++和Java的区别

C是一个结构化语言,如谭老爷子所说:它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制),而对于C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。

所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为面向对

14、什么是预处理

程序设计中的预处理(Preprocess),程序设计领域,预处理是在程序源代码被编译之前,由预处理器(Preprocessor)对程序源代码进行的处理。这个过程并不对程序的源代码进行解析,但它把源代码分割或处理成为特定的符号用来支持宏调用。

预处理器的主要作用就是把通过预处理的建功能对一个资源进行等价替换,最常见的预处理有:文件包含,条件编译、布局控制和宏替换4种。

15、堆和栈的区别

栈区(stack)— 由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。

堆栈(英文:stack),也可直接称栈。作堆叠,在计算机科学中,是一种特殊的串行形式的数据结构,它的特殊之处在于只能允许在链结串行或阵列的一端(称为堆栈顶端指标,英文为top)进行加入资料(push)和输出资料(pop)的运算。另外堆栈也可以用一维阵列或连结串行的形式来完成。堆栈的另外一个相对的操作方式称为伫列。

由于堆栈数据结构只允许在一端进行操作,因而按照后进先出(LIFO, Last In First Out)的原理运作。

堆栈数据结构使用两种基本操作:推入(push)和弹出(pop):

17、简述在面向对象程序设计中,引入继承和封装的主要作用继承:代码重用封装:代码安全

18、简述C语言中指针及其作用

19、Java语言的多线程机制

20、简述四种常见的数据逻辑结构

①集合集合中任何两个数据元素之间都没有逻辑关系,组织形式松散。

④图状结构图状结构中的结点按逻辑关系互相缠绕,任何两个结点都可以邻接

21、简述在一棵二叉排序树中查找一特定元素x的算法过程

二叉排序树(Binary Sort Tree)又称二叉查找树。它或者是一棵空树;

或者是具有下列性质的二叉树:

(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;

(2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值;

(3)左、右子树也分别为二叉排序树;

在最坏的情况是,两子数列拥有大各为1 和n-1,且调用树(call tree)变成为一个n 个嵌套(nested)调用的线性连串(chain)。第i 次调用作了O(n-i)的工作量,且递归关系式为:这与插入排序和选择排序有相同的关系式,以及它被解为T(n) = O(n2)。

它的最坏情况是很恐怖的,需要

空间,远比数列本身还多。

23、简述在一带权有向图中寻找关键路径的基本思想

关键路径:关键路径是指网络终端元素的元素的序列,该序列具有最长的总工期并决定了整个项目的最短完成时间。在AOE网中,从始点到终点具有最大路径长度(该路径上的各个活动所持续的时间之和)的路径为关键路径关键活动:关键路径上的活动称为关键活动。

只有所有关键活动提前完成,整个工程才能提前完成。

最早可能开始时间Ve[i]:从原点到顶点Vi最长路径的长度(之前所有事情做完了才可能开始);最迟允许开始时间Vl[i]:保证汇点Vn-1在Ve[n-1]时刻完成的前提下(整体工期不拖),事件Vi最迟允许的开始时间。Vl[i]=min{Vl[k]-dur()}

关键活动:松弛时间(slack time)Al[j]-Ae[k]==0的节点。

24、类作用域和文件作用域的区别是什么

文件作用域也称“全局作用域”。

定义在所有函数之外的标识符,具有文件作用域,作用域为从定义处到整个源文件结束。文件中定义的全局变量和函数都具有文件作用域。如果某个文件中说明了具有文件作用域的标识符,该文件又被另一个文件包含,则该标识符的作用域延伸到新的文件中。如cin和cout是在头文件iostream.h中说明的具有文件作用域的标识符,它们的作用域也延伸到嵌入iostream.h的文件中。

操作系统1. 进程和线程的区别及联系,操作系统的程序栈…

线程和进程的区别:

1、线程是进程的一部分,所以线程有的时候被称为是轻权进程或者轻量级进程。

2、一个没有线程的进程是可以被看作单线程的,如果一个进程拥有多个进程,进程的执行过程不是一条线(线程)的,而是多条线(线程)共同完成的。

3、系统在运行的时候会为每个进程分配不同的存区域,但是不会为线程分配存(线程所使用的资源是它所属的进程的资源),线程组只能共享资源。那就是说,出了CPU之外(线程在运行的时候要占用CPU资源),计算机部的软硬件资源的分配与线程无关,线程只能共享它所属进程的资源。

4、与进程的控制表PCB相似,线程也有自己的控制表TCB,但是TCB中所保存的线程状态比PCB表中少多了(上下文保存一下就行)。

5、进程是系统所有资源分配时候的一个基本单位,拥有一个完整的虚拟空间地址,并不依赖线程而独立存在。

进程与程序的区别:

程序是一组指令的集合,它是静态的实体,没有执行的含义。而进程是一个动态的实体,有自己的生命周期。一般说来,一个进程肯定与一个程序相对应,并且只有一个,但是一个程序可以有多个进程,或者一个进程都没有也可以只有一个进程。除此之外,进程还有并发性和交往性。简单地说,进程是程序的一部分,程序运行的时候会产生进程。总结:线程是进程的一部分,进程是程序的一部分。

前一句说的不太准确,线程也有自己的资源,比如栈,私有数据等等。说他使用而不拥有资源指的是使用的是进程的打开文件句柄,进程的全局数据,进程的地址空间等等,这些都属于进程,而不属于线程,进程个线程共享。

进程切换比线程切换开销大是因为进程切换时要切页表,而且往往伴随着页调度,因为进程的数据段代码段要换出去,以便把将要执行的进程的容换进来。本来进程的容就是线程的超集。而且线程只需要保存线程的上下文(相关寄存器状态和栈的信息)就好了,动作很小。

2. OS里面进程的“三态”“五态”“七态”是什么

3. 什么是操作系统

4. 死锁的条件,检测死锁的可能方法及其基本思想

A deadlock is a situation in which two or more competing actions are each waiting for the other to finish, and thus neither ever does.

1. (互斥): At least two resources must be non-shareable.[1] Only one process can use the resource at any given instant of time.

2. Hold and Wait or Resource Holding: A process is currently holding at least one resource and requesting

additional resources which are being held by other processes.

3. No (禁止抢占): The operating system must not de-allocate resources once they have been

allocated; they must be released by the holding process voluntarily.

4. A process must be waiting for a resource which is being held by another process,

which in turn is waiting for the first process to release the resource. In general, there is a of waiting

processes, P = {P1, P2, ..., PN}, such that P1 is waiting for a resource held by P2, P2 is waiting for a resource held by P3 and so on until PN is waiting for a resource held by P1.[1][7]

These four conditions are known as the Coffman conditions from their first description in a 1971 article

by [7] Unfulfillment of any of these conditions is enough to preclude a deadlock from occurring. Ensure that the system will never enter a deadlock state.

Prevention: Ensure one of the four conditions fails.

Avoidance: The OS needs more information so that it can determine if the current request can be satisfied or

delayed.

死锁检测:

1. Resource-Allocation Graph

2. Detection Algorithm

5. 用户态和核态

当程序运行在3级特权级上时,就可以称之为运行在用户态,因为这是最低特权级,是普通

的用户进程运行的特权级,大部分用户直接面对的程序都是运行在用户态;反之,当程序运行在级特权级上时,就可以称之为运行在核态。用户态切换到核态的3种方式

a. 系统调用

这是用户态进程主动要求切换到核态的一种方式,用户态进程通过系统调用申请使用操作系统提供的服务程序完成工作,比如前例中fork()实际上就是执行了一个创建新进程的系统调用。而系统调用的机制其核心还是使用了操作系统为用户特别开放的一个中断来实现,例如Linux的int 80h中断。

b. 异常

当CPU在执行运行在用户态下的程序时,发生了某些事先不可知的异常,这时会触发由当前运行进程切换到处理此异常的核相关程序中,也就转到了核态,比如缺页异常。

c. 外围设备的中断

当外围设备完成用户请求的操作后,会向CPU发出相应的中断信号,这时CPU会暂停执行下一条即将要执行的指令转而去执行与中断信号对应的处理程序,如果先前执行的指令是用户态下的程序,那么这个转换的过程自然也就发生了由用户态到核态的切换。比如硬盘读写操作完成,系统会切换到硬盘读写的中断处理程序中执行后续操作等。

这3种方式是系统在运行时由用户态转到核态的最主要方式,其中系统调用可以认为是用户进程主动发起的,异常和外围设备中断则是被动的。

6. 面包店算法

该算法的基本思想源于顾客在面包店中购买面包时的排队原理. 顾客在进入面包店前, 首先抓一个号, 然后按照由小到大的次序依次进入面包店购买面包. 这里, 面包店发放的是由小到大的, 但是两个或两个以上的顾客却有可能得到相同的(使所抓不同需要互斥), 如果多个顾客抓到相同的, 则规定按照顾客名字的字典次序进行排序, 这里假定顾客是没有重名的. 在计算机系统中, 顾客就相当于进程, 每个进程有一个唯一的标识, 我们用P的下面加一个下标来表示. 例如: 对于Pi和Pj, 如果有i

7. 系统调用和库函数的区别

(1)调用形式不同。过程(函数)使用一般调用指令,其转向地址是固定不变的,包含在跳转语句中;但系统调用中不包含处理程序入口,而仅仅提供功能号,按功能号调用。

(2)被调用代码的位置不同。过程(函数)调用是一种静态调用,调用者和被调用代码在同一程序,经过连接编辑后作为目标代码的一部份。当过程(函数)升级或修改时,必须重新编译连结。而系统调用是一种动态调用,系统调用的处理代码在调用程序之外(在操作系统中),这样一来,系统调用处理代码升级或修改时,与调用程序无关。而且,调用程序的长度也大大缩短,减少了调用程序占用的存储空间。

(3)提供方式不同。过程(函数)往往由编译系统提供,不同编译系统提供的过程(函数)可以不同;系统调用由操作系统提供,

一旦操作系统设计好,系统调用的功能、种类与数量便固定不变了。

(4)调用的实现不同。程序使用一般机器指令(跳转指令)来调用过程(函数),是在用户态运行的;程序执行系统调用,是通过中断机构来实现,需要从用户态转变到核心态,在管理状态执行,因此,安全性好。

8. 经典进程同步问题是什么,同步思想?

生产者-消费者问题是著名的进程同步问题,它描述一组生产者进程向一组消费者进程提供消息。它们共享一个有界缓冲池,生产者向其中投放消息,消费者从中取得消息。生产者-消费者问题是许多相互合作进程的一种抽象。假定缓冲池中有n个缓冲区,每个缓冲区存放一个消息。由于缓冲池是临界资源,它只允许一个生产者投入消息,或者一个消费者从中取出消息。生产者之间、生产者与消费者之间、消费者之间都必须互斥地使用缓冲池。所以必须设置互斥信号量mutex,它代表缓冲池资源,它的数值为1。读者-写者问题

问题描述:一个数据集(如文件)被几个并行进程所共享,有些进程只要求读数据集容,称为读者,而另一些进程则要求修改数据集容,称为写者,几个读者可以同时读数据集,而不需要互斥,但一个写者不能和其他进程(不管是写者或读者)同时访问这些数据集,它们之间必须互斥。

哲学家进餐问题

该问题描述如下:有五个哲学家,他们的生活方式是交替地进行思考和进餐。哲学家们公用一圆桌,周围放有五把椅子,每人坐一把。在圆桌上有五个碗和五根筷子,当一个哲学家思考时,他不与其他人交谈,饥饿时便试图取用其左、右最靠近他的筷子,但他可能一根都拿不到。只有在他拿到两根筷子时,方能进餐,进餐完后,放下筷子又继续思考。

9. 文件管理及组织,FAT

FAT = File Allocation Table

10. 设备驱动程序是否属于OS,他的作用是什么

不是,驱动程序是另外安装的软件,是操作系统控制并且和硬件之间通讯的桥梁(程序)

11. 程序和任务的区别

任务是最抽象的,是一个一般性的术语,指由软件完成的一个活动。一个任务既可以是一个进程,也可以是一个线程。简而言之,它指的是一系列共同达到某一目的的操作。例如,读取数据并将数据放入存中。这个任务可以作为一个进程来实现,也可以作为一个线程(或作为一个中断任务)来实现。进程常常被定义为程序的执行。可以把一个进程看成是一个独立

的程序,在存中有其完备的数据空间和代码空间。一个进程所拥有的数据和变量只属于它自己。线程则是某一进程中一路单独运行的程序。也就是说,线程存在于进程之中。一个进程由一个或多个线程构成,各线程共享相同的代码和全局数据,但各有其自己的堆栈。由于堆栈是每个线程一个,所以局部变量对每一线程来说是私有的。由于所有线程共享同样的代码和全局数据,它们比进程更紧密,比单独的进程间更趋向于相互作用,线程间的相互作用更容易些,因为它们本身就有某些供通信用的共享存:进程的全局数据进程的全局数据进程的全局数据进程的全局数据

进程:资源分配、调度运行的基本单位。

线程:进程中执行运算的最小单位,执行处理机调度的基本单位。

12. 数据库安全性和操作系统安全性的关系

安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题.只是在数据库系统量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出.系统安全保护措施是否有效是数据库系统的主要指标之一.数据库的安全性和计算机系统的安全性,包括操作系统,网络系统的安全性是紧密联系,相互支持的.

13. 中断处理的过程

请求中断→响应中断→关闭中断→保留断点→中断源识别→保护现场→中断服务子程序→恢复现场→中断返回在实际运行中,一旦设备通过某引脚N向8259A发出中断指令,后者便向8086A的INTR引脚发送中断信号。8086A通过INTA引脚通知8259A中断有效(这个过程实际上还包括对此8259A的选址),后者即通过地址总线将对应引脚N的中断类型码(已预先存好,见上节)发送给CPU。CPU得到中断类型码后,先进行现场保护,主要包括:

1. 状态寄存器FLAGS压栈(同时堆栈寄存器SP-2);

2. 关闭中断(将FLAGS寄存器的IF位置零);

3. 将当前代码段寄存器CS和程序计数器IP压栈(同时堆栈寄存器SP-4)。现场保护完成后,CPU开始按照前述的两步骤翻译中断程序入口地址。在得到中断处理程序地址之后但调用中断处理程序之前,CPU会再检查一下NMI引脚是否有信号,以防在刚才的处理过程中忽略了可能的NMI中断。NMI的优先级始终高于INTR。

中断处理程序虽然是由程序员编写,但须循一定规。作为例程,中断处理程序应该先将各寄存器信息(除了IP和CS,此二寄存器现已指向当前中断程序)压入堆栈予以保存,这样才能在中断处理程序部使用这些寄存器。在程序结束时,应该按与压栈保护时相反的顺序弹出各寄存器的值。中断程序的最后一句始终是IRET指令,这条指令将栈顶6个字节分别弹出并存入IP、CS和FLAGS寄存器,完成了现场的还原。

当然,如果是操作系统的中断处理程序,则未必——通常不会——还原中断前的状态。这样

的中断处理程序通常会在调用完寄存器保存例程后,调用进程调度程序(多由高级语言编写),并决定下一个运行的进程。随后将此进程的寄存器信息(上次中断时保存下来的)存入寄存器并返回。在中断程序结束之后,主程序也发生了改变。

14. 计算机系统怎样实现存储保护

1. 防止地址越界(对进程所产生的地址必须加以检查,发生越界时产生中断,由操作系统进行相应处理)

2. 防止操作越权(对属于自己区域的信息,可读可写:对公共区域中允许共享的信息或获得授权可使用的信息,可读而不可修改;对未授权使用的信息,不可读,不可写)

15. 调度的基本准则(Scheduling Criteria)

There are many criteria for comparing different scheduling algorithms. Here are five common ones: CPU utilization(CPU利用率)

Throughput(吞吐量)

Turnaround time(周转时间)

Waiting time(等待时间)

Response time(响应时间)

16. 多线程是否真正能提高效率

17. 磁盘调度算法有哪几种

FCFS

SSTF (Shortest Seek Time First)

Scan/Look

C-Sacn/C-Look

18. RAID工作原理

RAID(Redundant Array of Independent Disks)通过条带化存储和奇偶校验两个措施来实现其冗余和容错的目标。条带化存储意味着可以一次写入一个数据块的方式将文件写入多个磁盘。条带化存储技术将数据分开写入多个驱动器,从而提高数据传输速率并缩短磁盘处理总时间。这种系统非常适用于交易处理、但可靠性却很差,因为系统的可靠性等于最差的单个驱动器的可靠性。

奇偶校验通过在传输后对所有数据进行冗余校验可以确保数据的有效性。利用奇偶校验,当

RAID系统的一个磁盘发生故障时,其它磁盘能够重建该故障磁盘。在这两种情况中,这些功能对于操作系统都是透明的。由磁盘阵列控制器(DAC)进行条带化存储和奇偶校验控制。

19. Windows中段最长多少字节

?

20. 同步、互斥

22. 简述请求段页式虚拟存管理基本思想

Bring a page into memory only when it is needed.

Less I/O needed

Less memory needed

Faster response

More users

Page is needed reference to it

invalid reference abort

not-in-memory bring to memory

网络

1. 路由协议

常见路由协议有:RIP,OSPF,BGP等

计算机面试问题

计算机面试问题 死锁问题,银行家算法, 产生原因:竞争资源,进程间的推进顺序非法必要条件:互斥,请求和保持,不剥夺,环路等待(预防死锁即是是后面三个条件之一不能成立) 处理方法:预防死锁,避免死锁,检测死锁,解除死锁(剥夺资源或者撤销进程) 银行家算法:最具代表性的避免死锁的算法,由牛人Dijkstra 提出,鉴于学过操作系统的都该懂,此处不再详述。 网络操作系统与分布式操作系统的区别, 网络操作系统是使联网的计算机能方便而有效的共享网络资源,为网络用户提供所需各种服务的软件和协议的集合。其功能主要包括高效,可靠的网络通信;对网络中的共享资源进行有效管理;提供电子邮件,文件传输,共享硬盘,打印机等服务;网络安全管理;提供互操作能力。分布式操作系统是由多个分散的计算机经网络连接而成的计算机系统,系统中的计算机无主次之分,任意两台计算机可以通过通信交换信息。为分布式计算机配置的操作系统就是“分布式操作系统”(注意:分布式操作系统是网络操作系统的更高级形式,它保持了网络系统所拥有的全部功能,同时又具有透明性,可靠性,高性能等)。它能直接对系统中的各类资源进行动态的分配和调度,任务划分,信息 1 传输协调工作,并为用户提供一个统一的界面和标准的接口,用户通过这一界面实现所需要的从操作以及使用系统资源,使系统中的若干台计算机相互协作以完成共同的任务,有效控制和协调诸任务的并行执行,并向系统提供统一的,有效的接口软件集合。网络操作系统和分布式操作系统 1 虽然都属于管理分布在不同地理位置上的操作系统,但最大的差别是:网络操作系统工作时必须确认网址,而分布式操作系统则不必知道计算机的确切地址;分

考研复试中的面试要求及英语经典提问总结

一、复试中的口试要求 1、评价标准: (1)语言准确性(语法和用词的准确性、语法结构的复杂性、词汇的丰富程度、发音的准确性) (2)话语的长短和连贯性(内容的连贯性、寻找合适词语而造成的停顿频率及长短、表达思想的语言长短等) (3)语言的灵活性和适合性(语言表达是否灵活、自然,话语是否得体,语言能否与语境、动能和目的相适应) 2、口语测试一般包含如下两部分: 第一部分:考查学生理解并回答有关日常生活、家庭、工作、学习等问题的能力(3--5分钟) 第二部分:考查学生连续表达的能力。考生从所给的问题中选择一个话题,就此话题表达自己的看法(7--10分钟)。 3、评价成绩一般为: a优秀--能用外语就指定的话题进行口头交流,基本没有困难 b良好--能用外语就指定的题材进行口头交流,虽有些困难,但不影响交流 c及格--能用外语就指定的话题进行简单的口头交流 d不及格--不具有口头表达能力 二、考研英语复试口语常见问题30例 1. Where do you come from? 2. What kind of landscape surrounds your hometown? 3. What do you do during the Spring Festival? 4. Tell me something about the customs of your hometown. 5. Could you tell me something about your family? 6. What social responsibilities should a post-graduate take? 7. Which kind of professor do you like best? 8. What does friendship mean to you and what kind of people do you make friend with?

计算机复试面试题目大全

1. 什么是程序局部性,为什么会有程序的空间局部性? 程序局部性是指程序在运行时呈现出局部性规律,在一段时间间隔内,程序的执行是局限在某个部份,所访问的存储空间也只局限在某个区域。 空间局部性是指若一个存储单元被访问,那么它附近的单元也可能被访问,这是由于程序的顺序执行引起的。 2. 比较TCP与UDP TCP与UDP都是传输层的协议,且都用端口号标识数据所达的进程。 TCP提供的是面向连接服务,提供可靠交付。且具有流量控制和拥塞控制。可用于可靠要求高的场合如:SMTP,FTP,HTTP等 UDP提供的是无连接服务,提供不可靠交付,且无确认机制。主要用于即时强的场合如:视频聊天,语音电话等。 3. 网络协议的三个核心要素,及概念 .各起什么作用? 语法,定义了数据与控制信息的格式; 语义,定义了需要发出何种控制信息,完成何种响应动作以及作出何种响应; 同步,定义了事件实现顺序的详细说明; 4. 关系数据库都有那些操作,特点是什么? ◇查询:选择、投影、连接、除、并、交、差 ◇数据更新:插入、删除、修改 关系操作的特点:集合操作方式,即操作的对象和结果都是集合。 5. 解释一下网络体系结构,它得实现和理论有什么区别? 是指通信系统的整体设计,它为网络硬件、软件、协议、存取控制和拓扑提供标准。 网络体系统结构采用分层结构,各层之间相互独立、较易维护、灵活性好。 国际标准化组织制定了OSI/RM标准,该标准采用了七层结构应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。七层协议体系结构既复杂又不实用,但其概念清楚,体系结构理论较完整。而TCP/IP却成为了事实上的标准,它采用了四层结构即应用层、传输层、网络层和网络接口层。 6. 为了实现重定位需要哪些硬件? 最简单的方式是在系统中增设一个重定位寄存器,用来存放正在执行作业的内存地址,每次访问数据时,由硬件自动将相对地址与重定位寄存器中的起始地址相加,形成实际的特理地址。当然在分页式与分段式系统中,具地址变换机构,以及快表等硬件。 7. 数据库保护(访问)的内容有哪些? 利用权限机制,利用完整性约束防止法数据进入数据库,提供故障恢复能力,提供并发访问控制 8. 在交互式系统中,非剥夺是不是一个好的策略?为什么? 非剥夺方式:分派程序一旦把处理机分配给某进程后便让它一直运行下去,直到进程完成或发生某事件而阻塞时,才把处理机分配给另一个进程。 剥夺方式:当一个进程正在运行时,系统可以基于某种原则,剥夺已分配给它的处理机,将之分配给其它进程。剥夺原则有:优先权原则、短进程、优先原则、时间片原则。 在分时系统中不剥夺并不是一个好的策略。因为,在分时系统中,除了交互性以外,及时性是很重要的性能因素。当一个作业被阻塞后,CPU就完全空闲了,别的用户的及时性就无法保证了,而完全可以把这些时间分配给别的作业运行。以提高整体的吞吐量。 9. DBA的职责是什么? DBA则是这个机构的一个(组)人员,负责全面管理和控制数据库系统.职责有: (1)决定数据库中的信息内容和结构:数据库中要存放哪些信息

研究生第一学期个人总结

2014年9月,我迈入了人生中的一个崭新的阶段,开始在人生之书中写下属于自己的研究生的篇章。弹指间,八个月已然悄悄逝去,紧接着就即将迎来实习、毕业论文等毕业准备工作,因此有必要在现阶段对之前的学习生活进行总结,发现自己的不足之处,既是对自己的鞭策,也有助于对未来进行初步的规划。 一、思想方面 在思想方面,我一直对自己有较高的要求。大学时期我已递交入党申请书并成为入党积极分子,始终高标准要求自己。我注意学习先进的政治理论,关心国内国际大事,积极拥护党和国家的各项路线、方针、政策,自觉遵守法律、法规和学校的各项规章制度切实地提高了自己的思想认识,同时注重加强对外界时政的了解,通过学习,提高了自己的政治敏锐性和鉴别能力。 二、学习方面 经过慎重的斟酌,在第一学期初我选择了自己兴趣较为浓厚的财务管理方向为自己的学习研究方向,在此基础上我努力学习专业课程,并阅读了大量与本专业相关的书籍和论文,这既让我开阔了视野,也使我对自己研究方向的内容以及整个学科的结构有了进一步的认识。总体上,会计专业硕士研究生的课程学习并不是很重,但是老师的宽松对我来说就像是无形的压力,让我认识到自己还存在着太多太多知识上的盲区,有好多东西需要学习,同时身边每一位同学的优秀都使我不敢放松自己的学习,希望在有限的学生生涯中更多地学到更多东西。 除此之外,上研究生一来在学习方面我最大的感触就是学知识不再像大学里那样只明白是什么,怎样做就可以了,对于一个研究生来说这些都是远远不够的,我们要学会自己去思考为什么,学会分析,思维不能在局限于微观,而应该学会发散,从大局、整体、多角度思考问题。 三、社会实践及工作 我们终将都要走出校门,步入社会,而更早的接触工作,接触社会,不仅能够将自己所学的知识学以致用,并且能够帮助自己更好地认识现实的需要,认识自身的缺陷从而有机会弥补改正,而由于各种原因,在寒假期间我并未参加相关实习工作,这是使我感到十分遗憾的一件事。 四、未来规划 关于近期的未来规划,主要有一下几点: 首先,在毕业前争取成为预备党员,实现思想先入党,为建设中国特色社会主义社会贡献自己的力量; 其次,在学习方面,不仅要扩宽自己的知识面,也要学会在某一领域进行深入学习,多看中外文献,提升自身专业素养。同时,也要积极准备注册会计师考试,争取在毕业前可以通过两科; 最后,要踊跃参加学校举办的各种实践活动,提升自己的综合能力。 研究生的时光对我们来说只有一次.因此,我希望我的研究生生活应当这样度过:当我在毕业回首往事时,不因虚度年华而悔人最宝贵的恨,也不因碌碌无为而羞愧!

计算机基础知识面试题库

对于项目 1. 明确你的项目到底是做什么的,有哪些功能 2. 明确你的项目的整体架构,在面试的时候能够清楚地画给面试官看并且清楚地指出从哪里调用到哪里、使用什么方式调用 3. 明确你的模块在整个项目中所处的位置及作用 4. 明确你的模块用到了哪些技术,更好一些的可以再了解一下整个项目用到了哪些技术 操作系统 1.操作系统的四大特性: a)并发性 b)共享性 c)虚拟性 d)不确定性 2.请叙述一下并发和并行两个概念的区别? a)并行是指两个或多个事件在同一时刻发生,并发是指两个或多个事件在同一时间 间隔内发生。 3.什么是进程?什么是线程? a)“进程是一个可并发执行的,具有独立功能的程序关于某个数据集合的一次执行过 程,也是操作系统进行资源分配和调度的独立单位”。进程是资源分配的基本单 位。 b)线程也称为轻量级进程(LWP),是程序执行流量的最小单位,它是进程的一个实 体,是系统独立调度和分派处理机的基本单位。线程是操作系统调度的最小单 位。 4.进程和线程的区别?从调度、并发性、拥有资源和系统开销四个方面来比较: a)调度。在引入线程的操作系统中,把线程作为调度和分派CPU的基本单位,把进 程作为资源分配的基本单位,显著提高了并发程度。由于系统调度的基本单位是 线程,所以每个进程至少创建一个线程,否则无法被调度。 b)并发性。多线程可以提高服务的质量,在一个线程阻塞时,还有其他线程提供服 务。

c)拥有资源。进程是拥有资源的独立单位,线程自己不拥有系统资源,而是共享进 程的资源(包括代码段、数据段即系统资源等)。 d)系统开销。进程切换的开销远远大于线程切换的开销,进程的切换需要保存很多 现场,但线程只需要保存和设置少量的寄存器内容,不涉及存储器管理方面的操 作。 5.进程的特征: a)动态性:进程是动态产生和动态消亡的,有其生存周期。 b)并发性:一个进程可以与其他进程一起向前推进。 c)独立性:一个进程是一个相对完整的调度单位。 d)异步性:每个进程都已相对独立、不可预知的速度向前推进。 e)结构性:为了控制和管理进程,系统为每个进程设立一个进程控制块(PCB)。 6.进程有几种状态? a)就绪状态 b)运行状态:单CPU环境下,系统处于运行状态的进程最多只有一个。 c)阻塞状态 7.进程的组成: a)程序: b)数据集合:进程独有 c)进程控制块(PCB):它和进程一一对应,PCB是操作系统能感知进程存在的唯一标 识,操作系统正是通过管理PCB来管理进程的。系统创建进程时,为每个进程分 配PCB,进程执行完成后,系统释放PCB,进程也随之消亡。 8.进程的切换: a)进程上下文包含用户级上下文、系统级上下文、寄存器上下文 b)进程上下文切换是核心态的切换,不发生在用户态。 c)用户态到核心态之间的转变是CPU模式的改变。模式切换不同于进程切换,并不 引起进程状态的改变。 9.为什么会提出线程这个概念?进程的缺点是什么? a)进程切换开销大 b)进程通信代价大 c)进程之间并发性粒度粗,并发度不高

考研复试英语问题汇总

考研复试英语问题汇总(应试方法+自我介绍模板+面试官常问问题)(精品) 一. 了解报考院校专业往年的英语口试形式 各院校各专业的复试口试形式各不相同,一定要对症下药。可以通过询问以前考过的师兄、师姐们来了解复试口试的形式,可能的话,了解一下口试中常出现的问题。 总的来说,复试口试有这样几种类型:自我介绍;读某篇英文文章,然后进行翻译或回答相关问题;抽到某个话题进行演讲、阐述;两三人就同一个话题进行讨论、辩论(多人一起复试的情况);自由问答(可能是专业或与专业相关的时事热点问题,也可能只是了解个人情况)。 二. 了解导师/考官 首先必须了解导师在该专业的研究方向,可能的话,看看他们写的书,因为在专业问题上,导师一般都会往自己研究方向上靠拢;其次,了解导师在口试中常问的一些问题及习惯(这个又得求助于师兄师姐们了);最后,可以给导师打电话,让他/她知道你是谁,有你这么一个考生参加复试。 三. 对以下几个方面要多加注意,适当练习几遍 1、见面问候语:Good morning / afternoon, dear professors. I am XXX. (Nice to meet you。)。告别用语:Thanks for your time. / Thank you for giving such a chance. I hope to see you again and soon。 2、自我介绍篇(重点)。基本上每个院校每个专业的口试中都会涉及这一方面。考官其实是要借此了解你的口头表达能力以及你的报名表之外的一些信息。自我介绍时间以2-3分钟为宜。思路要清楚,要突出重点,口语尽量流利(不要太流利了,有背诵之嫌)。 1) 考官要求你作自我介绍时,不要用…let me introd uce myself briefly / please allow me to introduce myself to you等句子,重复、啰嗦。开头可以只用一句话引入:Dear professors, I feel so glad to meet all of you here.然后就可以进入主题,介绍姓名、年龄等等。 2) 自我介绍的主体内容 ① 姓名。介绍自己姓名时,发音一定要准(南方考生要多加注意)。 ② 年龄。年龄可以跟在姓名后带过(I am XXX, 25 years old)。 ③ 原来的院校、专业。注意:一定要把原来学校的英文名称、专业的英文名称弄清楚(尤其是跨校、跨专业的学生)。 所属的公司、职位。注意:在职考生则应将自己公司、自己职位/职称的英文名称弄明白。 ④ 性格、能力。可以着重强调你的个性对你报考的专业有何积极的作用。如果报考的是学术性的专业,可以说自己细心(carefully,detail-oriented)、条理分明(logical)、踏实(steady)等;如果是研究性、应用性更强一点的专业,可以说自己负责(responsible)、可靠(dependable)、有效率(efficient)等。 其他的一些表示性格、能力的形容词有:active, aggressive(有进取心的), adaptable, amicable(友好的), analytical(善于分析的), cooperative, creative, disciplined, dutiful, energetic, faithful, gentle, independent(有主见的), innovative, motivated, modest, objective, precise, punctual, precise(一丝不苟的), temperate等等。

计算机专业复试面试题集

计算机专业复试集锦 1.什么是程序局部性,为什么会有程序的空间局部性? 程序局部性是指程序在运行时呈现出局部性规律,在一段时间间隔,程序的执行是局限在某个部份,所访问的存储空间也只局限在某个区域。空间局部性是指若一个存储单元被访问,那么它附近的单元也可能被访问,这是由于程序的顺序执行引起的。 2.比较TCP与UDP TCP与UDP都是传输层的协议,且都用端口号标识数据所达的进程。TCP 提供的是面向连接服务,提供可靠交付。且具有流量控制和拥塞控制。可用于可靠要求高的场合如:SMTP,FTP,HTTP等。 UDP提供的是无连接服务,提供不可靠交付,且无确认机制。主要用于即时强的场合如:视频聊天,语音等。 3.网络协议的三个核心要素,及概念.各起什么作用? 语法,定义了数据与控制信息的格式; 语义,定义了需要发出何种控制信息,完成何种响应动作以及作出何种响应; 同步,定义了事件实现顺序的详细说明; 4.关系数据库都有那些操作,特点是什么? ◇查询:选择、投影、连接、除、并、交、差 ◇数据更新:插入、删除、修改

关系操作的特点:集合操作方式,即操作的对象和结果都是集合。 5. 解释一下网络体系结构,它得实现和理论有什么区别? 是指通信系统的整体设计,它为网络硬件、软件、协议、存取控制和拓扑提供标准。网络体系统结构采用分层结构,各层之间相互独立、较易维护、灵活性好。国际标准化组织制定了OSI/RM标准,该标准采用了七层结构应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。七层协议体系结构既复杂又不实用,但其概念清楚,体系结构理论较完整。而TCP/IP却成为了事实上的标准,它采用了四层结构即应用层、传输层、网络层和网络接口层。 6.为了实现重定位需要哪些硬件? 最简单的方式是在系统中增设一个重定位寄存器,用来存放正在执行作业的存地址,每次访问数据时,由硬件自动将相对地址与重定位寄存器中的起始地址相加,形成实际的特理地址。当然在分页式与分段式系统中,具地址变换机构,以及快表等硬件。 7.数据库保护(访问)的容有哪些? 利用权限机制,利用完整性约束防止法数据进入数据库,提供故障恢复能力,提供并发访问控制 8.在交互式系统中,非剥夺是不是一个好的策略?为什么?

研究生自我总结10篇

研究生自我总结10篇 研究生是高等教育的一种学历,一般由拥有硕士点、博士点的普通高等学校和研究生培养资格的科研机构开展,以研究生为最高学历,研究生毕业后,也可称研究生,含义为具有研究生学历的人。下面是小编为您收集整理的研究生自我总结,希望可以帮到您~ 篇一:研究生自我总结时光荏苒,岁月如梭。转眼之间我已经是一名研二的学生了。回望过去的这一年,不禁让我感慨万千,这一年时光不但充实了自我,而且也结交了许多良师益友,年华虽易逝,却带不走我的美好回忆。在这里对自己过去一年的学习、生活、科研等做一个小结,目的是总结经验,发现不足之处,以利于今后继续发扬优点,弥补不足,为将来适应社会做好准备,把自己的人生道路走得更稳、更好,更快成材以服务于祖国、人民和社会。 政治思想方面,虽然我还没有加入党组织,但是我始终以党员的标准要求自己,并积极向党组织靠拢。我注意学习先进的政治理论,关心国内国际大事,积极拥护党和国家的各项路线、方针、政策,自觉遵守法律、法规和学校的各项规章制度。同时,我清醒地意识到自己所担负的社会责任。对个人的人生理想和发展目标,我也有了相对成熟的认识和定位。 在学习方面,我努力学习专业课程,阅读了大量与本专业相关的书籍和论文,根据自身研究方向的要求,有针对性的认真研读了有关

核心课程。在导师的指导下,积极参与各项科研活动,在活动过程中,认真阅读教材、查阅学术资料和参考书籍,增强自己的实践动手能力。通过对研究方向的深入钻研,对专业领域的应用背景、科学前沿以及整个学科的结构都有了宏观、深入的认识,使自己具备了自我学习,认真思考、善于钻研的能力,为自己的科研工作打下扎实基础。在平时生活中,我能做到尊敬师长,团结同学,为人处世和善热情,和同学关系融洽,并积极参与各项集体活动。 今后,我将再接再厉,在以后的工作和学习中,不断地完善自我,相信这些经历和积累都将成为我人生道路上的宝贵财富。我将继续保持并发扬严谨治学的作风,努力成为一名优秀的工作者,做一个全面发展的社会主义建设者,做一个对国家、对社会有用的人。 篇二:研究生自我总结本人自XX年考取xx大学的研究生以来,经过两年的成长,使我在思想、学习、工作以及生活等各方都有了较大的进步: 在思想觉悟上,自从踏进校门那一刻起,我就对自己提出了明确的的要求。坚持用科学的思想来认识社会,进行教育探索和研究。并清醒地意识到自己身上所担负的责任,明确了新时期自己的人生理想和发展目标,并持有坚定的信心和勇气。 在专业课程的学习上,结合原来的学科背景和研究兴趣,我很快地确定了自己的研究方向和领域,并有针对性的认真研读了有关书籍杂志,学习了相关的必修与选修课程。为自己的科研工作打下扎实基础,在此期间,各门课程都取得了优异的成绩。在期末综合成绩排名

计算机常见算法面试题

简介:计算机考研之家搜集的华为C语言经典面试题,来试试你的C语言水平吧。每道题都附有详细解答和讲解,很有参考价值的C语言面试题。 怎么判断链表中是否有环? bool CircleInList(Link* pHead) { if(pHead = = NULL || pHead->next = = NULL)//无节点或只有一个节点并且无自环 return (false); if(pHead->next = = pHead)//自环 return (true); Link *pTemp1 = pHead;//step 1 Link *pTemp = pHead->next;//step 2 while(pTemp != pTemp1 && pTemp != NULL && pTemp->next != NULL) { pTemp1 = pTemp1->next; pTemp = pTemp->next->next; } if(pTemp = = pTemp1) return (true); return (false); } 两个字符串,s,t;把t字符串插入到s字符串中,s字符串有足够的空间存放t字符串 void insert(char *s, char *t, int i) { memcpy(&s[strlen(t)+i],&s[i],strlen(s)-i); memcpy(&s[i],t,strlen(t)); s[strlen(s)+strlen(t)]='\0'; } 1。编写一个C 函数,该函数在一个字符串中找到可能的最长的子字符串,且该字符串是由同一字符组成的。 char * search(char *cpSource, char ch) { char *cpTemp=NULL, *cpDest=NULL; int iTemp, iCount=0; while(*cpSource) { if(*cpSource == ch) { iTemp = 0; cpTemp = cpSource; while(*cpSource == ch) ++iTemp, ++cpSource; if(iTemp > iCount)

考研复试面试问题总结(DOC)

考研复试面试问题总结(DOC)

————————————————————————————————作者:————————————————————————————————日期:

考研复试篇 复试面试常问问题及答案摘选: 答:(1)请你简单做个自我介绍。问题分析:该问题几乎是必问题目。每个参加复试的学员都务必准备好该问题的答案!回答的重点,涉及本科学校、专业,本科学习情况和毕业论文方向等。 (2)你看过那些书,是不是考研就背了几本专业课书,就考了个高分?问题分析:有些问题老师问的时候,可能是随意问的,但你不能随意回答。老师问你这个问题时,可能对你带有一点偏见的,你就认真的,很老实的回答,用事实说话,让他感觉到,你的确不是那种考试型的人,你的考研不是背教科书考上的。 (3)你为什么考我们这个学校?答案要点:兴趣+该校该专业名气和实力+该专业老师的实力。 (4)你认为自己本科专业和现在所考的专业有什么互补性或者借鉴性?问题分析:这是一个即将准备复试的学生问我的问题,也具有针对性,大部分的学生都是跨专业考的(实际上老师也很喜欢跨专业的,因为有多学科的背景),希望你能够针对自己的专业说一些与新闻传播专业相关的东西。

(5)你认为跨专业的优势和劣势是什么?参考答案:复试前需思考,根据自己所学专业和所考专业之间展开论述。另外整理出了一篇结论稿,同学们可以参考: 1:题目范围——知道与不知道的。 关于考研问的专业问题,不会问的太难太刁钻,但是,就算问题简单,在你的问答里也可以挑出许多毛病。所以还是要记得千万不要胡乱扩展吹夸,对自己不了解的东西,一定要抱以谨慎的态度。 如果他问的问题你实在不知道,也不要慌张,更不要胡扯一通的乱解释,只说:这个问题我目前还欠研究,虽然现在不了解,但是上研以后,一定跟随老师好好把这个问题钻研清楚。表示虽然现在你有不足,但是你今后会非常勤奋。在中国,态度问题,总是第一位的。 2:题目范围——联系实际关注热点。 很多老师喜欢问一些很实际的问题,尤其是经济管理等联系实际紧密的专业。也有老师喜欢联系现在的热点问题,比如美伊战事。 3:基本范例问题——对教授的采访报告。 A:为什么会报考这个专业,以及今后的打算。所以最好稍微准备一个小型的研究计划很简单的那种,比如你喜欢的感兴趣的方向。如果你是跨专业考的,请问你以前的相关专

(完整版)计算机软件专业考研英语面试必备问题

软件工程(或计算机专业)英语面试,这是本人复试是整理的,成绩一般,大神勿喷。为什么考研(很重要的点,我是软件工程专业的,本段是关于软件工程的) I learnt a lot from university courses during the past four year. However,I think furtherstudy is still urgent for me to realize self-value. Life is precious. It is necessary to seize any chance for self-development,especially in this competitive modern world. And,I am looking forward to making a solid foundation for future profession after two years study here. The major that I hope pursue for my further education is program design. Because I find software are playing a more and more important role in each part of our modern society. And nowadays in China, with the recognition by the government, our domestic software industry is growing rapidly and that may provide a lot of chances to us. I plan to concentrate on study and research in this field in my graduate time. And I hope I can form a systematic view of software engineering and make a solid foundation for future profession after three years study here. 自我介绍 Good morning. I am very glad to be here for this interview. First,let me introduce myself. I come from Suqian city jiangsu province. I will graduate from nanjing university of posts and telecommunications in july this year.In the university, my major is software engineering.I like this major, my ideal is to become an outstanding software engineer.I have learned a lot of courses in the college, data structure, database, software engineering, computer network, software testing, etc.I spent a lot of time to learn the course. In my spare time, I like reading some domestic and foreign literature and magazines, such as "Eugenie Grandet", "the reader". I think reading can increase their self-cultivation and logical ability, and it can exercise a person's patience. I am also very interested in the football, My favorite team is Real Madrid.(本段有语法错误,不过面试中,老师不会在意的,老师只会在意你的流畅度和发音。大神可自行修改) I learnt a lot from university courses during the past four year. However,I think further study is still urgent for me to realize self-value. Life is precious. It is necessary to seize any chance for self-development,especially in this competitive modern world. And,I am looking forward to making a solid foundation for future profession after Two and a half years study here. I want to improve programming ability. Because I find software are playing a more and more important role in each part of our modern society. And nowadays in China, with the recognition by the government, our domestic software industry is growing rapidly and that may provide a lot of chances to us. I plan to concentrate on study and research in this field in my graduate time. And I hope I can form a systematic view of software engineering and make a solid foundation for future profession after two and a half years study in this famous university. That is all, thank you very much. 问题篇(划线部分为必须掌握的点,听不懂的点千万别说pardon,就算再说一遍一般也听不懂) 1、Where are you from? 1、你来自哪里? I come from suqian in the north of Jiangsu province, it is not famous, but it has a very long history. Suqian is the hometown of Xiang Yu.The native place of xiang yu is located at the ancient wotong lane, birthplace of the overlord in the west chu period.Every year a lot of people come to visit it.Suqian also has a very good ecological and cultural environment, I love my hometown.

总结:考研后的个人总结

考研后的个人总结 以前都是自己看别人的帖子,想不到今天总算轮到自己来写了。sO100关于这次考研,我只能说在昨天下午考完专业课后我都很平静,因为感觉自己考得很不错,其实我只复习了2个月,所以一出考场我不禁有些得意,好多人复习了那么久都考得不好。但是当我对完了数学答案之后,我痛苦的发现填空选择错了很多。痛苦归痛苦,暂且写点东西,算是对后来者的一些借鉴吧。 政治:我8月份报了黑龙江大学的辅导班,月华亭豹人张进奉他们的。当时我书都没看,再加上酷暑炎热,上千人挤在一个大礼堂,效果别提有多差!其实就算我当时都复习了,听棵的帮助也不大,除了哲学老师给你理了一下思路,说分为唯物法辩证法认识论历史唯物主义,并且告诉你这些里面都有哪些内容之后,其余的就算我现在去听也会没有多大收获,而这一些东西几分钟就可以讲清楚了。12月份我还去上了冲刺班,这是我做大的失败!全是废话不说,上冲刺班打乱了我的复习节奏,上完冲刺班之后我上网上了一个星期,耽误了太多时间,呵呵。我的建议是,搞清楚哲学的整个体系就好了,其余的东西自己去看吧!老师绝对没有多大效果的!如果我重新选择,我会选择自学政治!当然,最后阶段上上网,看看网友帖的资料和各个老师的压题。我最后下载了启航的20题。最后五天,周一背前十题,周二后十题,周三前十题,周四后十题,周五花了三个小时就把20题的90%背了下来,结果今年派上大用场了!呵呵,在去考场的路上我看了宏观调控,又考到了,真是运气!btw,参考书我觉得高教的应试精华和考试参考书不错,其余的就不必了。考试中心的答案是按照

考试参考书的内容命至的,看别的参考书的话,有些知识点解释不一样的话就容易失分了。总结一下:基础知识点看高教的书,最后压题上网下载去吧,各个冲刺班的笔记都有的,肯定比你自己去上冲刺班记的笔记还详细! 英语:其实在大学我好好学的也就只有数学和英语两门功课了,是出自于喜欢而非为了考试。大二的时候我把自己的词汇量扩大到了8000,大三过后有了10000左右的词汇量,这样子做阅读就很少能碰到生词了!但是这还不行,考研生词不多,主要是对文章的理解,这就需要做大量的阅读。以前看过了gre历年阅读,但是等我看到石纯真的220篇时我感觉难度比gre大多了,呵呵。我做了十五个单元,之后就感觉已经上了轨道了,再看石的已经没多大意义了,所以买了毕敬献的,结果又是阅读做得很郁闷!昨晚他的十套题,我感觉自己已经快虚脱了。后来在做了第二遍,总算来了真正的阅读的感觉。阅读就是这样,循环往上,切忌只看不做!在大三上学期我花了两个月时间听完了托福历年真题25盘磁带,每盘听了三遍,每天三小时。此后做听力再也没有如坠云里的不爽快的感觉了。曹其君说别指望最后一个月听力有大提高,我要说,只要你肯真正的花时间,一个星期都能把听力从8分提高到12分。我做托福听力第一套50个选择题错了一半,当时别提多郁闷。但是一个星期之后就只错15个,半个月之12个,到最后也就是8个左右把。所以千万别放弃,一定要相信学了就会有进步!作文考前我背了两篇,考试的时候不管怎么样,硬是套上去了。作文这个东西其实一定要多写,这样才是真正属于自己的提高!参考书建议在一定词汇量的基础上去买石纯真的220篇,之后去买毕金献的

面试常见问题_计算机网络

计算机网络 OSI与TCP/IP各层的结构与功能,都有哪些协议。

TCP/IP

相似之处:

基于独立的协议族,层的功能划分相似 差异: ISO/OSI:从概念模型到协议实现; TCP/IP:从协议实现到概念描述 层次数量差别; 2.TCP与UDP的区别。 ●UDP(UserDatagramProtocol):不提供复杂的控制机制,利用IP提供面向无连接的通信 服务。并且他是将应用程序发来的数据在收到那一刻,立刻按照原样发送到网络上的一种机制。即使出现网络拥堵,UDP也无法进行流量控制等避免拥塞的行为。如果传输途中出现丢包,也不负责重发。甚至出现包的到达乱序时也没有纠正功能。如果需要这些细节控制,要交给采用UDP的应用程序处理。UDP将控制转移到应用程序,只提供作为传输层协议的最基本功能。 ●TCP(TransmissionControlProtocol):TCP充分实现了数据传输时的各种控制功能,可 以进行丢包的重发控制、对乱序的分包进行顺序控制。此外,TCP作为一种面向有链接的协议,只有在确认通信对端存在时才会发送数据,从而可以控制通信流量的浪费。 ●TCP通过检验和、序列号、确认应答、重发控制、连接管理以及窗口控制等机制实现可靠 性传输。 ●如何加以区分使用?

TCP用于传输层有必要实现可靠性传输的情况。UDP主要用于对高速传输和实时性有较高要求的通信或广播通信。 区别: 1)TCP面向连接;UDP是无连接的,发送数据之前不需要建立连接。 2)TCP提供可靠的服务。TCP传送的数据无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,不保证可靠交付。 3)TCP面向字节流,实际上TCP把数据看成一串无结构的字节流;UDP是面向报文的,UDP 没有拥塞控制,网络出现拥塞不会使源主机的发送速率降低。 4)每一条TCP连接只能是点对点的;UDP支持一对一、一对多、多对一和多对多的交互通信5)TCP首部开销20字节;UDP首部开销8字节; 6)TCP逻辑通信信道是全双工的可靠信道,UDP则是不可靠信道 3.TCP报文结构。 ?IP结构 首部固定长度20字节,所有IP数据报必须具有。 可选字段,长度可变。 ?版本:占4位,值IP协议的版本,当前IP协议版本号为4(IPv4) ?首部长度:4位,表示最大数值是15个单位(一个单位4字节),首部最大值为60字节。?区分服务:未被使用。

2017考研复试过来人总结经验教训

2017考研复试过来人总结经验教训2017年在职研究生一月联考分数线已出,恭喜成功闯过初试的同学。接下来就是打好复试这场硬仗了。为了少走弯路,少吃苦头,我们可以好好学习一下过来人总结的经验教训。 1.哈尔滨工业大学女研究生小王回忆:面试时,一定要选适合自己的服装和装扮,要做到干净大方。男生和女生都可以选择休闲装或商务休闲装,女生不宜着暴露的服装和超短裙。 2.北京外国语大学的研究生小张说,自己在面试前把英语初试时背的作文句型又背了一遍,然后把专业词汇套用在句型中,老师问的时候回答的比较流畅,同时我自己的语音语调还可以,给老师留下了很好的印象。 3.武汉大学研究生小侯说,对于专业课面试,切忌紧张,我们一定要放松,以镇定的态度出现在老师面前。同时我们的反应一定要敏捷镇定,遇到不会的问题,可以适当的回避,把老师引向自己熟悉知识的一面。 4.西安外国语大学的研究生小冯说,在复试之前我就联系了导师,并阅读了导师的一些文章,正好,老师问我改专业的研究动向,我就借鉴了老师文章中的观点。 接下来我们总结分析下历年的考研面试失败案例,以供大家警惕: 1.郑州大学的张庆生说,备考时很疲惫,考完后太放纵自己了,初试还不错,就没怎么注重复试,结果复试时完全不在状态。所以希望各位考生一定要适度放松,合理安排复习时间,做好充分准备。

2.甘肃大学的宋茜说,英语是复试中的一根钉,我被害惨了,听力不行,口语也不流畅,败在了英语上。希望大家要认真准备听力和口语,强化练习。 3.华中农大的闫一志说,面试时除了要衣冠整齐,干净大方外,面对不会的问题,一定不要不懂装懂,态度要诚恳,向老师请教。 4.也有的同学考完后丢了手机,联系不上,失去了复试的机会。所以我们考生要保持联系方式畅通。 以上几条就是关于复试的经验教训,希望对考生有所帮助。也希望所有考生都能顺利通过复试,考入自己心仪的学校。如果您对报考在职研究生还有其他问 题,可以咨询在职研究生考试网老师了解第一手在职研究生报考信息。

银行招聘计算机专业面试题及答案【最新】

银行招聘计算机专业面试题及答案 1. 什么是程序局部性,为什么会有程序的空间局部性? 程序局部性是指程序在运行时呈现出局部性规律,在一段时间间隔内,程序的执行是局限在某个部份,所访问的存储空间也只局限在某个区域。 空间局部性是指若一个存储单元被访问,那么它附近的单元也可能被访问,这是由于程序的顺序执行引起的。 2. 比较TCP与UDP TCP与UDP都是传输层的协议,且都用端口号标识数据所达的进程。 TCP提供的是面向连接服务,提供可靠交付。且具有流量控制和拥塞控制。可用于可靠要求高的场合如:SMTP,FTP,HTTP等 UDP提供的是无连接服务,提供不可靠交付,且无确认机制。主要用于即时强的场合如:视频聊天,语音电话等。

3. 网络协议的三个核心要素,及概念.各起什么作用? 语法,定义了数据与控制信息的格式; 语义,定义了需要发出何种控制信息,完成何种响应动作以及作出何种响应; 同步,定义了事件实现顺序的详细说明; 4. 关系数据库都有那些操作,特点是什么? ◇查询:选择、投影、连接、除、并、交、差 ◇数据更新:插入、删除、修改 关系操作的特点:集合操作方式,即操作的对象和结果都是集合。 5. 解释一下网络体系结构,它得实现和理论有什么区别? 是指通信系统的整体设计,它为网络硬件、软件、协议、存取控制和拓扑提供标准。网络体系统结构采用分层结构,各层之间相互独立、较易维护、灵活性好。

国际标准化组织制定了OSI/RM标准,该标准采用了七层结构应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。七层协议体系结构既复杂又不实用,但其概念清楚,体系结构理论较完整。而TCP/IP却成为了事实上的标准,它采用了四层结构即应用层、传输层、网络层和网络接口层。 6. 为了实现重定位需要哪些硬件? 最简单的方式是在系统中增设一个重定位寄存器,用来存放正在执行作业的内存地址,每次访问数据时,由硬件自动将相对地址与重定位寄存器中的起始地址相加,形成实际的特理地址。当然在分页式与分段式系统中,具地址变换机构,以及快表等硬件。 7. 数据库保护(访问)的内容有哪些? 利用权限机制,利用完整性约束防止法数据进入数据库,提供故障恢复能力,提供并发访问控制 8. 在交互式系统中,非剥夺是不是一个好的策略?为什么? 非剥夺方式:分派程序一旦把处理机分配给某进程后便让它一直

相关主题
文本预览
相关文档 最新文档