2024.12.27复习日记

news/2024/12/30 21:42:46/文章来源:https://www.cnblogs.com/vastjoy/p/18638646

2024.12.27复习日记

os

进程管理:

首先是操作系统,cpu,进程三者之间的关系

操作系统操作cpu,去执行进程,其中进程执行顺序,执行多长时间,以及进程间的调度都是由操作系统完成的,cpu只负责执行。不过进程本身也具有储存数据的功能,比如说储存自己执行到哪里了,以便下一次执行时从该位置往下继续执行

进程的状态

创建状态,运行态,就绪态,阻塞态,就绪挂起态,阻塞挂起态,结束状态

预读失效和缓存污染

预读失效主要原因是cpu从硬盘读数据到内存中时,由于计算机的局部性原理,常常会用到读取的那一页数据的相邻数据,所以会连着读取除了要用的数据之外的几页数据到内存中。假如LRU缓存可以存10页的数据,读来了5页的数据,那连着读过来的那4页数据放在LRU缓存中的头部,就把原来的6,7,8,9,10都给挤掉了,但是连着读来的那几页后续又没有被访问到,热点数据又被挤掉了,后续访问热点数据就又要1次磁盘I/O严重影响了速度。

为了解决这个问题,Linux用两个LRU链表来缓存数据,一个是ActiveLRU,一个是InActiveLRU,假如读来的数据页是11-15,11数据页读完后立刻被使用了,也就放入ActiveLRU,而12-15就放在InActiveLRU。这样连着读来的数据页也不会挤掉热点数据。MYSQL则是在LRU中分为YOUNG和OLD两块区域,其占比位63:37,读来的没有被访问的数据放在OLD区,被访问的数据放在YOUNG区

缓存污染主要是在执行SQL语句的时候如果进行全表扫描并且索引失效,会连续读来非常多的页数据,这样的话所有的数据都被干到ActiveLRU和YOUNG区,把热点数据又给挤掉了,究其原因是升级的条件不够苛刻。所以为了解决这个问题Linux将升级的条件设为InActiveLRU中的数据被访问两次,MYSQL将升级条件设为被访问两次,且第二次访问与第一次访问相距的时间小于1秒

数据库

  1. ER图,关系模式,函数依赖,1NF,2NF,3NF
    判断2NF:看是否有包含函数依赖。1NF没有包含函数依赖就是2NF
    判断3NF:看是否有传递函数依赖。2NF没有传递函数依赖就是3NF
  2. REDO和UNDO
    这是基于日志的数据库故障恢复。REDO即重做,UNDO即回滚。
    REDO适用于已提交的事务,事务已经提交,但是由于系统故障,可能更新的数据未能完全写入数据库,因此重做该事务将数据库恢复到最新的提交状态
    UNDO适用于未提交的事务,用于撤销未提交的事务操作
  3. 关系代数和SQL语句
    没什么好说的
  4. 磁盘块索引运算和B+树
  5. 语法树优化

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/860826.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文搞定宝塔LINUX部署上线前后端分离项目

一文搞定宝塔LINUX部署上线前后端分离项目 地址:http://82.156.126.178/ 部署方案: 宝塔Linux,腾讯云服务器2核2G3M,数据库使用腾讯云托管平台mysql 1.跨域问题解决 首先前端区分线上环境和开发环境,主要是请求地址不一样 import axios from axiosconst prefix=process.en…

Windows10 64环境下用Qt5.12.12自带的mingw730_64构建编译OpenCV4.1.0时cmake-3.20.6中的参数配置

一、环境条件说明: 操作系统:Windows10 64环境 编译工具:用Qt5.12.12自带的mingw730_64构建 构建对象:编译OpenCV4.1.0的Release 64位和Debug 64位动态链接库 构建工具:CMake中的参数配置 二、cmake-3.20.6中的参数配置 1、按照下图配置好OpenCV4.1.0的源代码目录和构建编…

闲着没事,用STC12C5616AD制作一个74hc595测试仪

手头有些特别廉价的直插74hc595,怕这些595因为廉价而质量不过关,因而萌发了制作一个测试仪的想法。 用测试仪先对595进行测试,功能正常了,再接入电路应用。 该测试仪能自动向595写入数据,再读出输出数据进行比对,如果读出的并口数据与串行写入的数据不同,说明该IC损坏或…

控制流平坦化初了解(持续更新)

对于平坦化的学习控制流平坦化初了解 原理 借助LLVM(一个底层虚拟机项目,我目前不理解虚拟机这个概念)这个项目,目前理解为类似于一个编译器的东西,把源码通过各式各样的复杂的语义分析翻译成另一个玩意. 但原本是拿来优化的,然后做安全的人拿来改为混淆,就是OLLVM项目,做安全不…

DevEco Studio使用模拟器报错,解决办法

在进行鸿蒙应用开发时,很多开发者没有鸿蒙系统的设备,无法在鸿蒙系统真机上进行调试,这时就需要使用官方提供的模拟器。在菜单栏Tools---Device Manager,打开模拟器弹窗,登录华为账号后即可进行模拟器管理。但在模拟器下载后,点击右侧Actions启动时,会遇到提示报错“模拟…

为什么要做纯血鸿蒙操作系统?

在10月22日,华为最新的原生鸿蒙之夜暨全场景新品发布会上,余承东正式发布了“纯血鸿蒙”操作系统,这是继苹果iOS和安卓系统之后的全球第三大移动操作系统,同时也标志着国产操作系统实现了全面突破。(央视新闻报道https://mp.weixin.qq.com/s/IFatTQ7u7h92iGrr-xEedw)。那…

GIMP 处理 png 透明边缘

首先设置画布大小然后点击 图层 -> 图层到图像大小

时间的本质-计算视角

原作:Stephen Wolfram计算机视域下的时间 时间是人类经验的核心。然而,究竟什么是时间?在传统科学中,它常被比作空间坐标(尽管这种坐标对我们来说总是不断增长)。尽管这种描述在数学上可能很有用,但它并没有揭示时间的本质。 一旦我们开始用计算术语思考,就会觉得越来越…

中考英语优秀范文-002 Music 音乐

1 写作要求 作家雨果说过:“开启人类智慧的钥匙有三把,一是字母,二是数字,三是音符。”从这句话中,我们足可见音乐对人的发展的影响。请你根据以下提示,以Music为题,写一篇短文参加学校的英语作文竞赛。 提示: 1音乐使人充满活力,让人快乐; 2 没有音乐,生活就没有乐…

Windows11安装Linux子系统(WSL2)

1、确认BIOS中已经打开虚拟化 Virtualization Technology (我的机器默认已经打开 Enabled / Disabled,主板不同进入的地方不一样,自行搜索) 2、以管理员身份打开 PowerShell 3、输入(此步安装WSL): dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subs…

软工个人总结

结束了? 一、学期回顾 1.1 课程想象与现实 最初听闻软件工程课程,脑海中浮现的是一群程序员在电脑前敲打着代码,创造出一个个功能强大的软件。想象着自己能通过这门课,精通多种编程语言,独立开发出令人惊艳的应用程序。可是在第一次编程作业布置下来时,发现自己什么也不会…

UML之关联

关联指两个类之间的各种联系。UML使用各种单实线表示关联,但关联所能够表达的信息远不只是一条实线所传递的依赖。关联指两个类之间的各种联系。UML使用各种单实线表示关联,这个单实线可以是直线(垂直的、水平的或者倾斜的)、折线甚至曲线。 事实上,关联也是展示类的属性的…