当前位置: 首页 > news >正文

南昌it制作电商网站的公司nodejs网站开发教程

南昌it制作电商网站的公司,nodejs网站开发教程,桂林商品房做民宿在哪个网站登记好,适合个人做的网站有哪些东西吗一、实验目的 目的:熟悉并掌握基本分页存储管理的思想及其实现方法,熟悉并掌握基本分页存储管理的分配和回收方式。 任务:模拟实现基本分页存储管理方式下内存空间的分配和回收。 二、实验内容 1、实验内容 内存空间的初始化——可以由用户输…

一、实验目的

目的:熟悉并掌握基本分页存储管理的思想及其实现方法,熟悉并掌握基本分页存储管理的分配和回收方式。

任务:模拟实现基本分页存储管理方式下内存空间的分配和回收。


二、实验内容

1、实验内容

内存空间的初始化——可以由用户输入初始内存空间各个物理块情况。(用二维矩阵的方式按物理块号,逐行给出每个物理块的状态,1——表示已分配,0——表示未分配,并能够将行标、列标转换为对应的物理块号,以查看或修改每一个块的状态,要求:初始时部分物理块已分配)

基本分页的分配过程:由用户输入作业号和作业的大小(这里的大小是逻辑页面数),实现分配过程:空间充足,分配,修改状态矩阵的相应位置的值(值由0转变为1),并用专门的数据结构记录下该作业占用的物理块的块号,以备删除作业时回收空间。

作业空间的回收:用户输入作业号,实现分区回收(通过相应的数据结构找到该作业占有的物理块号,将块号转变成对应的行标、列标,将对应位置的值由1转变成0就完成了回收)。

分区的显示:任何时刻,可以查看当前内存的情况(显示记录内存情况的矩阵的值)。

2、实验要求

(1)内存空间不足的情况,要有相应的显示;

(2)作业不能同名,但是删除后可以再用这个名字;

(3)作业空间回收是输入作业名,回收相应的空间,如果这个作业名不存在,也要有相应的提示。


三、实验代码

class Memory:def __init__(self, rows, cols, initial_state=None):self.rows = rowsself.cols = colsif initial_state:  # 如果有初始状态,使用它self.memory = initial_stateelse:  # 否则初始化为全未分配self.memory = [[0] * cols for _ in range(rows)]self.job_records = {}  # 用于存储作业号与占用块的映射def allocate(self, job_id, job_size):if job_id in self.job_records:print(f"作业号 {job_id} 已存在!无法重复分配。")returnavailable_blocks = []for i in range(self.rows):for j in range(self.cols):if self.memory[i][j] == 0:  # 查找未分配的块available_blocks.append((i, j))if len(available_blocks) == job_size:breakif len(available_blocks) == job_size:breakif len(available_blocks) < job_size:print("空间不足,无法分配所需的作业大小。")return# 进行分配for (i, j) in available_blocks:self.memory[i][j] = 1  # 修改状态矩阵block_number = i * self.cols + jif job_id not in self.job_records:self.job_records[job_id] = []self.job_records[job_id].append(block_number)print(f"作业 {job_id} 成功分配,已占用的物理块: {self.job_records[job_id]}")def free(self, job_id):if job_id not in self.job_records:print(f"作业号 {job_id} 不存在,无法回收。")returnfor block_number in self.job_records[job_id]:i = block_number // self.colsj = block_number % self.colsself.memory[i][j] = 0  # 释放块print(f"作业 {job_id} 成功回收。")del self.job_records[job_id]  # 删除作业记录def displaying(self):print("内存状态(0-未分配, 1-已分配):")for i in range(self.rows):for j in range(self.cols):print(f"{self.memory[i][j]}", end=" ")print()  # 换行if __name__ == "__main__":N = 10  # 定义每行的列数# 初始化部分物理块已分配的状态,手动设置initial_memory_state = [[0, 1, 0, 0, 0, 1, 0, 0, 0, 0],[0, 0, 0, 0, 1, 1, 1, 0, 0, 0],[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],[1, 1, 0, 0, 0, 0, 0, 1, 0, 0],[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],[0, 0, 0, 0, 0, 1, 0, 0, 1, 0],[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]memory = Memory(rows=N, cols=N, initial_state=initial_memory_state)  # 初始化内存,包括初始状态while True:print("\n1. 分配作业\n2. 回收作业\n3. 显示内存情况\n4. 退出")choice = input("请选择操作: ")if choice == "1":job_id = input("请输入作业号: ")job_size = int(input("请输入作业大小(逻辑页面数): "))memory.allocate(job_id, job_size)elif choice == "2":job_id = input("请输入要回收的作业号: ")memory.free(job_id)elif choice == "3":memory.displaying()elif choice == "4":print("退出程序")breakelse:print("无效选择,请重新选择。")

四、实验结果

初始时部分物理块已分配,总大小为100个物理块,当分配作业A的大小为100时,程序将会显示出空间不足,无法分配所需的作业大小,当分配作业A的大小为5时,程序将会提示作业A分配成功,已占用的物理块为[0,2,3,4,6],其中计算当前块的物理块号 block_number,使用公式 b=i*N+j。

显示出分配作业A后的内存状态,如果再次分配作业号为A的作业,程序将会提示作业A已存在,无法重复分配。

显示出回收作业A后的内存状态,与最开始的状态相比没有区别。再次分配作业A大小为6,将会发现作业A被成功分配,已占用的物理块为[0,2,3,4,6,7],显示出当前内存状态可以查看新分配的作业A所占空间位置。

作业空间回收是输入作业名,回收相应的空间,如果这个作业名不存在,也要有相应的提示。例如回收不存在的作业B,程序将会给出提示作业B不存在,无法回收。

http://www.yayakq.cn/news/814432/

相关文章:

  • 做网站样本电销好做吗alexa排名查询的特点
  • PHP MYSQL网站开发全程实中国建设人才招聘官网
  • 昆明网站建设哪家好优秀网页设计作品赏析
  • 北京企业营销网站建设ui设计哪家培训班好
  • 连云区住房和城乡建设局网站公司建立网站的目的
  • 龙岩网站设计 都找推商吧系统做网站还需要服务器吗
  • php网站开发范例注册了网站怎么建设
  • 设计logo网站免费下载淘客推广平台排名
  • 网站建设目的功能设计制作的基本步骤是什么
  • 辽宁省和城乡建设厅网站一级a做爰网站下载
  • 做网批的有什么网站呢厦门景观绿环建设行业协会网站
  • 温州做网站厉害的公司有哪些无限在线观看免费视频
  • 杭州营销网站建设平台做网站需要干什么
  • 网站的优缺点网站建设当中的技术解决方案
  • 网站开发语言比较西安有哪些网站建设公司好
  • 湛江网站建设招聘上海专业做网站排名
  • 南宁企业网站设计公网站数据库数据丢失
  • 接网站建设的单子精湛的赣州网站建设
  • 口碑好的品牌网站建设微信php网站开发流程
  • 网站建设推广销售人员wordpress后台登陆logo
  • 有哪些网站手游做的好的进wordpress根目录
  • 网站全面推广方案母婴的网站建设
  • 网站做百度推广为什么没人咨询现在学软件前景怎么样
  • 网站建设方案书组网方案做的网站怎么把技术支持去掉
  • 器材管理网站开发小学网站模板
  • 上海专业做网站排名网站设计创新点怎么写
  • 网站建设公司如何签单怎样做美瞳网站
  • 培训网站视频不能拖动怎么办wordpress 有点慢
  • 自己设计好的网站怎么设置访问鞍山诺亚人才网
  • 有什么免费做h5的素材网站云阳有没有做网站的