- 博客(8)
- 资源 (3)
- 收藏
- 关注
原创 操作系统死锁避免——银行家算法
银行家算法主要分为两个部分,第一部分是银行家进行资源分配可行性检查;第二部分是安全性算法对模拟分配后是否有一个不会产生进程死锁的安全序列进行检查。银行家算法的主要数据结构如下:#include <iostream>using namespace std;const int max_resource = 10; //最大的资源种类const int max_progress ...
2018-06-14 13:05:32 709
原创 C语言模拟操作系统内存分配——首次适应算法(First Fit)
算法思想:将内存块中的所有的块按照地址递增的顺序连接成一个链表,每次要将新的作业放入内存的时候就按顺序查找内存块链表,每次都是用找到的可以用的第一个内存块。链表数据结构:链表结点共有4个区域和一个下指针构成,四个区域分别记录该内存块的起始地址,该内存块长度,内存块的状态和内存块存放的作业编号(没有作业时存放的是0)。模拟实现的策略:1.插入操作时依照地址递增的顺序检查可以装入的第一个内存块若找到,...
2018-06-09 12:42:04 11082 1
原创 操作系统进程调度算法——吸烟者问题
问题描述:假设一个系统有三个吸烟者进程和一个供应者进程,每个吸烟者都需要得到三个资源才能完成吸烟操作并且他们每人都持有这三种资源中的一种,供应者一次只能提供三种资源中两种的组合,并且要等到接收到吸烟者吸烟完成信号才能继续派发资源。#include <iostream>#include <stdlib.h>using namespace std;typedef st...
2018-06-07 21:13:46 3295
原创 操作系统进程调度算法——哲学家进餐问题
问题描述:一个圆桌子上围坐着五个哲学家,他们的左手边分别摆了一支筷子,他们不听进行思考和进餐,当要进餐前只有同时拿到左右两支筷子的时候才能开始进餐。哲学家的编号用i表示,他们左手边筷子编号为i,右手边筷子编号为(i+1)%5。本文中哲学家只有在左右两支筷子都不被使用的时候才能拿起筷子进餐.。#include <iostream>#include <stdlib.h>us...
2018-06-07 21:10:16 1796
原创 操作系统进程调度算法——读者-写者问题
问题描述:有读者和写者两个并发的进程,他们共享一个文件资源,当两个或者以上进程读取文件的时候不会产生副作用,但是如果写进程和其他的进程同时访问共享文件的时候就会产生错误。因此就有:读者可以同时读取文件;写者只能和其他进程互斥写入文件。#include <iostream>#include <stdlib.h>using namespace std;typedef...
2018-06-07 21:05:19 832
原创 操作系统进程同步算法——生产者-消费者问题
问题描述:一组生产者进程和一组消费者进程共享一个大小为n的缓冲区,只有没其他进程使用缓冲区时,其中的一个进程才能访问缓冲区。对于消费者来说,只有缓冲区不空时才能访问缓冲区并读取信息;对于生产者来说,只有缓冲区不满是才能访问缓冲区并写入信息。#include <iostream>#include <stdlib.h>using namespace std;const ...
2018-06-06 21:50:15 6575 1
原创 操作系统的进程同步算法——记录型信号量模拟
记录型信号量进程同步机制拥有记录型的数据结构,其中包括某种临界资源的可供访问的数量和进程阻塞队列,进程在操作时只能采用wait()和signal(),两种原子操作。其算法模拟如下:#include <stdio.h>#include <string>#include <stdlib.h>#include <iostream>using nam...
2018-06-06 18:37:50 2472 3
原创 基于PHP和mysql的简单学生成绩管理系统
本系统主要架构图如上图所示。PS:register_check.php的自动注册代码写在check.php里了。使用数据库的两张表,user_info用户信息表和stu_info学生成绩信息表。提供登录服务:分为管理员登录和学生登录,若登录时输入数据库中没有的账号 和密码的时候系统会自动注册,即将新账号信息写入user_info中去。学生登录只可以进行查询操作,管理员登录可以进行增删和查操作,注册...
2018-06-02 13:00:48 60740 27
c++背词宝应用 exe文件
2018-09-05
c++背词宝应用
2018-09-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人