首页 > 系统相关 >内存分配

内存分配

时间:2023-12-09 13:44:24浏览次数:29  
标签:参考 分配 任务 内存 我们 模拟

这里主要讲一下模拟过程中遇到的问题和想法

首先,为了保证模拟正确,我们应该以时间为参考对象去模拟,这样比以即将进入的任务或者等待队列中的任务为参考对象讨论的情况更少,犯的错误更少,每到达一个新时间如果有任务进入或者有任务完成就可以进行处理

其次,这道题目的\(N\)非常大,所以我们不可能去模拟内存空间,换个思路,去存储在进行中的任务,每两个任务之间的空隙就是空内存

然后,我们加入一个head和tail任务,来减少边界条件的判断

最后,我们查找一个任务的插入点的时候是用到从头到尾遍历,看起来是\(O(n^2)\),实际上感觉确实是,但是达不到上界,也没啥其他更好的办法了

标签:参考,分配,任务,内存,我们,模拟
From: https://www.cnblogs.com/dingxingdi/p/17890853.html

相关文章

  • c++ 程序的内存分配
    C++程序在执行时,将内存大致分为以下几个区域:栈:系统自动分配的空间,只要不特殊声明,就定义在栈区,函数的区域也在栈上。栈是向下增长的。(const在栈里)堆:使用动态内存分配的方式可以申请堆空间,用完要手动释放。newmalloc全局区:全局变量、静态变量(static),生命周期是程序整个运行过......
  • 栈内存和堆内存概念、内存逃逸分析
    为了让程序员更好地专注于业务代码的实现,Go语言增加了垃圾回收机制,自动地回收不再使用的内存。Go语言有两部分内存空间:栈内存和堆内存。1.栈内存栈只允许往线性表的一端放入数据,之后在这一端取出数据,按照后进先出(LIFO,LastInFirstOut)的顺序,如图所示。往栈中放入元素......
  • [电脑装机] 内存篇
    [装机|配置升级]内存篇内存也称内存储器和主存储器,它用于暂时存放CPU中的运算数据,与硬盘等外部存储器交换的数据。一、部分内存参数我们一般能在内存条(SDRAM)的标签上的可以看到型号和参数。型号是内存条厂商自己定义的,不同厂商的定义规则不一致,一般可以通过型号识别内存参......
  • 麒麟系统一直free命令看内存占用90%但是top命令看每个程序占用内存只有20%,怎么查找什
    麒麟系统一直free命令看内存占用90%但是top命令看每个程序占用内存只有20%,怎么查找什么问题导致的这种情况 这种情况可能是因为Linux系统的内存管理机制导致的。free命令和top命令使用不同的方式来报告内存使用情况,因此可能会看到不同的结果。free命令显示的......
  • 共享内存技术调研
    共享内存技术调研1.     研究目的在调研仿真分布式解决方案时遇到一个问题,在服务器中不同软件之间如何高效的进行通讯,这里涉及到了不同的操作系统(windows和Linux),不同的使用功能(虚实融合,数字仿真),需求不同需要的信息传递效率要求不同,因此需要调研现有的技术,找到适合使用......
  • DDR内存基础知识
    一、DDR基础知识1.几个频率(1)核心频率:真实运行频率。(2)倍增系数:DDR通过数据预取技术放大速率,每代ddr倍率是固定的,ddr=2,ddr2=4,ddr3=8,ddr4=8,ddr5=16(3)有效频率;厂商标注的频率,可以理解为数据传输速率。厂商也想逐步淡化其它频率的概念,只让我们记住有效频率。其实......
  • 【Linux】CentOS 6.10 内存分配
    确定centos系统采用的是lvm分区格式从vg_ran02-lv_home分区取出512G的空间添加到根目录vg_ran02-lv_root分区上卸载vg_ran02-lv_home分区umount/home如有提示则按如下方式进行:先查看当前/home被哪个进程占用;再杀死该进程即可;重复上述步骤fuser-m/homekill-9当前......
  • 使用new关键字,是用来调用这个对象,并给了一个新名字和内存
    new关键字是用于创建对象的关键字。它会分配内存并初始化对象。当我们使用new关键字创建对象时,会自动调用该对象的构造方法。构造方法可以用于初始化类的属性,并为对象分配内存。例如,以下代码定义了一个Person类:publicclassPerson{   privateStringname;   private......
  • C++_类实例—指针-内存
    智能指针#g++t.cpp-std=c++11C++11中引入了智能指针的概念,方便管理堆内存智能指针是利用了一种叫做RAII(资源获取即初始化)的技术对普通的指针进行封装,这使得智能指针实质是一个对象,行为表现的却像一个指针包含在头文件<memory>中,shared_ptr、unique_ptr、weak_ptr1......
  • 不含指针的结构体赋值实现,直接内存拷贝
    #include<stdio.h>#include<stdlib.h>structA{ intc; charb[20]; charstrs[10][10]; intk;};intmain(){ //Aa={...};//帮我初始化 structAa={ 1,//Initializecwithsomeinteger "ExampleString",//Initialize......