首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
CS operating system
orange_lys
创建于2023-11-04
订阅专栏
操作系统笔记
暂无订阅
共33篇文章
创建于2023-11-04
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
线程并发-执行管理(任务分治框架)
概念 将一个复杂的任务分解成更简单的任务再一一解决, 使得每一个子程序更加易于理解并确保其正确, 这是我们常用的方法. 虽然给函数起名是一件痛苦的事情, 但大多数时候我们都乐于做这样的分解。 任务在执
fork
应用场景 fork是目前使用最广泛的进程创建机制,进程通过系统调用函数fork能够创建若干个新的进程,前者称为父进程,后者称为子进程。 概念 操作系统内的每一个进程都有父进程,所有进程形成了一个树形结
内存管理
内存管理 调用内存过程 cpu->高速缓存->虚拟内存->页表->物理内存 虚拟内存 实现进程隔离 写时复制 减少进程数据拷贝量,降低物理内存开销,提高进程创建效率
写时复制
问题 进程在fork创建子进程时几乎拷贝了父进程的所有数据,这可能导致进程的创建效率十分低效;除此之外,子进程通常会加载新的程序覆盖拷贝的数据段、堆栈等,这又使得先前复制的数据全部浪费掉;就算没有执行
线程并发-执行管理
概念 多线程编程中, 我们常常把任务分解成离散的工作单元(每个工作单元也许很小), 以期并行处理. 但是, 为每个工作单元创建线程(比如boost::async), 尤其是大量创建, 会存在一些不足:
线程并发-通信模型(消息同步模型)-管程
概念 为什么monitor会翻译成管程,以及这玩意为什么叫monitor! 可能每一篇讨论monitor的文章, 都需要先介绍什么是monitor, 所以说, 起名字是编程活动中最困难的事情, 也许没
线程并发-通信模型(消息同步模型)-信号量
欢迎来到经典白学环节! 概念 信号量 Semaphores 是 E.W.Dijkstra 在1965年提出的一种方法。(没错, 就是那个最短路径算法的Dijkstra,银行家算法的Dijkstra,“
线程并发-通信模型(消息同步模型)-通道(Golang CSP模型)
应用场景 在生产者-消费者模型的应用场景下,很自然地会想到线程安全队列 !生产者把产品放到队尾而消费者从队首取出产品消费掉。事实上,人们甚至根据生产者一个还是多个,消费者有一个还是多个,排列组合一下,
进程间通信方式的区别
信号和信号量的区别 信号量:通过同步互斥机制,限制对共享资源的访问,以避免多个进程同时访问造成的竞争条件,如互斥锁 信号:用于通知进程发生某个事件的机制。进程可以通过发送信号给其他进程来进行简单的通信
进程间通信方式
通信模型 同一个进程中的线程共享数据空间(用户态可以直接操作栈空间)可以直接通信,但是进程间是无法直接进行通信的。因此,主要有两种模型:共享内存模型和消息传递模型。 基础 共享内存系统 消息传递系统
ln 软连接命令
软连接路径 cd /usr/bin/ 查看软连接 ln-al 创建软链接 ln -s [link] [target]
根分区扩容(使用gparted) ubuntu2022
查看分区大小 df -h 安装gparted(GNOME 分区编辑器) 更新 sudo apt update && sudo apt upgrade 安装gparted sudo apt instal
并发和并行的区别
并发 定义 指一个时间段内,有几个程序都在同一个CPU上运行,但任意一个时刻点上只有一个程序在处理机上运行 理解:通过分片实现假并行,任务执行不是实时的 并行 定义 指一个时间段内,有几个程序都在几个