02华为公司面试笔试题
- 格式:docx
- 大小:20.54 KB
- 文档页数:5
华为公司面试笔试题《一》华为软件测试工程师面试题Q1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图?答:七层结构从上到下依次是:7 应用层 ;6 表示层 ;5 会话层 ;4 传输层 ;3 网络层 ;2 数据链路层 ;1 物理层五层结构是5 应用层;4 运输层;3 网络层; 2 链路层;1 物理层。
Q2:请你详细的解释一下IP协议的定义,在哪个层上面,主要有什么作用? TCP与UDP呢?答:UDP,TCP在传输层,IP在网络层,TCP/IP是英文Transmission Control Protocol/Internet Protocol的缩写,意思是"传输控制协议/网际协议"。
TCP/IP协议组之所以流行,部分原因是因为它可以用在各种各样的信道和底层协议(例如T1和X.25、以太网以及RS-232串行接口)之上。
确切地说,TCP/IP 协议是一组包括TCP协议和IP协议,UDP(User Datagram Protocol)协议、ICMP(Internet Control Message Protocol)协议和其他一些协议的协议组。
TCP/IP协议并不完全符合OSI 的七层参考模型。
传统的开放式系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务。
该模型的目的是使各种硬件在相同的层次上相互通信。
这7层是:物理层、数据链路层、网路层、传输层、话路层、表示层和应用层。
而TCP/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。
这4层分别为:应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。
传输层:在此层中,它提供了节点间的数据传送服务,如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传输数据并把它传输到Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的?一般意义上说交换机是工作在数据链路层。
但随着科技的发展,现在有了三层交换机,三层交换机已经扩展到了网络层。
也就是说:它等于“数据链路层 + 部分网络层”。
交换机中传的是帧。
通过存储转发来实现的。
路由器是工作在网络层。
路由器中传的是IP数据报。
主要是选址和路由。
Q4:请问C++的类和C里面的STRUCT有什么区别?答:除关键字不同外(class,struct)的唯一区别是,结构在默认情况下的成员是公共(public)的,而类在默认情况下的成员是私有(private)的。
在C++中,结构是特殊的类。
class是从struct发展而来的。
之所以将struct和class都保留,是因为:1、提出class是为了强调一种概念。
2、保留struct是为了照顾到大多数人的习惯。
struct和class是有区别的。
struct保证成员按照声明顺序在内存中存储。
class不保证等等而它们都可以继承,实现多态等。
但也有少许区别。
比如:struct A { };class B : A{ }; //private继承struct C : B{ }; //public继承这是由于class默认是private,struct默认是public。
一般说来,struct和class可以换用(当然要注意一些语法问题)。
而struct更适合看成是一个数据结构的实现体,class更适合看成是一个对象的实现体,对私有成员进行保护,还提供与外界的接口。
从习惯上更喜欢用class。
05:请讲一讲析构函数和虚函数的用法和作用?答:置于“~”是析构函数;析构函数因使用"~"符号(逻辑非运算符),表示它为腻构造函数,加上类名称来定义。
;析构函数也是特殊的类成员函数,它没有返回类型,没有参数,不能随意调用,也没有重载,只有在类对象的生命期结束的时候,由系统自动调用。
有适放内存空间的做用!虚函数是C++多态的一种表现例如:子类继承了父类的一个函数(方法),而我们把父类的指针指向子类,则必须把父类的该函数(方法)设为virturl(虚函数)。
使用虚函数,我们可以灵活的进行动态绑定,当然是以一定的开销为代价。
如果父类的函数(方法)根本没有必要或者无法实现,完全要依赖子类去实现的话,可以把此函数(方法)设为virturl 函数名=0我们把这样的函数(方法)称为纯虚函数。
如果一个类包含了纯虚函数,称此类为抽象类Q6:全局变量和局部变量有什么区别?实怎么实现的?操作系统和编译器是怎么知道的?答:主要的区别是变量的作用范围不同。
全局变量在全局范围内都有效,而局部变量只在声明此变量的作用域内有效。
全局变量是属于实例的,在初始化对象的时候初始化,生命周期与该实例相同,之所以叫全局变量是因为该实例中的所有方法或属性都可以引用;局部变量是在实例方法内或static 块中,生命周期从调用该方法到该方法退出,并且只有该方法能够引用之。
全局变量和局部变量的区别是在存储器中位置不同,具体说,全局变量存储在数据段中,局部变量都有可能,一般来说在堆栈段Q7:一些寄存器的题目,主要是寻址和内存管理等一些知识。
答:寻址方式表示指令中操作数所在的方法称为寻址方式。
8086/8088有七种基本的寻址方式:立即寻找,寄存器寻址,直接寻址,寄存器间接寻址,寄存器相对寻址,基址加变址寻址,相对基址加变址寻址。
直接寻址、寄存器间接寻址、寄存器相对寻址、基址加变址寻址和相对基址加变址寻址,这五种寻址方式属于存储器寻址,用于说明操作数所在存储单元的地址。
由于总线接口单元BIU能根据需要自动引用段寄存器得到段值,所以这五种方式也就是确定存放操作数的存储单元有效地址EA的方法。
有效地址EA是一个16位的无符号数,在利用这五种方法计算有效地址时,所得的结果认为是一个无符号数。
除了这些基本的寻址方式外,还有固定寻址和I/O端口寻址等。
内存管理主要包括内存的分配和回收整理等,实现内存的高效利用。
Q8:8086是多少位的系统?在数据总线上是怎么实现的?答:16位系统,8位数据传送,通过总线控制逻辑实现数据线和地址线的分时复用.8086是Inter的16位微处理器有16根数据线和20根地址线,它既能处理16位数据,也能处理8位数据内部数据总线都是按16位设计的,单外部数据总线只有8条《二》1、测试设计(任选一题)A、规则说明一号通功能是指用户的多个终端(手机、固定电话)可以挂在一个虚拟或实际号码下面、这个号码称为引导号码。
当其它用户拨打引导号码时,用户的多个终端会同时振铃,当用户接听其中一个终端后,其它终端将停止振铃。
一号通最多只支持有2个成员;一号通的成员可以是固定电话或移动电话;引导号码长度为4-16请设计相应测试用例验证一号通功能(写出分析过程)正常:1、引导号码:长度、号码规则、虚拟号码、实际号码2、两个终端:手机-固定电话、手机-手机、固定电话-固定电话3、一个终端:手机、固定电话4、终端通话切换异常:1、号码异常2、加载两个各以上的终端3、一个终端故障、两个终端均故障4、一个终端接通后继续拨打引导号码B、规则说明假设需要实现操作系统中的一个进程调度器,根据如下规则来确定如何进行测试设计、进程可处于5种状态;1、就绪随时可以被调度器选中,从而获得CPU得到执行2、运行已经获得CPU,正在执行3、阻塞进程申请系统中的资源,如果资源暂时无法获得,则进入阻塞状态4、终止进程结束,则进入终止状态,等待操作系统回收进程在创建或运行时申请的资源5、死亡处于终止状态的进程资源被回收后,进程彻底消失,等价于没有被创建请设计用例测试进程调度器(写出分析过程)。
2、英文翻译1、Round RobinSpecifies that the system passes each mew commection request to the next server in line eventually distributing connections evenly across the array of machines being load balanced. This method works well in most configurations , especially if the equipment that you are load balancing is roughly equal in processing speed and memory.2、The maximum number of HTTP/HTTPS transactions per connection ,before the clientcloses the TCP connection with the proxy , regardless of whether or not the destination is from the same sever).3、程序设计题(可选)不使用任何库,编写一个函数char*remove(const char* src,char c )参数src为输入的字符串,长度不确定,不为空。
参数c为任何可能的字符返回值。
Src中删除了所有字符c的字符串。
对是否通过动态分配内存的方式返回这个字符串还是使用静态的内存不做限制。
char *remove(const char *src,char c){char temp[20];int i=0,j=0;while(src[i]!='\0'){if(src[i]!=c){temp[j]=src[i];i++;j++;}else{i++;}}temp[j]='\0';return temp;}。