保研面试408复习 1——操作系统、计网、计组

2024-05-05 17:12

本文主要是介绍保研面试408复习 1——操作系统、计网、计组,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 1、操作系统
    • 一、操作系统的特点和功能
    • 二、中断和系统调用的区别
  • 2、计算机组成原理
    • 一、冯诺依曼的三个要点
    • 二、MIPS(每秒百万条指令)
    • 三、CPU执行时间和CPI
  • 3、计算机网络
    • 一、各个层常用协议
    • 二、网络协议实验——数据链路层
      • a.网络速率表示
      • b.数据链路层结构
      • c.MAC帧结构
      • d.TCP协议
    • 三、物理层

标记文字记忆,加粗文字注意,普通文字理解。

1、操作系统

一、操作系统的特点和功能

操作系统的基本特征包括并发、共享、虚拟和异步。
操作系统最基本的特征是并发和共享。

  • 特点

    • 并发:并发是指两个或多个时件在同一时间间隔内发生。操作系统的并发性是通过分时得以实现的。引入进程的目的之一是使程序能并发执行。(如果没有引入不同进程,不同任务都只能顺序执行)
    • 共享资源共享即共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。
      • 互斥共享方式:(临界资源)比如打印机,磁带机,规定一段时间内只能允许一个进程访问该资源,一个进程释放后另一个进程才能进行访问,资源独占。如果不是这样,打印A的时候打印B也可以进行,那么一张A4纸上杂乱无章。
      • 同时访问方式:比如磁盘,虽然磁盘一个时刻只能由一个进程访问,但是可以并发访问,分时共享。
    • 虚拟:实现虚拟的技术称为虚拟技术。比如虚拟处理器,虚拟内存,虚拟外部设备。让每个进程感觉自己拥有独立的CPU/内存空间/外设等
    • 异步:操作系统以不可预知的速度向前推进。
  • 功能

    • 操作系统作为计算机系统资源的管理者:
      • 处理机管理
      • 存储器管理
      • 文件管理
      • 设备管理
    • 操作系统作为用户与计算机硬件系统之间的接口
    • 操作系统实现了对计算机资源的扩充
      • 确实是这样的,操作系统实现了进程并发,控制资源共享,只有一个硬件却让不同进程感受到独立的空间设备;这都是操作系统的功能,对计算机资源的扩充。

二、中断和系统调用的区别

中断(Interrupt)和系统调用(System Call)都是操作系统中用于处理任务和管理硬件与应用程序之间交互的机制,但它们的触发方式和目的有所不同。

中断可以分为两类:

  1. 硬件中断:由外部硬件设备产生,如键盘输入、鼠标移动、网络数据包接收、脉冲信号等。
    • 硬中断是实实在在的硬件发出的中断,cpu检测到发生中断后,保护现场,通过中断类型码在中断向量表中查找中断向量地址,执行中断服务程序,之后,重新选择进程进行调度。
  2. 软件中断:由程序性故障或特殊指令(如除零错误、缺页故障、运算溢出、系统调用)触发。
    • 自陷就是指系统调用。因为调用系统调用,通常指陷入。系统调用指令通常叫作陷入指令(访管指令)
    • 异常:异常似乎包含了所有错误的情况,包括程序性错误和硬件错误,也包括了系统调用。异常包含了软件中断。异常包含了程序性出错的情况(也是软件中断的一部分),比如故障(除零故障,运算溢出),也包含了用户系统功能调用。还包含了无法避免的硬件故障终止执行。
      在这里插入图片描述

系统调用是软件中断的一种,是由用户程序主动触发的,用于请求操作系统提供服务。

比如汇编程序中的返回操作系统的系统功能调用:

MOV AH 4CH
INT 21H

无论如何,发生中断时,要从目态(用户态)转向管态(核心态)。

2、计算机组成原理

一、冯诺依曼的三个要点

在这里插入图片描述

  • (1)所有种类的计算机都有相同的五大部件:运算器、控制器、存储器、输入和输出。
    • 比如CPU运算部分(运算器);内存(存储器);键盘(输入);显示器(输出);CPU中的指令解码,解读指令的具体功能(控制器)
  • (2)采用二进制
  • (3)程序和原始数据先存入存储器,然后再启动计算机工作。(存储程序和数据)

二、MIPS(每秒百万条指令)

MIPS实际上表示的是,每秒能执行多少条指令,是一种衡量计算机处理器性能的指标。
比如1.8MIPS,表示的是1.8(百万条/秒),即 1.8 ∗ 1 0 6 ( 条 / 秒 ) 1.8*10^6(条/秒) 1.8106(/)

所以MIPS的计算公式是: M I P S = 指令条数 执行时间 × 1 0 6 MIPS = \frac{指令条数}{执行时间×10^6} MIPS=执行时间×106指令条数
本质上就是将执行速度除以 1 0 6 10^6 106单位转换成 百万条/秒。

三、CPU执行时间和CPI

对于一个任务,CPU执行时间是指运行在该任务在CPU上花的时间。
响应时间(执行时间):计算机完成某任务所需要的总时间。<用户真正感受到的时间>
吞吐率指的是单位时间完成的任务数量。

C P U 执行时间 = 总时钟周期数 × 时钟周期时间 CPU执行时间 = 总时钟周期数 × 时钟周期时间 CPU执行时间=总时钟周期数×时钟周期时间
C P I 是平均每条指令的平均时钟周期数 CPI是平均每条指令的平均时钟周期数 CPI是平均每条指令的平均时钟周期数
C P U 执行时间 = 总指令数 × C P I × 时钟周期时间 CPU执行时间 = 总指令数 × CPI × 时钟周期时间 CPU执行时间=总指令数×CPI×时钟周期时间


3、计算机网络

一、各个层常用协议

  • 应用层:HTTP、RIP、FTP、SMTP、POP3、IMAP、DHCP、BGP、DNS
    • 建立在UDP上的:DNS、RIP、DHCP
    • 建立在TCP上的:HTTP、BGP、FTP、SMTP、POP3
  • 传输层:TCP、UDP
  • 网络层:IP、IPv6、ICMP、[ARP]、OSPF
  • 数据链路层:HDLC、PPP、CSMA/CD

下面是各个层级及其协议的详细解释:

  • 应用层协议
  1. HTTP (超文本传输协议) - 用于网页浏览,基于TCP,提供网页数据的请求和传输。
  2. RIP (路由信息协议) - 一种动态路由协议,使用UDP进行传输。它通过定期广播更新路由信息,限制在较小的网络中使用。
  3. FTP (文件传输协议) - 用于文件的上传和下载,建立在TCP之上,提供可靠的数据传输。
  4. SMTP (简单邮件传输协议) - 用于发送邮件,建立在TCP上,确保邮件可靠传输至目标邮件服务器。
  5. POP3 (邮局协议版本3) - 用于接收邮件,建立在TCP上,允许邮件客户端下载服务器上的邮件。
  6. IMAP (互联网消息访问协议) - 类似于POP3,但提供更复杂的邮件管理功能(如在服务器上保留邮件),也建立在TCP上。
  7. DHCP (动态主机配置协议) - 使用UDP,自动分配IP地址及其他网络配置(如子网掩码和默认网关)给网络设备。
  8. BGP (边界网关协议) - 用于大规模网络(如互联网)中的路由决策,建立在TCP上,确保路由信息的稳定和可靠。
  9. DNS (域名系统) - 将域名转换为IP地址,使用TCP和UDP(主要是UDP,TCP用于长查询或区域传输)。
  • 传输层协议
  1. TCP (传输控制协议) - 提供面向连接的、可靠的数据传输服务。通过数据确认和重传机制保证数据完整性。
  2. UDP (用户数据报协议) - 提供无连接的、尽最大努力交付的通信服务。UDP不保证数据包的顺序或完整性,因此传输速度比TCP快,但不那么可靠。
  • 网络层协议
  1. IP (互联网协议) - IP是为计算机网络中的数据包交换提供无连接的服务。
  2. IPv6 - 下一代互联网协议,解决了IPv4地址耗尽的问题,并提供了改进的安全性和其他特性。
  3. ICMP (互联网控制消息协议) - 用于发送错误消息和网络通信状态的查询。
  4. ARP (地址解析协议) - 用于将网络层的IP地址解析为数据链路层的物理地址。
  5. OSPF (开放最短路径优先) - 一种内部网关协议,使用链路状态路由算法,动态更新网络路由信息。
  • 数据链路层协议
  1. HDLC (高级数据链路控制) - 一种点对点协议,用于安全的数据传输。
  2. PPP (点对点协议) - 另一种点对点数据链路协议,常用于直接连接的两个网络节点之间。
  3. CSMA/CD (载波监听多路访问/碰撞检测) - 以太网中使用的一种介质访问控制方法,用于控制网络上的设备在同一信道上发送数据的方式。

二、网络协议实验——数据链路层

a.网络速率表示

  • 1000兆宽带:通常指的是1000 Mbps(兆比特每秒)的网络带宽。在通信领域,小写的’b’通常表示比特(bit),大写的’B’表示字节(Byte)。因此,1000Mb指的是每秒传输1000兆比特。

b.数据链路层结构

  • MAC(媒体访问控制)子层:这是数据链路层的必需部分,负责管理协议访问的物理传输媒介。
  • LLC(逻辑链路控制)子层:这是数据链路层的一个可选部分,用于提供服务质量和流控制。LLC的以太网帧,协议字段是长度字段,因此LLC子层存在的目的是如果在局域网内只需要数据链路层,它类型字段不需要协议。
  • 这两个层不可能同时存在。

c.MAC帧结构

  • 最大和最小帧长:以太网帧的最大长度是1518字节(包括18字节的头部和1500字节的最大传输单元MTU)。最短帧长是64字节,这个长度包括从帧开始到CRC(循环冗余校验)前的全部字节,是为了确保在碰撞检测系统(CSMA/CD)中能检测到所有碰撞。
  • CRC:循环冗余校验是一种错误检测码,用于检测传输或存储过程中的错误。CRC通常由发送设备计算并附加到数据帧的末尾,接收设备再次计算并对照以验证数据的完整性。CRC自身不被上层软件如协议分析器截包所“看到”,因为它在网络设备层面处理。

d.TCP协议

  • 序列号:在TCP连接中,每个字节的数据都被赋予一个序列号。序列号用于保证数据传输的顺序性和完整性。
  • 传输字节量:TCP头部包含一个序列号,它标记了发送方已发送的数据的总量,用于数据的重组和确保数据的顺序。

三、物理层

王道计网:物理层

  • 传输介质:双绞线、同轴电缆、光纤
  • 物理层设备:中继器、集线器(多口集线器)
  • 通信方式:单工、半双工、全双工
  • 码元:一个M进制码元,表示一个码元有M种离散状态。需要表示M种状态,最少需要多少bit?
  • 传输速率限制:奈氏准则和香农定理
  • 信号类型:基带信号和宽带信号
    • 基带信号:在数字信道上传输的信号
    • 宽带信号:在模拟信道上传输的信号
  • 数据编码方式:非归零编码、归零编码、曼彻斯特编码(上1下0)、差分曼彻斯特编码
  • 数据交换方式:电路交换、报文交换、分组交换
    • 分组交换:数据报交换、虚电路交换
    • 电路交换资源独占、虚电路交换资源共享。

这篇关于保研面试408复习 1——操作系统、计网、计组的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/962223

相关文章

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

计组基础知识

操作系统的特征 并发共享虚拟异步 操作系统的功能 1、资源分配,资源回收硬件资源 CPU、内存、硬盘、I/O设备。2、为应⽤程序提供服务操作系统将硬件资源的操作封装起来,提供相对统⼀的接⼝(系统调⽤)供开发者调⽤。3、管理应⽤程序即控制进程的⽣命周期:进程开始时的环境配置和资源分配、进程结束后的资源回收、进程调度等。4、操作系统内核的功能(1)进程调度能⼒: 管理进程、线

秋招最新大模型算法面试,熬夜都要肝完它

💥大家在面试大模型LLM这个板块的时候,不知道面试完会不会复盘、总结,做笔记的习惯,这份大模型算法岗面试八股笔记也帮助不少人拿到过offer ✨对于面试大模型算法工程师会有一定的帮助,都附有完整答案,熬夜也要看完,祝大家一臂之力 这份《大模型算法工程师面试题》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

Linux操作系统 初识

在认识操作系统之前,我们首先来了解一下计算机的发展: 计算机的发展 世界上第一台计算机名叫埃尼阿克,诞生在1945年2月14日,用于军事用途。 后来因为计算机的优势和潜力巨大,计算机开始飞速发展,并产生了一个当时一直有效的定律:摩尔定律--当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。 那么相应的,计算机就会变得越来越快,越来越小型化。

java面试常见问题之Hibernate总结

1  Hibernate的检索方式 Ø  导航对象图检索(根据已经加载的对象,导航到其他对象。) Ø  OID检索(按照对象的OID来检索对象。) Ø  HQL检索(使用面向对象的HQL查询语言。) Ø  QBC检索(使用QBC(Qurey By Criteria)API来检索对象。 QBC/QBE离线/在线) Ø  本地SQL检索(使用本地数据库的SQL查询语句。) 包括Hibern

【408数据结构】散列 (哈希)知识点集合复习考点题目

苏泽  “弃工从研”的路上很孤独,于是我记下了些许笔记相伴,希望能够帮助到大家    知识点 1. 散列查找 散列查找是一种高效的查找方法,它通过散列函数将关键字映射到数组的一个位置,从而实现快速查找。这种方法的时间复杂度平均为(

贝壳面试:什么是回表?什么是索引下推?

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50+)中,最近有小伙伴拿到了一线互联网企业如得物、阿里、滴滴、极兔、有赞、希音、百度、网易、美团的面试资格,遇到很多很重要的面试题: 1.谈谈你对MySQL 索引下推 的认识? 2.在MySQL中,索引下推 是如何实现的?请简述其工作原理。 3、说说什么是 回表,什么是 索引下推 ? 最近有小伙伴在面试 贝壳、soul,又遇到了相关的

毕业前第二次面试的感慨

距面试已经过去了有几天了,我现在想起来都有说多的恨感慨。 我一直都是想找刚刚起步的企业,因为这能让我学到更多的东西,然而正好有一家企业是刚起步的,而且他还有自己的产品专利,可以说这是一家,即是创业又是刚起步的公司,这家公司回复了我投给他的简历,这家企业想进一步了解我的情况,因为简历上我符合这家企业的基本要求,所以要进一步了解。 虽然面试的过程中,他给我的面试题,我做得并不是很理想,

腾讯社招面试经历

前提:本人2011年毕业于一个普通本科,工作不到2年。   15号晚上7点多,正在炒菜做饭,腾讯忽然打电话来问我对他们的Linux C++的职位是否感兴趣,我表达了我感兴趣之后,就开始了一段简短的电话面试,电话面试主要内容:C++和TCP socket通信的一些基础知识。之后就问我一道算法题:10亿个整数,随机生成,可重复,求最大的前1万个。当时我一下子就蒙了,没反应过来,何况我还正在烧

完整的腾讯面试经过

从9月10号开始到现在快两个月了,两个多月中,我经历数次面试和笔试,在经历这些的同时积累了不少的经验,也学到了不少东西,在此把它记录下来,算是和一起找工作中的同学一起共勉吧。我是本校的学生,专业是机械制造及其自动化,找工作的主要目标是计算机软件类和机械制造方向的国内的企业,所以意向去外企的同学就不必浪费时间看这些面经啦,想去国内IT企业的同学可以继续看下去。本贴中我把最近的腾讯面试经过写下