中兴计算机专业面试题:涵盖操作系统与C++知识点

5星 · 超过95%的资源 需积分: 11 4 下载量 66 浏览量 更新于2024-07-29 收藏 392KB PDF 举报
"这是一份中兴公司的计算机专业面试题,包括公共部分、C++部分和JAVA部分。公共部分涵盖操作系统、网络协议、文件系统、中断装置和虚拟设备等相关知识,C++部分则涉及类模板、整型存储、成员函数等编程概念。" **公共部分知识点详解** 1. **操作系统的主要组成部分** 操作系统主要由四个部分组成:进程和线程的管理、存储管理、设备管理和文件管理。这些组件协同工作,确保系统高效、稳定地运行。 - 进程和线程的管理:负责创建、调度和销毁进程,以及线程的同步和通信。 - 存储管理:管理内存分配和回收,避免内存碎片,提高内存利用率。 - 设备管理:处理I/O请求,实现设备的分配与回收,提供虚拟设备等高级功能。 - 文件管理:负责文件的创建、删除、读写和保护,实现文件系统的数据组织和数据冗余控制。 2. **Internet的网络协议与层次结构** Internet采用TCP/IP协议,它包括四个主要层次:物理层、数据链路层、网络层和应用层。 - 物理层:定义了传输数据的物理介质和电气规范。 - 数据链路层:负责错误检测和纠正,确保数据正确传输到相邻节点。 - 网络层(IP层):进行路由选择,实现不同网络之间的数据传输。 - 应用层:提供用户接口,如HTTP、FTP、SMTP等协议。 3. **文件系统中的数据冗余及问题** 数据冗余是因为文件系统中难以实现数据共享导致的,相同数据可能在多个文件中重复。冗余数据可能导致两种问题: - 数据更新异常:当同一数据在多处修改时,可能导致部分副本未更新,造成数据不一致。 - 数据不一致性:若一处副本更新而其他副本未更新,会破坏数据的一致性。 4. **中断装置的主要职能** 中断装置主要负责: - 检测中断事件的发生。 - 保存被中断进程的上下文信息,以便恢复时使用。 - 启动中断处理程序来处理中断事件。 5. **虚拟设备的概念和作用** 虚拟设备是通过虚拟化技术将独占设备转化为多个逻辑设备,允许多个用户并发使用。引入虚拟设备可以: - 提高设备利用率,克服独占设备的效率低下问题。 - 实现设备的共享,优化资源分配。 **C++部分知识点详解** 1. **类模板与类函数模板** 类模板定义以`template`关键字开始,用于创建可参数化的类。类函数模板则是在函数级别上使用模板,同样以`template`开头,但应用于特定函数而非整个类。 2. **整型的存储空间** 在16位计算机中,整型通常占用2个字节的存储空间。 3. **非成员函数** C选项,友元函数不是类的成员函数,而是独立于类的函数,但可以访问类的私有和保护成员。 4. **构造函数调用次数** 当声明数组`DD a[10]`时,系统会调用类DD的构造函数10次,为每个数组元素初始化。指针`*P`不会自动调用构造函数。 5. **while循环执行次数** `while(int i=0) i--;`循环中,初始i值为0,i--后变为-1,条件不满足,因此循环执行0次。 6. **传递非常量B类对象给func函数** - 方法一:可以定义一个接受B类对象的重载版本的func函数,如`void func(B& b);` - 方法二:通过类型转换,如`func((A&)b);`,前提是类B有适当的转换构造函数。 这份面试题涵盖了计算机基础知识和C++编程的核心概念,对于准备面试的候选人来说,理解并掌握这些知识点至关重要。