6.1儿童节

6.1荣耀暑期实习

题目选自niu客面经!!! 内容来自个人整理!!!

1、pcb进程控制块

概念

用来描述和控制进程运行的一个数据结构,包含了与进程相关的信息,比如进程ID、进程状态、进程的物理地址和调度信息等;是进程的唯一标识;系统能且只能通过pcb对进程进行调度和控制;

tips: 线程也有类似的数据结构

进程相关信息:

属性 描述
唯一标识符PID 一个简单不重复的整数。
内存指针 描述了进程使用内存资源的详细情况
状态 表示当前进程的状态,比如运行态、就绪状态、阻塞状态等
优先级 表示进程在同一时间内的优先级
上下文 保存进程的CPU寄存器和内存管理信息,是支持进程调度的重要属性

2、分段和分页

分段和分页是操作系统内存管理的两种重要技术,将进程的地址空间划分为更小的单元,以便更加有效地管理内存资源。

分段

概念

分段是将进程的地址空间分为若干段,每个段有自己的段号和段内偏移量。

地址转换

逻辑地址: (段号, 段内偏移量)
物理地址: 段基址 + 段内偏移量
分页

概念

分页是将进程的地址空间分为固定大小的页,同时将物理内存分为相同大小的页框。每个页可以映射到任意一个页框。

地址转换

逻辑地址: (页号, 页内偏移量)
物理地址: 页框号 * 页大小 + 页内偏移量                         
区别比较
特性分段分页
地址空间按逻辑大小划分按固定大小分
地址结构段号+段内偏移量页号+页内偏移量
内存管理单元段表页表
内存碎片可能有外部碎片无外部碎片,可能有内部碎片
共享和保护可以对每个段进行保护和共享通常对每个页进行保护和共享

tips:有时候会结合二者实现段页式内存管理。先分段,在分页。

3、内核态和用户态

操作系统中两种重要的运行模式,用于区分操作系统核心和用户程序的运行权限和行为。主要目的是为了保护系统资源和提供稳定、安全的操作环境。

运行模式描述特点
内核态程序具有完全的访问系统硬件和软件的权限高级权限、访问系统资源、内存保护、系统调用处理异常和中断
用户态程序只能执行有限的CPU指令,并且只能访问受限的内存区域有限权限,安全性、隔离

tips:内核态和用户态的划分现代操作系统设计中的重要概念,通过这种划分,操作系统可以提供稳定、安全的运行环境、用户态通过系统调用请求内核服务,而内核则在内核态下执行请求,确保系统的安全性和稳定性。

4、tcp三次握手和四次挥手

“三次握手”如图所示:**

在这里插入图片描述

提问:

1、为什么A最后还要发送一次确认,为了防止已失效的连接请求报文突然又传送到B

2、为什么要三次?保证双方建立可靠的连接

**四次挥手如图所示:在这里插入图片描述
**

MSL:最长报文段寿命。

tips:为什么A在TIME-WAIT状态必须等待2MSL的时间?

第一:保证A最后发送的ACK报文段能够到达B

第二:防止上述“已失效报文段”出现在本链接中

5、http2

概念

是HTTP协议(是用于在Web上进行数据通信的基础协议,它定义了客户端和服务器之间如何请求和传输数据)的第二个主要版本,旨在提高web性能和效率,它通过引入新的特性和优化机制,解决http1.1的一些瓶颈。

优点特性

二进制分帧层:HTTP/2使用二进制格式传输数据,而不是HTTP/1.1的文本格式。

多路复用:一个TCP连接可以同时发送多个请求和响应,而不需要为每个请求建立单独的连接。

头部压缩:使用HPACK算法对HTTP头部进行压缩,减少了头部的传输大小。

tips:这里描述的很简单。

6、java垃圾回收

有点复杂,知识点有点多,周末补充,参考地址

7、关键字synchronized

概念

用于实现线程同步,确保在多线程环境下对共享资源的访问是安全的。实现同步的表现形式分为:代码块同步方法同步

使用场景:

1、方法同步:锁定的是调用该方法的对象,每次只能有一个线程执行该方法,其他线程必须等待。

public synchronized void synchronizedMethod() {
    // 方法体
}

2、代码块同步,描述同上

public void method() {
    synchronized (this) {
        // 代码块体
    }
}

3、静态方法同步,锁住的是该类的所有对象,也是class对象

public static synchronized void synchronizedStaticMethod() {
    // 方法体
}

8、c++和java继承的区别

C++中一个类可以同时继承多个类。

java 的类是单一继承,使用关键字extends。可以通过实现多个接口达到多继承的效果。

tips:不太熟悉C++,暂时不详细分析


六一节~
  • 21
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值