华为04年面试题

问题一:两笔记本电脑连起来后拼不通,你觉得可能有哪些问题?

答案一

1.两机的ip地址和子网掩码有没有正确配置
2.有没有受到防火墙的限制
3.TCP/IP协议有没有安装
4.网线类型是否交叉线,网线是不是有断线
5.网卡有没有故障

另一种解释

首选想到是软件问题,软件问题首选查找是否安装有防火墙程序,如否则查看驱动程序有无问题,然后如果是WINDOWS的系统,再查看TCP/IP协议IP地址是否在一个子网,如果以上都无问题,则查看硬件,顺序是网卡--网线。

问题二:我们在南京,和深圳的网络是通的,但和北京的网络不通,你以怎样的顺序检查问题?
  答:首选要知道三方的网络拓朴结构与设计规划,然后确定北京地区网络内部是否畅通,网络是否是新建立了,如果不是新建的网,首先要知道以前是否通,如通,则此次不通是在做过什么操作后不通的,确定后首先排除线路故障,然后再看双方连接的路由设置。

 问题三:解释什么叫“透明”?什么叫“网格”?
  答:透明对用户来说是感觉不到的,也就是说不论对网络加了什么设备或软件,用户都感觉 不到,这样的好处是简化了用户的操作复杂性。网络的概念,是利用互联网将分散在不同地理位置上的多个计算资源,通过逻辑关系组成一个“虚拟的计算机”。也 就是我们以前所提到的分布式计算的发展。

  问题四:交换和路由的区别?vlan的特点?
  答:交换和路由最大的区别在于交换是通过ASIC专用硬件处理数据,路由是通过CPU用软件的形式处理数据。VLAN的特点为将一个物理网络从逻辑上划分出了多个广播域。

交换(这里指2层交换)和路由的最大区别是工作在OSI模型的不同的层

  问题六:知道现在的路由器是第几代了吗?

第6代,基于集群系统的路由器

 

 

1.请你分别画出OSI的七层网络结构图和TCP/IP的五层结构图。
                        答:OSI七层网络结构图
                        应用层
                        表示层
                        会话层
                        传输层
                        网络层
                        数据链路层
                        物理层
                        TCP/IP的五层结构图
                        应用层
                        运输层
                        网络层
                        数据链路层
                        物理层

                          2.请你详细地解释一下IP协议的定义,在哪个层上面?主要有什么作用?TCP与UDP呢?
                        答:IP是Internet
                        Protocol的简称,是网络层的主要协议,作用是提供不可靠、无连接的数据报传送。TCP是Transmit            Control
                        Protocol(传输控制协议)的缩写,在运输层,TCP提供一种面向连接的,可靠的字节流服务;UDP是User
                        Datagram Protocol(用户数据报协议)的缩写,在运输层,UDP提供不可靠的传输数据服务

                          3.请问交换机和路由器各自的实现原理是什么?分别在哪个层次上面实现的?
                        答:交换机属于OSI第二层即数据链路层设备。它根据MAC地址寻址,通过站表选择路由,站表的建立和维护由交换机自动进行。路由器属于OSI第三层即网 络层设备,它根据IP地址进行寻址,通过路由表路由协议产生。交换机最大的好处是快速,路由器最大的好处是控制能力强。

                          4.请问C++的类和C里面的struct有什么区别?
                        答:struct的成员的默认访问说明符为Public,而class的成员的默认访问说明符为Private。其他没有区别

                          5.请讲一讲析构函数和虚函数的用法和作用。
                        答:析构函数是在对象生存期结束时自动调用的函数,用来释放在构造函数分配的内存。
                        虚函数是指被关键字virtual说明的函数,作用是使用C++语言的多态特性

                          6.全局变量和局部变量有什么区别?是怎么实现的?操作系统和编译器是怎么知道的?
                        答:一些变量在整个程序中都是可见的,它们称为全局变量。一些变量只能在一个函数中可知,称为局部变量。这就是他们的区别。
                        在任何函数外面定义的变量就是全局变量,在函数内部定义的变量是局部变量,这是它们在程序中的实现过程。
                        操作系统和编译器是根据程序运行的内存区域知道他们的,程序的全局数据放在所分配内存的全局数据区,程序的局部数据放在栈区。

                          7.8086是多少位的系统?在数据总线上是怎么实现的?
                        答:8086的机器字长是16位,8086使用40个引脚的16个做地址/数据复用引腿来传输数据,一次读写过程由一个基本总线周期完成,它由4个时钟 (CLK)周期组成,按时间顺序定义为T1、T2、T3、T4。在T1期间8086发出访问目的地的地址信号和地址锁存选通信号ALE;T2期间发出读写 命令信号RD、WR及其它相关信号;T3期间完成数据的访问;T4结束该总线周期。可见,地址与数据信号不会同时出现在一个时钟(CLK)周期,二者可以 分时复用同一组引线。

                        a4:c++中的类具有成员保护功能,并且具有继承,多态这类oo特点,而c里的struct没有

                        a5:析构函数一般在对象撤消前做收尾工作,比如回收内存等工作,虚拟函数的功能是使子类可以用同名的函数对父类函数进行重载,并且在调用时自动调用子类 重载函数,如果是纯虚函数,则纯粹是为了在子类重载时有个统一的命名而已。(说得不是很确切,自己随便找本c++的书都有说明)


                        a6:全局变量的生命周期是整个程序运行的时间,而局部变量的生命周期则是局部函数或过程调用的时间段。其实现是由编译器在编译时采用不同内存分配方法。 全局变量在main函数调用后,就开始分配,如果是静态变量则是在main函数前就已经初始化了。而局部变量则是在用户栈中动态分配的(还是建议看编译原 理中的活动记录这一块)


                        a8:8086系统是16位系统,其数据总线是20位,实现过程,微机原理上有,我也差不多忘了,呵呵

 

应聘者二

Q1:请你分别划划OSI的七层网络结构图,和TCP/IP的五层结构图?
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给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。
互连网络层:负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。
网络接口层:对实际的网络媒体的管理,定义如何使用实际网络(如Ethernet、Serial Line等)来传送数据。
Q3:请问交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的?
一 般意义上说交换机是工作在数据链路层。但随着科技的发展,现在有了三层交换机,三层交换机已经扩展到了网络层。也就是说:它等于“数据链路层 + 部分网络层”。交换机中传的是帧。通过存储转发来实现的。路由器是工作在网络层。路由器中传的是IP数据报。主要是选址和路由。
Q4:请问C++的类和C里面的struct有什么区别?
结构是一种将数据集合成组的方法,类是一种同时将函数和数据都集合成组的方法。结构和类在表面上的唯一区别是:类中的成员在默认情况下是私有的,而结构中的成员在默认情况下是公用的。 
  class   foo 
  { 
  private: 
        int   data1; 
  public: 
        void   func(); 
  }; 
  可以写成: 
  class   foo 
  { 
        int   data1; 
  public: 
        void   func(); 
  }; 
  因为在类中默认的是私有的,所以关键字private就可以不写了。 
  
  如果想用结构完成这个类所作的相同的事,就可以免去关键字public,并将公有成员放置在私有成员之前: 
  struct   foo 
  { 
          void   func(); 
  private: 
        int   data1; 
  };
Q5:请讲一讲析构函数和虚函数的用法和作用?
在 JAVA里没有象C++中的,所谓的析构函数 ,因为当一个对象不在使用的时候,它会自动被垃圾回收器回收,所以也就用不着析构函数了, 那个finalize 也只有在被垃圾回收器回收,才会被执行,而且很多时候,垃圾回收器并不一定执行,所以它不能当做C++中的,所谓的析构函数使用, 虚函数在JAVA里也是没有的,比较象近的应该算是abstract。
Q6:全局变量和局部变量有什么区别?是怎么实现的?操作系统和编译器是怎么知道的?
1)、全局变量的作用用这个程序块,而局部变量作用于当前函数
2)、前者在内存中分配在全局数据区,后者分配在栈区
3)、生命周期不同:全局变量随主程序创建和创建,随主程序销毁而销毁,局部变量在局部函数内部,甚至局部循环体等内部存在,退出就不存在
4)、使用方式不同:通过声明后全局变量程序的各个部分都可以用到,局部变量只能在局部使用
Q7:一些寄存器的题目,主要是寻址和内存管理等一些知识。
 
Q8:8086是多少位的系统?在数据总线上是怎么实现的?
8086微处理器初次发布时,这块16位芯片仅包含29000个晶体管,运行速度为5MHz。而当今基于x86架构的奔腾4处理器,已经包含5500万个晶体管,运行速度提高了600倍以上,高达3.06GHz。
8086是高性能的第三代微处理器,是Intel系列的16位微处理器,它是采用HMOS工艺制造的,内部包含约29,000个晶体管。 
8086 有16根数据线和20根地址线,因为可用20位地址,所以可寻址的地址空间达220即1M字节。8086工作时,只要一个5V电源和一相时钟,时钟频率为 5MHz。后来,Intel公司推出的8086-1型微处理器时钟频率高达10MHz,8086-2型微处理器时钟频率达8MHz。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值