• 欢迎访问 winrains 的个人网站!
  • 本网站主要从互联网整理和收集了与Java、网络安全、Linux等技术相关的文章,供学习和研究使用。如有侵权,请留言告知,谢谢!

操作系统和并发

操作系统和并发
我一直没有急于写并发的原因是我参不透操作系统,如今,我已经把操作系统刷了一遍,这次试着写一些并发,看看能不能写清楚,卑微小编在线求鼓励…… 我打算采取操作系统和并发同时结合讲起来的方式。 并发历史 在计算机最早期的时候,没有操作系统,执行程序只需要一个过程,那就是从头到尾依次执行。任何资源都会为这个程序服务,这必然就会存在 浪费资源 ……继续阅读 »

winrains 2个月前 (08-15) 40浏览 0个赞

进程间通信介绍

进程间通信介绍
每个进程的用户地址空间都是独立的,一般而言是不能互相访问的,但内核空间是每个进程都共享的,所以进程之间要通信必须通过内核。 Linux 内核提供了不少进程间通信的机制,我们来一起瞧瞧有哪些? 管道 如果你学过 Linux 命令,那你肯定很熟悉「|」这个竖线。 $ ps auxf | grep mysql 上面命令行里的「|」竖线就是一个管道,它的功能是将前……继续阅读 »

winrains 2个月前 (08-15) 57浏览 0个赞

主宰操作系统的经典算法

主宰操作系统的经典算法
此篇文章带你梳理一下操作系统中都出现过哪些算法 进程和线程管理中的算法 进程和线程在调度时候出现过很多算法,这些算法的设计背景是当一个计算机是多道程序设计系统时,会频繁的有很多进程或者线程来同时竞争 CPU 时间片。 那么如何选择合适的进程/线程运行是一项艺术。当两个或两个以上的进程/线程处于就绪状态时,就会发生这种情况。如果只有一个 CPU 可用,那……继续阅读 »

winrains 3个月前 (07-27) 72浏览 0个赞

97 张图总结操作系统核心知识点

97 张图总结操作系统核心知识点
这不是一篇教你如何创建一个操作系统的文章,相反,这是一篇指导性文章,教你从几个方面来理解操作系统。首先你需要知道你为什么要看这篇文章以及为什么要学习操作系统。 搞清楚几个问题 首先你要搞明白你学习操作系统的目的是什么?操作系统的重要性如何?学习操作系统会给我带来什么?下面我会从这几个方面为你回答下。 操作系统也是一种软件,但是操作系统是一种非常复杂的软件……继续阅读 »

winrains 3个月前 (07-27) 62浏览 0个赞

避免多线程资源竞争的方法

避免多线程资源竞争的方法
前言 先来看看虚构的小故事 已经晚上 11 点了,程序员小明的双手还在键盘上飞舞着,眼神依然注视着的电脑屏幕。 没办法这段时间公司业绩增长中,需求自然也多了起来,加班自然也少不了。 天气变化莫测,这时窗外下起了蓬勃大雨,同时闪电轰鸣。 但这一丝都没有影响到小明,始料未及,突然一道巨大的雷一闪而过,办公楼就这么停电了,随后整栋楼都在回荡着的小明那一声撕心裂……继续阅读 »

winrains 3个月前 (07-27) 55浏览 0个赞

进程、线程基础知识全家桶

进程、线程基础知识全家桶
前言 先来看看一则小故事 我们写好的一行行代码,为了让其工作起来,我们还得把它送进城(进程)里,那既然进了城里,那肯定不能胡作非为了。 城里人有城里人的规矩,城中有个专门管辖你们的城管(操作系统),人家让你休息就休息,让你工作就工作,毕竟摊位不多,每个人都要占这个摊位来工作,城里要工作的人多着去了。 所以城管为了公平起见,它使用一种策略(调度)方式,给每……继续阅读 »

winrains 3个月前 (07-27) 38浏览 0个赞

20张图揭开内存管理的迷雾

20张图揭开内存管理的迷雾
前言 之前有不少读者跟我反馈,能不能写图解操作系统? 既然那么多读者想看,我最近就在疯狂的复习操作系统的知识。 操作系统确实是比较难啃的一门课,至少我认为比计算机网络难太多了,但它的重要性就不用我多说了。 学操作系统的时候,主要痛苦的地方,有太多的抽象难以理解的词语或概念,非常容易被劝退。 即使怀着满腔热血的心情开始学操作系统,不过 3 分钟睡意就突然袭来。……继续阅读 »

winrains 3个月前 (07-27) 43浏览 0个赞

6种延时队列的实现方案

6种延时队列的实现方案
五一期间原计划是写两篇文章,看一本技术类书籍,结果这五天由于自律性过于差,禁不住各种诱惑,我连电脑都没打开过,计划完美宣告失败。所以在这能看出和大佬之间的差距,人家没白没夜的更文,比你优秀的人比你更努力,难以望其项背,真是让我自愧不如。 知耻而后勇,这不逼着自己又学起来了,个人比较喜欢一些实践类的东西,既学习到知识又能让技术落地,能搞出个demo最好,本……继续阅读 »

winrains 3个月前 (07-27) 45浏览 0个赞

SpringBoot + RabbitMQ 消息确认机制

SpringBoot + RabbitMQ 消息确认机制
这次我分享的是 springboot + rabbitmq 如何实现消息确认机制,以及在实际开发中的一点踩坑经验,其实整体的内容比较简单,有时候事情就是这么神奇,越是简单的东西就越容易出错。 可以看到使用了 RabbitMQ 以后,我们的业务链路明显变长了,虽然做到了系统间的解耦,但可能造成消息丢失的场景也增加了。例如: 消息生产者 – ……继续阅读 »

winrains 3个月前 (07-27) 129浏览 0个赞

死锁全详解

死锁全详解
前言 计算机系统中有很多独占性的资源,在同一时刻只能每个资源只能由一个进程使用,我们之前经常提到过打印机,这就是一个独占性的资源,同一时刻不能有两个打印机同时输出结果,否则会引起文件系统的瘫痪。所以,操作系统具有授权一个进程单独访问资源的能力。 两个进程独占性的访问某个资源,从而等待另外一个资源的执行结果,会导致两个进程都被阻塞,并且两个进程都不会释放各……继续阅读 »

winrains 4个月前 (06-28) 62浏览 1个赞