自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 【数据库】

事务是一个不可分割的数据库操作序列,也是数据库并发控制的基本单位,其执行的结果必须使数据库从一种一致性状态变到另一种一致性状态。事务是逻辑上的一组操作,要么都执行,要么都不执行。举例:事务最经典的例子就是转账。假如小明要给小红转账1000元,这个转账会涉及到的两个关键操作就是:将小明的余额减少1000元,将小红的余额增加1000元。万一在这两个操作之间突然出现错误,比如银行系统崩溃,导致小明余额减少而小红的余额没有增加,这样就出现问题了。而事务就是保障这两个关键操作要么都成功,要么都失败。

2023-03-24 10:00:00 566

原创 死锁的产生和解决

循环等待条件可以通过多种方法来破坏。如:资源有序分配法:系统给每类资源赋予一个序号,每个进程按编号递增来请求资源,释放则相反,从而破坏环路等待条件。因此,将资源一次性分配,尽量做到尽可能少的进程可以请求资源,这样就可以破坏请求条件。(可举例:进程1占有资源A需要B、进程2占有资源B需要A,此时AB资源都得不到释放,两个进程也无法请求到需要的资源)4.循环等待条件:系统中若干进程组成环路,该环路中每个进程都在等待相邻进程正占用的资源。当进程得到部分资源,但得不到其他资源,则释放已占有的资源,抢占条件。

2023-03-23 01:00:00 96

原创 【线程与进程】线程、进程及区别

进程是一个具有独立功能的程序,在一个数据集合上依次动态执行的过程。进程也是一个正在执行的程序的实例,包括程序计数器、寄存器和程序变量的当前值。进程控制块,是进程存在的唯一标志。(包含进程标识符PID,进程当前状态,程序和数据地 址,进程优先级、CPU现场保护区(用于进程切换),占有的资源清单等。程序段数据段系统中的每个程序都运行在某个进程的上下文(context) 中。进程上下文指的是一个进程在执行的时候,CPU的所有寄存器中的值、进程的状态以及栈堆上的内容。

2023-03-22 17:00:00 118

原创 【并行与并发】

指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行,使得在宏观上具有多个进程同时执行的效果,但在微观上并不是同时执行的,只是把时间分成若干段,使多个进程快速交替地执行。指严格物理意义上的同时运行,比如多核cpu。同一时刻,有多条指令在多个处理器上同时执行,互不影响,无论从宏观还是微观来看,多个指令都是同时执行的。(2)并行要求程序能够同时执行多个操作,而并发只是要求程序“看着像是”同时执行多个操作,其实是交替执行。并发和并行的目标都是最大化CPU的使用率,将CPU的性能充分利用。

2023-03-22 12:33:30 58

原创 【操作系统】什么是操作系统,内核态和用户态

操作系统是管理硬件和软件的一种应用程序。它管理着计算机的资源和进程以及所有的硬件和软件,并为硬件和软件提供了一种中间层,使软件和硬件分离,让我们无需关注硬件的实现,把关注点更多放在软件应用上。通常情况下,应用程序需要与内存和 CPU 进行交互,操作系统的目的就是为了保证这些访问和交互能够准确无误的进行。为实现该目的,操作系统能够管理计算机资源,包括 CPU、内存、磁盘驱动器、打印机等;它还能提供一种图形界面,建立起用户和计算机之间的桥梁;

2023-03-22 12:10:20 239

原创 【JVM】深浅拷贝、JVM调优、堆栈队列区别

深拷贝和浅拷贝是针对对象属性为对象的,因为基本数据类型在进行赋值操作时(也就是拷贝)是直接将值赋给了新的变量,也就是该变量是原变量的一个副本,这个时候你修改两者中的任何一个的值都不会影响另一个,而对于对象或者引用数据来说在进行浅拷贝时,只是将对象的引用复制了一份,也就内存地址,即两个不同的变量指向了同一个内存地址,那么在改变任一个变量的值都是改变这个内存地址的所存储的值,所以两个变量的值都会改变。栈使用的是数据结构中的栈,先进后出的原则,物理地址分配是连续的。栈的插入称为进栈,栈的删除称为出栈。

2023-03-17 09:48:45 89

原创 【JVM】垃圾回收集器相关GC

CMS 是英文 Concurrent Mark-Sweep 的简称,是以牺牲吞吐量为代价来获得最短回收停顿时间的垃圾回收器。对于要求服务器响应速度的应用上,这种垃圾回收器非常适合。在启动 JVM 的参数加上“-XX:+UseConcMarkSweepGC”来指定使用 CMS 垃圾回收器。

2023-03-17 09:43:44 85

原创 【JVM】双亲委派机制相关

了有线程上下文类加载器,JNDI服务使用这个线程上下文类加载器去加载所需要的SPI代码,也就是父类加载器请求子类加载器去完成类加载动作,这种行为实际上就是打通了双亲委派模型的层次结构来逆向使用类加载器,已经违背了双亲委派模型,但这也是无可奈何的事情。这样如果有不法分子自己造了个java.lang.Object,里面嵌了不好的代码,如果我们是按照双亲委派模型来实现的话,最终加载到JVM中的只会是我们rt.jar里面的东西,也就是这些核心的基础类代码得到了保护。1.自定义类加载器,重写loadClass方法;

2023-03-17 09:39:59 73

原创 【JVM】虚拟机类加载机制相关

Java中的类加载器实质上也是类,功能是把 类 加载入JVM中。JVM的类加载器有四个,原因有:一方面是为了分工明确,各自负责各自的区块,另一方面为了实现委托模型。层次结构如下:BootStrap Loader(引导类加载器) ----- 负责加载系统类ExtClassLoader(扩展类加载器) ----- 负责加载扩展类AppClassLoade(应用类加载器) ----- 负责加载应用类自定义类加载器,程序员自定义的类加载器。

2023-03-17 09:38:05 71

原创 操作系统(一)——什么是操作系统

该文是笔者根据【清华 操作系统原理】所整理的学习笔记,原视频见链接:【清华 操作系统原理】

2022-12-18 17:51:17 109

原创 【JVM】JVM位置、体系结构及作用

结合B站狂神说视频课程及相关面试资料,对JVM相关知识进行整理。此处对JVM的概念不再进行赘述。本文在通过对相关资料的阅读后,仅对JVM的位置、体系结构及作用做了简单的梳理,以便后期学习与工作。

2022-12-17 14:51:07 359 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除