近来用Markdown写文章,越来越不喜欢插入图片了,一切能用语法解决的问题坚决不放图,原因有二: 如果把流程图和数学公式都以图片方式放到文章内,当部署到Github上后,访问博客时图片加载实在太慢,有时一篇文章需要画10来个流程图,那你就得截图10来多次,还得给这些图片想一个合适的名字,同时插入 ...
Nachos-Lab3-同步与互斥机制模块实现
源码获取https://github.com/icoty/nachos-3.4-Lab 内容一:总体概述本实习希望通过修改Nachos系统平台的底层源代码,达到“扩展同步机制,实现同步互斥实例”的目标。 内容二:任务完成情况任务完成列表(Y/N) Exercise1 Exercise2 Exe ...
Nachos-Lab2-线程调度模块实现
源码获取https://github.com/icoty/nachos-3.4-Lab 内容一:总体概述本实习希望通过修改Nachos系统平台的底层源代码,达到“扩展调度算法”的目标。本次实验主要是要理解Timer、Scheduler和Interrupt之间的关系,从而理解线程之间是如何进行调度的。 ...
Nachos-Lab1-完善线程机制
Nachos是什么Nachos (Not Another Completely Heuristic Operating System),是一个教学用操作系统,提供了操作系统框架: 线程 中断 虚拟内存(位图管理所有物理页,虚拟地址与物理地址之间的转换等) 同步与互斥机制(锁、条件变量、信号量), ...
另类P、V操作问题-详细图解
问题模型有一个系统,定义如下P、V操作:P(s): s.count--; if s<0 then 将本进程插入相应队列末尾等待; V(s): s.count++; if s<=0 then 从相应等待队列队尾唤醒一个进程,将其插入就绪队列; 思考并回答:a. 这样定义P、V操作是 ...
Docker最简教程
本文旨在让你用最短的时间弄懂Docker命令操作,什么虚拟化都太泛泛了,不讲大道理,实践出真知,让你从此的日常开发和工作中在面对Docker时不再茫然失措而是得心应手。本文也不谈安装,我实在认为作为程序员,要是我在这里教你如何安装Docker,既是在浪费你的时间也是在浪费我的时间,请参考Docker ...
基于共享内存、信号、命名管道和Select模型实现聊天窗口
问题模型 A、B两个进程通过管道通信,A 进程每次接收到的数据通过共享内存传递给A1进程显示,同理,B进程每次接收到的数据通过共享内存传递给B1进程显示; 对于A、B 进程,采用ctrl+c(实际为SIGINT信号)方式退出,A、B进程通过捕捉SIGINT信号注册信号处理函数进行资源清理,A1、B1 ...
Linux下Docker快速部署LAMP
若你的mac或Linux环境上未安装Docker,请移步Docker安装,确认安装成功之后再进行下文内容。如果你不了解Docker如何操作,但是你又想彻底弄懂Docker命令,可以看我另一篇文章Docker最简教程。 拿来即用获取LAMPLAMP镜像我已经搭建好并且我已经测试过了,没有问题。你只需要 ...