Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/AnJT/Operating-system

Operating system project
https://github.com/AnJT/Operating-system

Last synced: 4 months ago
JSON representation

Operating system project

Lists

README

        

# Operating-system

[TOC]

## 进程管理-电梯调度

> 题目:电梯调度
>
> 指导教师:张慧娟
>
> 姓名:安江涛
>
> 学号:1952560

![](https://github.com/AnJT/IMG/blob/main/elev.png?raw=true)

### 方案

- #### 单独电梯调度算法——LOOK算法

> LOOK算法是扫描算法的一种改进。扫描算法(SCAN)是一种按照楼层顺序依次服务请求的算法,它让电梯在最底层和最顶层之间连续往返运行,在运行过程中响应处在于电梯运行方向相同的各楼层上的请求。扫描算法较好地解决了电梯移动的问题,在这个算法中,每个电梯响应乘客请求使乘客获得服务的次序是由其发出请求的乘客的位置与当前电梯位置之间的距离来决定的,所有的与电梯运行方向相同的乘客的请求在一次电梯向上运行或向下运行的过程中完成,免去了电梯频繁的来回移动。

- #### 联合电梯调度算法

> 综合电梯运行状态以及目前已有的请求,计算出耗时最短的电梯,并将改请求加入到该电梯相应的消息队列中。

### 开发工具

- ##### 开发环境

Windows 10

VS Code

- ##### 开发语言:

python3

### 运行

`pip install -r requirements.txt`

`python main.py`

## 内存管理-请求调页存储管理方式模拟

> 题目:请求调页存储管理方式模拟
>
> 指导教师:张慧娟
>
> 姓名:安江涛
>
> 学号:1952560

![](https://github.com/AnJT/IMG/blob/main/memory.png?raw=true)

### 方案

- #### 先进先出置换算法(FIFO)

> 置换最先调入内存的页面,即置换在内存中驻留时间最久的页面。按照进入内存的先后次序排列成**队列**,从队尾进入,从队首删除。

- #### 最近最久未使用置换算法(LRU)

> 置换最近一段时间以来最长时间未访问过的页面。根据程序局部性原理,刚被访问的页面,可能马上又要被访问;而较长时间内没有被访问的页面,可能最近不会被访问。

### 开发工具

- Windows 10

- WebStorm

- Vue + Node.js

### 运行

- 在线运行:https://anjt.github.io/Operating-system/

- 本地运行:

`npm install`

`npm run serve`

## 文件管理

> 题目:电梯调度
>
> 指导教师:张慧娟
>
> 姓名:安江涛
>
> 学号:1952560

![](https://github.com/AnJT/IMG/blob/main/%E6%96%87%E4%BB%B6%E7%AE%A1%E7%90%86.png?raw=true)

### 方案

- #### 显示链接法

本文件系统中,文件存储空间管理使用显示链接的方法,文件的内容存放在磁盘不同的块中,每次创建文件时为文件分配数量合适的空闲块;每次写文件时按顺序将文件内容写在相应块中;删除文件时将原先由内容的位置置为空即可。

- #### 位图、FAT表

磁盘空闲空间广利在位图的基础上进行改造,将存放磁盘上文件位置信息的FAT表与传统的位图进行结合,磁盘空闲的位置使用`EMPTY = -1`标识,放有文件的盘块存放文件所在的下一个盘块的文职,文件存放结束的盘块位置使用`END = -2`标识。

### 开发工具

- Windows 10
- Visual Studio 2022 Preview
- c#

### 运行

双击`exe`目录下的`FileManageSystem.exe`