![](https://img-blog.csdnimg.cn/20210429095438631.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
操作系统及运维
文章平均质量分 92
操作系统(operation system,简称OS)是管理计算机硬件与软件资源的计算机程序。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。
GeorgiaStar
世上无难事,只要肯放弃
展开
-
JVM运行时数据区域——为什么jdk8用元空间替换了永久代
JVM 运行时数据区域(堆和栈存哪些内容、堆和栈的区别、方法区存哪些内容、为什么 jdk8 用元空间替换了永久代)原创 2022-03-31 17:57:30 · 1624 阅读 · 0 评论 -
死磕CMS垃圾收集器
面试官:今天还是来聊聊CMS垃圾收集器呗?候选者:嗯啊…候选者:如果用Seria和Parallel系列的垃圾收集器:在垃圾回收的时,用户线程都会完全停止,直至垃圾回收结束!候选者:CMS的全称:Concurrent Mark Sweep,翻译过来是「并发标记清除」,是老年代垃圾收集器候选者:用CMS对比上面的垃圾收集器(Seria和Parallel和parNew):它最大的不同点就是「并发」:在GC线程工作的时候,用户线程「不会完全停止」,用户线程在「部分场景下」与GC线程一起并发执行。候选者:转载 2021-11-09 17:19:13 · 385 阅读 · 0 评论 -
Linux的进程、线程、⽂件描述符是什么
说到进程,恐怕⾯试中最常⻅的问题就是线程和进程的关系了,那么先说⼀ 下答案:在Linux系统中,进程和线程⼏乎没有区别。Linux中的进程就是⼀个数据结构,看明⽩就可以理解⽂件描述符、重定向、管道命令的底层⼯作原理,最后我们从操作系统的⾓度看看为什么说线程和进程基本没有区别。进程是什么⾸先,抽象地来说,我们的计算机就是这个东⻄:这个⼤的矩形表⽰计算机的内存空间,其中的⼩矩形代表进程,左下⾓的圆 形表⽰磁盘,右下⾓的图形表⽰⼀些输⼊输出设备,⽐如⿏标键盘显⽰器等等。另外,注意到内存空间被划分为了两块转载 2021-08-06 11:05:53 · 522 阅读 · 0 评论 -
Linux面试最高频的5个基本问题
CPU利用率和CPU负载的区别是什么提到CPU利用率,就必须理解时间片。什么是CPU时间片?我们现在所使用的Windows、Linux、Mac OS都是“多任务操作系统”,就是说他们可以“同时”运行多个程序,比如一边打开Chrome浏览器浏览网页还能一边听音乐。但是,实际上一个CPU内核在同一时刻只能干一件事,那操作系统是如何实现“多任务”的呢?大概的方法是让多个进程轮流使用CPU一小段时间,由于这个“一小段时间”很短(在linux上为5ms-800ms之间),用户感觉不到,就好像是几个程序同时在运行了。原创 2021-02-25 17:33:23 · 540 阅读 · 0 评论 -
Java堆内存是线程共享的吗
转载声明:Java堆内存是线程共享的!面试官:你确定吗?Java作为一种面向对象的,跨平台语言,其对象、内存等一直是比较难的知识点,所以,即使是一个Java的初学者,也一定或多或少的对JVM有一些了解。可以说,关于JVM的相关知识,基本是每个Java开发者必学的知识点,也是面试的时候必考的知识点。在JVM的内存结构中,比较常见的两个区域就是堆内存和栈内存(如无特指,本文提到的栈均指的是虚拟机栈),关于堆和栈的区别,很多开发者也是如数家珍,有很多书籍,或者网上的文章大概都是这样介绍的:堆是线程共享的内转载 2020-07-22 15:55:13 · 1883 阅读 · 0 评论 -
CPU、Load、内存及网络等系统指标异常的排查
背景日常工作中,在衡量服务器的性能时,经常会涉及到几个系统指标,load、cpu、mem、qps、rt等。每个指标都有其独特的意义,很多时候在线上出现问题时,往往会伴随着某些指标的异常。大部分情况下,在问题发生之前,某些指标就会提前出现异常。对于这些指标的理解、查看、异常解决等,是程序员的必备技能。本文、主要介绍一下这几个系统指标——系统负载(load)、cpu利用率、内存使用率、网络IO、磁...原创 2019-08-25 11:25:22 · 6366 阅读 · 2 评论 -
信号量与生产者消费者问题
生产者—消费者问题生产者—消费者题型在各类考试(考研、程序员证书、程序员面试笔试、期末考试)很常见,原因之一是生产者—消费者题型在实际的并发程序(多进程、多线程)设计中很常见;之二是这种题型综合性较好,涉及进程合作、互斥,有时还涉及死锁的避免。生产者—消费者题型可以全面考核你对并发程序的理解和设计能力。生产者—消费者题型最基本的是有界缓冲区的生产者消费者问题和无界缓冲区的生产者消费者原创 2017-01-19 15:06:44 · 41266 阅读 · 7 评论 -
操作系统中线程的实现模型
1、为什么需要线程?首先需要回答一个问题,为什么操作系统需要线程。如果非要说是为什么需要线程,还不如说为什么需要进程中还有其它进程。这些进程中包含的其它迷你进程就是线程。进程有以下缺陷:1、进程只能在一个时间内干一件事(执行一个程序执行流),而如果想同时干两件或多件事情,进程就不够用了。2、进程在执行过程中如果阻塞,例如等待输入,整个进程就将挂起,而无法继续执行。这样,即使进程里面原创 2017-02-19 11:12:50 · 3157 阅读 · 0 评论 -
操作系统中常用的进程调度算法
1、先来先服务调度算法先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度,也可用于进程调度。当在作业调度中采用该算法时,每次调度都是从后备作业队列中选择一个或多个最先进入该队列的作业,将它们调入内存,为它们分配资源、创建进程,然后放入就绪队列。在进程调度中采用FCFS算法时,则每次调度是从就绪队列中选择一个最先进入该队列的进程,为之分配处理机,使之投入运行。该进程一直原创 2017-02-19 11:02:30 · 23131 阅读 · 3 评论 -
操作系统的分区分页与分段式内存管理
计算存储的层次结构:当前技术没有能够提供这样的存储器,因此大部分的计算机都有一个存储器层次结构,即少量的非常快速、昂贵、易变的高速缓存(cache);若干兆字节的中等速度、中等价格、易变的主存储器(RAM);数百兆或数千兆的低速、廉价、不易变的磁盘。这些资源的合理使用与否直接关系着系统的效率。 1. 内存管理方法 内存管理主要包括虚地址、地址变换、内存分配和回收、内存扩充、内存共享转载 2017-02-27 13:42:15 · 7835 阅读 · 0 评论