Skip to content
Self-Knowing

来点八股

约 5520 个字 预计阅读时间 18 分钟

Reference

易俊泉的操作系统:简答概念总结

操作系统与计算机网络 - 小角龙的学习记录

四选二

数据仓库和数据库的区别

  1. 数据库是面向事务的设计,数据仓库是面向主题设计的。
  2. 数据库一般存储业务数据,数据仓库存储的一般是历史数据
  3. 数据库设计是尽量避免冗余。数据仓库在设计是有意引入冗余,依照分析需求,分析维度、分析指标进行设计。
  4. 数据库是为捕获数据而设计,数据仓库是为分析数据而设计。

CNN模型

卷积层:

  • 特性:拥有局部感知机制,权值共享
  • 目的:进行图像特征提取。

池化层:

  • 目的:对特征图进行稀疏处理,减少数据运算量。
  • 方法:求最大值或求平均数

CNN几层:

  • 输入层,卷积层,激活层,池化层,全连接层,输出层

常用的神经网络

神经网络有多种不同的类型,每种类型根据其架构和应用领域的不同而设计。以下是一些常见类型的神经网络及其简要说明:

卷积神经网络(Convolutional Neural Networks, CNN)

  • 特点:特别适合处理具有网格结构的数据,如图像。
  • 应用:图像和视频识别、图像分类、医学图像分析。

循环神经网络(Recurrent Neural Networks, RNN)

  • 特点:能够处理序列数据,具有记忆功能,可以利用历史信息。
  • 应用:语言模型、文本生成、语音识别。

生成对抗网络(Generative Adversarial Networks, GAN)

  • 特点:由生成器和判别器组成,通过对抗过程学习生成数据。
  • 应用:图像生成、数据增强、风格迁移。

Transformer

  • 特点:基于自注意力机制,处理序列数据时不需要循环结构。
  • 应用:自然语言处理(NLP)领域的翻译、文本摘要、情感分析等。

图神经网络(Graph Neural Networks, GNN)

  • 特点:专门处理图结构数据,能够捕捉节点间的依赖关系。
  • 应用:社交网络分析、分子结构识别、推荐系统。

Http 和 Https 的区别

  • HTTP 和 HTTPS 之间的主要区别在于 安全性

  • HTTPS 在 HTTP 与 TCP 层之间加入了 SSL/TLS 协议,支持 信息加密,校验机制,身份证书

    • HTTP 是明文传输,默认端口是 80

    • HTTPS 需要向 CA(证书权威机构)申请 SSL 证书。

  • HTTPS 采用的是对称加密和非对称加密结合的「混合加密」方式:

    • 在通信建立前采用非对称加密的方式交换「会话秘钥」,后续就不再使用非对称加密。

    • 在通信过程中全部使用对称加密的「会话秘钥」的方式加密明文数据。

非对称加密算法

  • 非对称加密算法 有两个密钥:

    • 一个是公钥,这个是可以公开给所有人的;

    • 一个是私钥,这个必须由本人管理,不可泄露。

  • 这两个密钥可以双向加解密的,比如可以用公钥加密内容,然后用私钥解密,也可以用私钥加密内容,公钥解密内容。

  • 流程的不同,意味着目的也不相同:

    • 公钥加密,私钥解密。这个目的是为了保证 内容传输的安全,因为被公钥加密的内容,其他人是无法解密的,只有持有私钥的人,才能解密出实际的内容;

    • 私钥加密,公钥解密。这个目的是为了保证 消息不会被冒充,因为私钥是不可泄露的,如果公钥能正常解密出私钥加密的内容,就能证明这个消息是来源于持有私钥身份的人发送的。

全连接神经网络的参数个数

image-20240325222539251

有多少个线代表权重,多少个代表偏置

  • 权重是每个神经元都和上一层连接

  • 偏置是每个神经元 1 个

给一张图片大小,和卷积核大小,求卷积后的图片大小

image-20240325225620567

TCP

传输控制协议(TCP)是一种 面向连接的、可靠的、基于字节流 的传输层通信协议。旨在提供可靠的端到端数据传输服务

  • 可靠传输:超时重传,检验和,滑动窗口控制,拥塞控制

操作系统

第一章

什么是操作系统

操作系统是用于管理计算机硬件和软件资源,方便用户使用的程序和数据集合。

操作系统的作用是什么

  1. 计算机软硬件资源的管理者
  2. 方便用户使用计算机软硬件资源
  3. 执行用户程序,使用户问题更易解决

什么是脱机 I/O

I/O操作是在外围机的控制下完成,使用磁带作为输入输出的终结,不需要在计算机上进行输入输出

单道批处理系统的特征

单道姓,顺序性,自动性

缺点:CPU于 I/O设备忙闲不均

什么是中断

中断是指主机接收到外界的信号,立即停止当前的工作,转去执行外来的工作,等执行完以后才回到原来的工作点继续工作。

什么是多道

内存中同时存放多个作业,使其处于执行的开始点和结束点之间,共享CPU等计算机资源。

多道批处理系统 Multiprogrammed Batch Systems 的特征

多道性,无序性,调度行

缺点:无交互能力,用户响应时间长,昨夜平均周转时间长

什么是分时 time-sharing

分时技术就是将处理器的时间分为很短的时间片,按照时间片轮流地将处理器分给各联机作业使用

分时系统的特征

多路性,独占性,交互性,及时性

什么是实时 real-time

实时指的是计算机能呕对外界信息作出快速处理,并且能在控制对象允许的时间范围内作出快速反应,对时间有严格的限制

什么是网络 network

网络指的是操作系统在一半的功能上添加网络通信和网络服务

什么是分布式 distributed

指的是系统将计算分配到若干个物理机上,这些物理机不共享内存或时钟,由自己的本地存储,通过通信设施 如高速总线等进行物理机之间的通信

操作系统有什么功能?

处理器管理:进程的控制、同步、通信

存储器管理:内存的分配、保护、扩充

设备管理:设备分配、传输控制、设备独立性

文件管理:目录管理、操作管理、文件保护

用户接口:命令接口、程序接口、图形接口

并发和并行有什么区别

并发指的是两个或多个程序在 同一时间间隔内 发生

并行指的是两个或多个程序在 同一时刻内 发生

第二章+第三章

什么是中断 interrupt, 中断有哪些分类

中断是指主机接收到外界的信号,立即停止当前的工作,转去执行外来的工作,等执行完以后才回到原来的位置继续工作。

中断包括硬件中断和软件中断

  • 硬件中断:设备通过中断通知 CPU ,他已经完成了某项操作
  • 软件中断:也称为陷阱,包括异常和系统调用

什么是两态 Dual-Mode Operation

两态包括用户态和管态

用户态代表用户执行,管态代表操作系统执行

什么是特权指令

特权指令是指只能有操作系统内核部分使用,不能由用户直接使用的指令,即只能在管态下运行的指令

OS的硬件保护包括什么内容

两状态操作、I/O保护、CPU保护、内存保护

什么是系统调用 System Call

系统调用是用户程序与操作系统之间的接口,属于软件中断,由程序通过 API 进行访问

简述系统调用的过程

  1. 用户使用系统调用
  2. CPU发生中断,发送信号给陷入(trap)处理机构
  3. 处理之前,陷入处理机构 保存 处理机现场
  4. 陷入处理机构 通过系统调用功能好查找入口地址表,被找到子程序入口并执行
  5. 处理好系统调用后,返回并恢复处理机现场

操作系统包括哪些结构

简单结构,层次结构,微内核结构,模块结构,混合结构

层次化设计的好处

  1. 底层和高层分别实现,便于系统进行扩展
  2. 高层错误不会影响到底层,便于调试,利于功能的增删改
  3. 调用关系清晰,高层对底层单向依赖,避免递归调用,有利于保证设计和实现的正确性

缺点:系统中所有进程的控制转移、通讯等任务全部交给系统的核心去管理,要花费一定的代价

什么是微内核操作系统

通过划分系统程序与用户进程,将所有不必要的部件移出内核,形成微内核。微内核提供最少量的功能,如进程管理、存储管理以及通信

微内核 Microkernels 操作系统的优点

易于扩展,易于移植,提高了系统的可靠性

提供多种操作环境,便于分布计算

缺点:消息传递会增加开销。

⭐️第四章

顺序执行的特点

顺序性、封闭性、可再现性

并发执行的特点

异步性、失去封闭性、失去可再现性

简述操作系统在计算机系统中的地位和作用。

  • 地位:操作系统是计算机系统中非常重要的系统软件,它是紧挨着硬件的第一层软件,提供其他软件的运行环境。
  • 作用:计算机硬件和软件资源的管理者,用户使用计算机硬件和软件的接口。

操作系统的发展历程

  • 历史:手工操作,单道批处理系统,多道批处理系统,分时系统,实时系统
  • 单道批处理系统:解决了高速计算机的运算与人工干预之间的速度矛盾(人机矛盾),实现了作业自动过渡。
  • 多道批处理系统:利用通道和中断来实现CPU和输入设备并发执行。

操作系统的特点

  • 并发性,共享性,虚拟性,异步性。
  • 最基本的特征:并发和共享

中断的概念和作用

  • 概念:中断是指计算机在执行程序过程中,由于内部或外部的某些事件而引起当前执行的程序流程 暂时中断,自动转去处理相应事件的过程。完成事件处理后,计算机 又返回被中断的地方 继续执行原来的程序。
  • 外中断主要是由计算机外部的硬件设备引发的,它使得CPU可以及时响应外部设备的事件。
  • 内中断则是由程序执行过程中的特殊事件或异常情况引发的,它包括由特定指令产生的软件中断(人为干预)和由错误或异常情况引起的异常中断。

系统组件 System Components

  • 进程管理 Process Management,主存管理 Main Memory Management,I/O系统管理 I/O System Management
  • 二级存储器管理 Second- Storage Management ,文件管理 File Management,保护系统 Protection System
  • 命令解释器系统 Command-Interpreter System,网络处理 Networking

层次化结构

  • 原则:每一层都使用它 相邻的 底层所提供的功能和服务,以便于系统调试和验证。
  • 优点
    1. 底层和高层可分别实现(便于扩充)。
    2. 高层错误不会影响到底层,便于调试、利于功能的增删改。
    3. 高层对底层的单项依赖,避免递归调用,有利于保证设计和实现的正确性。

进程

  • 进程是动态的,程序上静态的。
  • 结构特征:进程实体 = 程序段 + 数据段 + PCB
  • 特点:动态性(最基本的特点),并发性,独立性,异步性。

系统的主要功能:

  • 处理机管理,存储器管理,设备管理,文件系统

文件的逻辑结构:

  • 流式文件(无结构文件),记录式文件(有结构文件)。

文件的物理结构:

  • 顺序结构,链接结构,索引结构。

具有快表的请求分页存储,地址变换过程

  1. 判断是否越界,若是,则中断;否则,继续。
  2. 查找快表,若找到页表项,则修改访问位,形成物理地址,结束;否则,继续。
  3. 查找页表,若找到页表项,则修改访问位,形成物理地址,结束;狗泽,产生 缺页中断,继续。
  4. 若内存不满,则将找到的页从外存调入内存。否则置换一页出内存。
  5. 修改页表。

某系统对磁盘 I/O 采用 DMA 控制方式,下图为一次读磁盘的流程图,

image-20240324124318976


DB

说明视图与基本表的区别和联系

  • 视图是从一个或几个基本表/视图导出的表,它是一个虚表。

  • 数据库中之存放视图的定义,而不存放视图对应的数据,当基本表中的数据发生变化,视图中的数据随之变化。

  • 视图可以查询,删除,但对视图的更新操作有限制。

简述事务的特征

  • 事务有四个特性,ACID。

  • 原子性:事务中的所有操作要么全做,要么全不做。

  • 一致性:事务必须使数据库从一个一致性状态变到另一个一致性状态。

  • 隔离性:一个事务内部的操作及使用的数据对并发的其他事务是隔离的。

  • 持续性:事务一旦提交,对数据库的改变是永久的。

简述关系模型的参照完整性规则

  • 若属性 F 是基本关系 R 的外码,它与基本关系 S 的主码 Ks 对应,则对于 R 中每个元组在 F 上的值必须为:取空值等于 S 中某个元组的主码值

简述系统故障时的数据库恢复策略

  • 正向扫描日志文件,找出在故障发生前已经提交的事务,将其加入 REDO队列,同时找出故障发生时尚未完成事务,将其加入 UNDO队列

  • UNDO队列 中的事务做撤销处理,对 REDO队列 中的事务做重做处理。

从关系规范化理论的角度讲,一个只满足 1NF 的关系可能存在的四方面问题

  • 数据冗余度大,插入异常,修改异常,删除异常。

五种基本关系代数运算

  • 并,差,投影,选择,笛卡尔积。

SQL语言的四个功能

  • 数据定义,数据查询,数据操纵,数据控制

数据库系统的组成

  • 数据库,数据库管理系统,数据库管理员,应用系统。

数据库管理系统的功能

  • 数据定义,数据操纵,数据库的运行管理,数据库的建立和维护

事务 是用户定义的数据库操作序列,是不可分割的工作单位。

数据库系统的特点

  • 数据结构化
  • 数据共享性高,冗余度低且易扩展
  • 数据独立性高
  • 数据由数据库管理统一管理控制

数据库设计可划分为以下六个阶段,每个阶段有其特定的设计内容:

  1. 需求分析阶段:在这一阶段,分析系统需求,明确数据库所要存储的数据以及数据之间的关系。这包括与用户的交流,了解他们的需求和预期。

  2. 概念设计阶段:基于需求分析的结果,设计数据库的高层结构,通常使用实体-关系模型(ER模型)来表示。这一阶段的目标是构建一个与具体数据库无关的逻辑模型。

  3. 逻辑设计阶段:将概念模型转换成特定数据库管理系统(DBMS)理解的逻辑模型,最常见的是 ER图转换成关系模型。这一阶段确定了表结构、字段类型等。

  4. 物理设计阶段:物理设计关注数据的实际存储方式,包括存储结构、索引策略、访问方法等,以优化数据库的性能。

  5. 实现阶段:在具体的数据库管理系统上建立数据库,包括定义数据结构、输入数据、编写应用程序和触发器等。

  6. 维护阶段:数据库建立后,需要进行日常的维护工作,包括备份、恢复、性能监控和优化等。


数据模型的三个要素

  • 数据结构,数据操作,完整性约束

公理系统的三条推理规则

  • 自反率,增广率,传递率

数据库定义

数据模型:概念模型,层次模型,网络模型

数据库系统的结构:三级模式和两级映像

数据库:数据库是长期存储在计算机内、有组织的、可共享的大量数据的集合。

  • 较小的冗余度
  • 较高的数据独立性
  • 易扩展性
  • 可为各种用户共享

数据库管理系统功能:数据定义功能,数据组织、存储和管理,数据操纵功能,数据库的事务管理和运行管理,数据库的建立和维护

逻辑独立性:用户的应用程序与数据库的逻辑结构是相互独立的

物理独立性:用户的应用程序与数据库中数据的物理存储是相互独立的。

DBMS的数据控制功能:数据的安全性保护,数据的完整性保护,并发控制,数据库恢复。

概念模型:ER图

逻辑模型:层次模型,网状模型,关系模型,面向对象数据模型,对象关系数据模型,半结构化数据模型

传统的集合运算:并,差,交,笛卡尔积。

专门的关系运算:选择,投影,连接,除。

SQl功能:数据查询,数据操纵,数据定义,数据控制。

数据库安全性控制:用户身份鉴别,存取控制,自主存取控制方法,授权,数据库角色,强制存取控制方法

数据库完整性是指数据的正确性和相容性。

  • 实体完整性,参照完整性,用户定义完整性

1NF的缺点:数据冗余,更新异常,插入异常,删除异常。

数据库设计的基本步骤:需求分析,概念设计,逻辑小合集,物理设计,数据库实施,数据库运行和维护。

  • 需求分析:数据字典,全系统中数据项、数据结构、数据流、数据存储的描述
  • 概念设计:概念模型(E-R图),数据字典
  • 逻辑设计:将ER图转化为关系模式
  • 物理结构设计:存储安排,存取方法选择,存取路径建立
  • 数据库实施:创建数据库模式,装入数据,数据库试运行
  • 数据库运行和维护:性能检测,转储/恢复,数据库重组和重构

子系统的ER图之间的冲突:属性冲突,命名冲突,结构冲突

数据库存取方法:索引方法和聚簇方法。

查询处理步骤:查询分析,查询检查,查询优化,查询执行。

查询树的启发式优化

  • 选择运算尽可能先做
  • 把投影运算和选择同时进行
  • 双目运算结合起来
  • 找出公共子表达式

事务:事务是用户定义的一个数据库操作序列,这些操作要么全做,要么不做,是一个不可分割的工作单位。

事务的ACID特性

  • 原子性:事务的操作要么都做,要么都不做
  • 一致性:事务的执行结果必须使数据库从一个一致性状态变到另一个一致性状态。
  • 隔离性:一个事务的执行不能被其他事务干扰
  • 持续性:一个事务一旦提交,它对数据库中数据的改变时永久的。

故障的种类:事务内部的故障,系统故障,介质故障,计算机病毒

建立冗余数据:数据转储和等级日志文件

系统故障的恢复:正向扫描日志文件,找出在故障发生前已经提交的事务,将其加入 REDO 队列,找出故障发生时尚未完成的事务,将其加入 UNDO 队列。 对 REDO 队列进行重做处理,UNDO 队列进行撤销处理。

事务可以一个一个的串行执行,即每个时刻只有一个事务运行。

并发操作带来的数据不一致:丢失修改,不可重复读,读脏数据。

  • 实现并发控制:封锁(排他锁,共享锁)

一级封锁协议:修改前加 X 锁,事务结束释放 X 锁

二级封锁协议:修改前加 X 锁,读取前加 S 锁,读完后释放 S 锁,事务结束释放 X 锁

活锁:饥饿(采用 FCFS),死锁(互相等待)

可串行化调度:多个事务的并发执行时正确的,当且仅当其结果与按一次序串行地执行这些事务的结果相同。

  • 可串行性是并发事务正确调度的准则。
  • 若一个调度时冲突可串行化,则一定是可串行化的调度。

宝典


Created: March 11, 2024
Last update: April 24, 2026

Discussion