2022年牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结.docx

上传人:H****o 文档编号:57855310 上传时间:2022-11-06 格式:DOCX 页数:14 大小:50.48KB
返回 下载 相关 举报
2022年牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结.docx_第1页
第1页 / 共14页
2022年牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结.docx_第2页
第2页 / 共14页
点击查看更多>>
资源描述

《2022年牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结.docx》由会员分享,可在线阅读,更多相关《2022年牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结.docx(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选学习资料 - - - - - - - - - 综合面试 牛人整理共享的面试学问:操作系统、运算机网络、设计模式、Linux 编程,数据结构总 结分类:面试预备2022-07-29 10:01 946 人阅读评论 0 保藏举报基础篇:操作系统、运算机网络、设计模式一:操作系统1. 进程的有哪几种状态,状态转换图,及导致转换的大事;2. 进程与线程的区分;3. 进程通信的几种方式;4. 线程同步几种方式;肯定要会写生产者、消费者问题,完全消化懂得 5. 线程的实现方式 . 也就是用户线程与内核线程的区分 6. 用户态和核心态的区分;7. 用户栈和内核栈的区分;8. 内存池、进程池、线程池;c+

2、程序员必需把握 9. 死锁的概念,导致死锁的缘由. 10. 导致死锁的四个必要条件;11. 处理死锁的四个方式;12. 预防死锁的方法、防止死锁的方法;13. 进程调度算法; 周转时间= 程序终止时间- 开头服务时间、 带权周转时间= 周转时间/ 要求服务时间 14. Windows 内存治理的方式块式、页式、段式、段页式. 15. 内存连续安排方式采纳的几种算法及各自优劣;16. 动态链接及静态链接 . 17. 基本分页、恳求分页储存治理方式;18. 基本分段、恳求分段储存治理方式;19. 分段分页方式的比较各自优缺点;20. 几种页面置换算法,会算所需换页数;LRU用程序如何实现? 21.

3、 虚拟内存的定义及实现方式;22. 操作系统的四个特性;23. DMA;24. Spooling;25. 外存安排的几种方式,及各种优劣;二:运算机网络1. 电路交换与分组交换的区分?优劣对比;2. OSI有哪几层,会画出来,知道主要几层的各自作用;3. TCP/IP有哪几层,会画出来,知道全部层数的作用,会列举各层主要的协议名称;4. 硬件 MAC地址的概念及作用;5. ARP协议的用途及算法、在哪一层上会使用arp ?6. CRC冗余校验算法,反码和检验算法;7. 如何实现透亮传输;8. 知道各个层使用的是哪个数据交换设备;9. 路由表的内容;10. 分组转发算法;(交换机、路由器、网关)

4、11. IP 报文的格式,格式的各个字段的含义要懂得;名师归纳总结 12.MTU 的概念,啥叫路径MTU? MTU 发觉机制, TraceRoute明白 ;第 1 页,共 7 页- - - - - - -精选学习资料 - - - - - - - - - 13.RIP协议的概念及算法;14.ICMP 协议的主要功能;15.组播和广播的概念,IGMP 的用途; 环回地址、广播地址 16.Ping 协议的实现原理,ping 命令格式;17. 子网划分的概念,子网掩码;18. IP 地址的分类,如何划分的,及会运算各类地址支持的主机数;19.DNS 的概念,用途,DNS查询的实现算法;20. TCP与

5、 UDP 的概念,相互的区分及优劣;21.UDP 报文的格式,字段的意义;22. TCP 报文的格式,字段的意义;23.TCP通过哪些措施,保证传输牢靠?24. 三次握手,四次断开过程;25. TIME_WAIT 状态的概念及意义;26.滑动窗口协议 与停止等待协议的区分;27. TCP的流量掌握和拥塞掌握实现原理 会画拥塞掌握的典型图 ;28.TCP的快速重传与快速复原算法;29.TFTP 与 FTP的区分;30.堵塞方式和非堵塞方式,堵塞connect 与非堵塞 connect; 比较难,有爱好可以明白 31. HTTP基本格式;(java 程序员必需把握)三:设计模式1. 各种常用模式的

6、用途,使用方法 类图 ;2. 单例模式的双重检查实现;3. MVC 模式提高篇: WIN32、MFC 与 Linux 一: WIN32 1. Win32 应用程序的基本类型 . 2. 创建 win32 窗口程序的几个步骤,及使用到的函数;3. nmake 与 makefile;4. 有哪些字符集?Win32 对于各种字符集如何进行兼容及转换?wchar_t 、TCHAR、TEXT ;5. 怎么创建一个子窗口?在哪进行设置?6. 窗口类的分类,如何创建一个应用程序全局窗口类;7. Win32 窗口程序运行机制与掌握台程序的运行机制有何区分 . 8. Getmessage 函数的作用,与 Peek

7、message函数的区分;9. 发送 WM_QUIT 消息使程序终止的内部过程;11. TranslateMessage 及 DispatchMessage 的作用;12. SendMessage 与 PostMessage的区分;13. Win32 消息机制猎取消息的过程先查看什么消息?再查看什么消息. 14. 知 道 有 哪 几 类 主 要 的 消 息 ; WM_CREATE, WM_DESTROY, WM_SIZE, WM_SYSCOMMAND, WM_COMMAND, WM_PAINT, 鼠标消息 , 键盘消息 ;15. 定时器如何使用;16. 用户自定义消息如何定义;17. 创建菜单

8、、设置菜单的函数,在哪处理菜单命令的消息;18. 加速键如何使用?19. GDI 绘图对象,使用的步骤,及函数;名师归纳总结 - - - - - - -第 2 页,共 7 页精选学习资料 - - - - - - - - - 20. 使用位图的步骤及用到的主要函数;21. 可用于文字绘制的 API函数;22. 有模式对话框与无模式对话框的区分,创建步骤;收到的创建消息是什么?23. 子控件和父窗口通过什么进行通信?父窗口在哪里处理子窗口发送的消息?24. 有哪些常见的子控件?静态框、编辑框、按钮、listbox 、comboBox、滚动条 25. 什么样的控件支持自绘制?26. 动态库与静态库的

9、区分;27. Win32 里面怎样用静态库?C+程序在引用c 的静态库时,需要留意什么?28. Win32 里面动态库有哪几种导出方式,有哪几种导入方式?(留意 29. Win32 里面文件打开和关闭的 API;30. Windows 地址空间的划分;c+的导出方式)31. Windows 内存使用的几种方式及相应的函数虚拟内存、堆内存、栈内存;32. Malloc 内部调用 A 函数, A 函数调用 B 函数; A 和 B 分别是什么?33. 内存映射文件的作用;主要函数;34. 创建进程和打开进程用什么函数?有什么区分?35. 创建线程用什么函数?试比较_beginthreadex 、_b

10、eginthread 和 CreateThread 的区分;36. 关闭线程和关闭进程的函数分别是什么?试比较 _endthreadex 、_endthread 和 ExitThread 的区分;36、37 解答:1)中有很具体地介绍;_beginthreadex 是微软的 C/C+运行时库函数,CreateThread 是操作系统的函数;_beginthreadex 通过调用 CreateThread 来实现的,但比CreateThread 多做了很多工作;留意:如要创建一个新线程,肯定不要使用 CreateThread,而应使用 _beginthreadex. Why.考虑标准 C运行时库

11、的一些变量和函数,如errno ,这是一个全局变量;全局变量用于多线程会出什么事,你肯定知道的了;故必需存在一种机制,使得每个线程能够引用它自己的 errno 变量,又不触及另一线程的 errno 变量 ._beginthreadex 就为每个线程安排自己的 tiddata 内存结构; 该结构储存了很多像 errno 这样的变量和函数的值、地址(自己看去吧);通过线程局部储备将 tiddata 与线程联系起来;具体实现在 Threadex.c 中有;终止线程使用函数 _endthreadex 函数,释放掉线程的 tiddata数据块;2)说明一下理论上的区分:CreateThread、 _be

12、ginthread 和_beginthreadex 都是用来启动线程的,但大家看到 oldworm 没有供应_beginthread 的方式,缘由简洁,_beginthread 是_beginthreadex 的功能子集,虽然 _beginthread 内部是调用 _beginthreadex 但他屏蔽了象安全特性这样的功能,所以 _beginthread 与 CreateThread 不是同等级别, _beginthreadex和 CreateThread 在功能上完全可替代,我们就来比较一下_beginthreadex与CreateThread. CRT的函数库在线程显现之前就已经存在,所

13、以原有的CRT不能真正支持线程,这导致我们在编程的时候有了 CRT库的挑选,在 MSDN 中查阅 CRT的函数时都有:Libraries LIBC.LIB Single thread static library, retail version LIBCMT.LIB Multithread static library, retail version MSVCRT.LIB Import library for MSVCRT.DLL, retail version 这样的提示!对于线程的支持是后来的事!这也导致了很多CRT的函数在多线程的情形下必需有特别的支持,不能简洁的使用CreateThre

14、ad 就OK;名师归纳总结 大多的 CRT函数都可以在CreateThread 线程中使用, 看资料说只有signal函数不行以, 会导致进程终第 3 页,共 7 页- - - - - - -精选学习资料 - - - - - - - - - 止!但可以用并不是说没有问题!有些 CRT的函数象 malloc, fopen, _open, strtok, ctime, 或 localtime 等函数需要特地的线程局部储备的数据块,这个数据块通常需要在创建线程的时候就建立,假如使用 CreateThread,这个数据块就没有建立, 然后会怎样呢?在这样的线程中仍是可以使用这些函数而且没有出错,实际上

15、函数发觉这个数据块的指针为空时,会自己建立一个,然后将其与线程联系在一起,这意味着假如你用CreateThread 来创建线程,然后使用这样的函数,会有一块内存在不知不觉中创建,遗憾的是,这些函数并不将其删除,而 CreateThread 和 ExitThread 也无法知道这件事,于是就会有 Memory Leak,在线程频繁启动的软件中 比如某些服务器软件 ,迟早会让系统的内存资源耗尽!_beginthreadex 内部也调用 CreateThread和_endthreadex 就对这个内存块做了处理,所以没有问题! 不会有人有意用 CreateThread 创建然后用 _endthrea

16、dex 终止吧, 而且线程的终止最好不要显式的调用终止函数,自然退出最好! 谈到 Handle 的问题,_beginthread 的对应函数 _endthread 自动的调用了 CloseHandle,而_beginthreadex的对应函数 _endthreadex 就没有,所以 CloseHandle 无论如何都是要调用的不过 _endthread 可以帮你执行自己不必写,其他两种就需要自己写!Jeffrey Richter 剧烈举荐尽量不用显式的终止函数,用自然退出的方式,自然退出当然就肯定要自己写 CloseHandle 37. Waitforsingleobject与 Waitfor

17、multiobjects的区分; Waitforsingleobject 的其次个参数为0 表示什么意思 . 38. 线程局部储备 TLS的意义 ,如何指定一个变量的 TLS属性;39. Win32 线程同步供应的方式,及主要函数为什么?40. 供应的同步措施中哪些是内核对象?试比较互斥量和临界区;二: MFC 1. MFC 包含哪几类程序?其中 MFC应用程序又包含哪几类?2. MFC 的中的大多数类都继承自哪个类?3. MFC 主要要用到哪几个类?及其各个类的作用;4. MFC 中有哪 6 类核心机制? Cobject 中封装了哪些机制?5. 在哪个类的什么函数中进行 MFC程序初始化?相

18、当于 main 功能的函数;6. MFC 应用程序的启动机制的实现;(几个步骤及相关函数)7. 窗口的创建及窗口处理函数机制的实现;(几个步骤及相关用到函数)8. 消息映射机制的原理及实现;宏;查找消息处理函数的几个步骤及其函数 9. MFC 的消息分类;自注册消息用什么函数进行注册?消息映射宏是什么?10. MFC 菜单、工具栏、状态栏所用的类是什么?11. 怎么定义一个视图窗口?12. 划分窗口使用什么类?划分窗口有哪两类,有什么区分?13. 运行时类信息 机制的宏,及原理;CRuntimeClass的内容, isKindOf 实现方法;14. 动态创建 机制的宏,及实现;与运行时类信息在

19、内容添加上的区分?15. 消息的派发会经过哪几个类?一般在哪个类里进行处理?SetActiveView 的作用;16. 单文档、多文档模板类是什么?储存模板类用什么函数?新建模板用什么函数?17. 单文档视图的创建过程及所用到的相关函数;18. MFC 绘图有哪几类 DC?各自的类名,及区分;19. MFC 有哪几类绘图对象?各自的类名;名师归纳总结 20. MFC 有哪几类数据集合类?CMAP 的底层实现?第 4 页,共 7 页- - - - - - -精选学习资料 - - - - - - - - - 21. MFC 的文件类是什么?文件查找类是什么?22. 序列化机制的宏,怎么使用?执行

20、和时进行的内部操作及其相应函数;23. MFC 的对话框的种类,各自怎么使用?及相关函数;24. 定义对话框数据交换的步骤,及使用方法,实现原理;25. 通用对话框有哪些,试举例;26. MFC 常用的通用控件有哪些?举出类名;27. MFC 的动态库有哪几种类型?扩展库一般用来做什么?28. MFC 的线程有哪几类?相互有什么区分?各自的创建方法是什么?29. VC环境下可以使用哪几类socket? 其中 MFC 的 socket 类 有哪几种, 各自区分?类名是什么?用什么函数初始化 MFC 的 socket 库;三: Linux 基本命令1. 肯定路径用什么符号表示?当前目录、上层目录用

21、什么表示?主目录用什么表示. 切换目录用什么命令?2. 怎么查看当前进程?怎么执行退出?怎么查看当前路径?3. 怎么清屏?怎么退出当前命令?怎么执行睡眠?怎么查看当前用户 令?4. Ls 命令执行什么功能?可以带哪些参数,有什么区分?5. 建立软链接 快捷方式 ,以及硬链接的命令;id?查看指定帮忙用什么命6. 目录创建用什么命令?创建文件用什么命令?复制文件用什么命令?7. 文件权限修改用什么命令?格式是怎么样的?8. 查看文件内容有哪些命令可以使用?9. 随便写文件命令?怎么向屏幕输出带空格的字符串,比如”hello world ” . 10. 终端是哪个文件夹下的哪个文件?黑洞文件是哪个

22、文件夹下的哪个命令?11. 移动文件用哪个命令?改名用哪个命令?12. 复制文件用哪个命令?假如需要连同文件夹一块复制呢?如何需要有提示功能呢?13. 删除文件用哪个命令?假如需要连目录及目录下文件一块删除呢?删除空文件夹用什么命令?14. Linux 下命令有哪几种可使用的通配符?分别代表什么含义 . 15. 用什么命令对一个文件的内容进行统计?行号、单词数、字节数 16. Grep 命令有什么用?如何忽视大小写?如何查找不含该串的行 . 17. Linux 中进程有哪几种状态?在ps 显示出来的信息中,分别用什么符号表示的?18. 怎么使一个命令在后台运行 . 19. 利用 ps 怎么显示

23、全部的进程. 怎么利用 ps 查看指定进程的信息?20. 哪个命令特地用来查看后台任务. .把停下的后台任务在后台执行起来用什么命令. 21. 把后台任务调到前台执行使用什么命令22. 终止进程用什么命令. 带什么参数 . 23. 怎么查看系统支持的全部信号?名师归纳总结 24. 搜寻文件用什么命令. 格式是怎么样的. . 第 5 页,共 7 页25. 查看当前谁在使用该主机用什么命令. 查找自己所在的终端信息用什么命令26. 使用什么命令查看用过的命令列表. 27. 使用什么命令查看磁盘使用空间?闲暇空间呢 . 28. 使用什么命令查看网络是否连通. 29. 使用什么命令查看ip 地址及接口

24、信息?- - - - - - -精选学习资料 - - - - - - - - - 30. 查看各类环境变量用什么命令 . 31. 通过什么命令指定命令提示符. . 怎么对其进行设置及添加. 32. 查找命令的可执行文件是去哪查找的33. 通过什么命令查找执行命令 四: Linux 编程.34. 怎么对命令进行取别名?1. 列举 Linux 内存治理相关的几个函数,各自有什么功能?2. GCC只编译的选项是什么?只进行预处理的选项是什么?在命令行定义宏的选项是什么?3. Linux 静态库的使用, 怎么创建一个静态库?静态库的命名规范;4. nm 工具的作用, ldd 工具的作用;5. Linu

25、x 动态库的使用, 怎么创建一个动态库?怎么使用一个静态库?静态库文件的后缀名是什么?动态库文件的后缀名是什么?怎么使用一个动态库?动态库的命名规范?系统默认的动态库的查找路径?动态库显示连接所使用的系统库是什么?6. Linux 下 make 与 makefile;用什么参数指定 makefile 文件?什么是默认的 makefile 文件;7. 在哪个文件夹下存有进程运行时的全部信息?8. 每个程序默认打开哪三个文件设备?9. 操作文件描述符的读写函数是什么?打开文件描述符以及关闭文件描述符的函数?10. Fcntl 函数主要的几个作用;11. 创建进程的几个函数,及各自区分;12. 父进

26、程先终止,子进程会变为?子进程先终止,子进程会变为?13. 怎么使父进程回收子进程?相关的几个函数;14. 子进程在创建时与父进程的内存资源的复制问题;15. 中断信号、终止信号、定时器信号的宏是什么?16. 在程序中注册信号和发送信号用什么函数 . 17. 信号的牢靠与不行靠的含义;哪些信号是牢靠的?哪些信号是不行靠的?18. 信号屏蔽用什么函数?SigSuspend的作用?Sigpending 的作用?19. 信号处理函数处理信号时是否会被信号中断?20. 最新版本的信号发送与处理函数?与老版本的发送与数据函数有什么区分?21. Linux 下进程有哪些通信方式 IPC?22. TCP服务

27、器编程模型;23. UDP 服务器编程模型;24. TCP编程特点,由于每次不定长数据到达,就一般使用什么选项?25. Selected 模型是什么?相比而言多进程实现方式有什么区分?Selected、epoll 模型、 poll 模型的区别;26. 常用的 socket 选项有哪些?利用哪个函数来设置 socket 选项?27. 怎么发送和设置带外 OOB数据?28. Linux 下多线程的库是什么?子线程终止时使用的函数 . 利用哪个函数创建线程?利用哪个函数强制终止线程?主线程等待29. 线程怎样在被迫退出时能做一些善后处理?以及怎么用 linux 特有的方式处理?算法篇:算法与数据结构

28、一:算法1. 算法的几个特点是什么;2. 算法复杂性的定义;大 O、 、小 o 分别表示的含义;3. 递归算法的定义、递归算法的两要素;4. 分治算法的思想,经典的分治算法全排列、二分搜寻、归并排序、快速排序、线性时间挑选、最名师归纳总结 - - - - - - -第 6 页,共 7 页精选学习资料 - - - - - - - - - 接近点对问题 ;5. 动态规划算法解题框架,动态规划算法的两个要素是什么?备忘录方法是什么?6. 经典的动态规划问题矩阵连乘问题、最长公共子序列问题、0-1 背包问题 ;7. 贪心算法的思想,贪心算法的两个要素;8. 经典的贪心问题 活动支配问题、背包问题、装载

29、问题、哈夫曼编码、单源最短路径、最小生成树 问题 ;9. 回溯法的思想,回溯法中有哪两种典型的模型;10. 经典的回溯算法n 后问题、 0-1 背包问题、旅行售货商问题;11. 分支限界法思想,有哪两种分支限界法;12. 经典的分支限界算法0-1 背包问题、旅行售货商问题;二:数据结构1. 数据结构的定义;2. 栈的两个应用:括号匹配和表达式的运算;是怎么应用的?表达式运算用的是哪种表达方式?有 什么好处 . 3. 字符串匹配算法:朴实的匹配算法、KMP 算法;4. 二叉树前序、中序、后序递归遍历算法;二叉树前序非递归遍历算法;5. 堆,建堆算法,堆的插入和删除算法,堆排序;6. 哈希;哈希函

30、数的有哪些种?余数的取法?处理冲突的方法?闭散列方法有哪些?7. 二叉搜寻树的搜寻、插入、删除;时间复杂度;8. 二叉平稳树的插入结点的原理,有哪几种旋转方式?分别适用于哪种情形;分析二叉平稳树的时 间复杂度;9. 红黑树的定义,红黑树的性能分析和与二叉平稳树的比较;10. 图有哪些储存表示;11. 链表插入排序、链表归并排序;12. 常见的有哪几种排序算法,试比较其时间复杂度,以及是否稳固,及各自使用的情形;13. 常用安排排序有哪几种?14. 外部排序的过程;基数排序的定义,分类及原理;15. B 树、 B+树、 Trie 的概念及用途,添加删除结点的原理;名师归纳总结 - - - - - - -第 7 页,共 7 页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁