在一个计算机系统中,通常都含有各种各样的硬件和软件资源。归纳起来可将资源分为四类:处理器、存储器、I/O 设备以及信息(数据和程序)[1]

。分配系统资源是指对计算机软件资源和硬件资源进行分配。分配系统资源要做到使系统资源得到充分利用和不使系统出现死锁。

中文名

分配系统资源

外文名

Allocation system resources

学    科

计算机定    义

对计算机软件和硬件资源进行分配

目    的

充分利用、不出现死锁

领    域

计算机系统

分配系统资源简介

编辑

语音

在计算机科学中,系统资源(system resource)意指是一个计算机系统中,限制其运算能力的任何实体或是虚拟的组成元件。任何连结到计算机系统中的装置,都是一个资源,例如键盘、屏幕等。电脑系统内部的任何元件都是资源,如CPU,RAM。计算机系统中的软件虚拟元件,包括档案,网络连线与内存区块等,都是一种资源。分配系统资源是指对计算机软件资源和硬件资源进行分配,使系统资源得到充分利用和不使系统出现死锁。分配系统资源可以分为以下四类:处理机分配、内存分配、I/O设备分配。

分配系统资源处理机分配

编辑

语音

处理机分配也可以称之为处理机调度,在多道程序设计系统中,内存中有多道程序运行,他们相互争夺处理机这一重要的资源。处理机调度就是从就绪队列中,按照一定的算法选择一个进程并将处理机分配给它运行,以实现进程并发地执行。在传统的操作系统中,包括作业调度和进程调度两步。

(1) 作业调度。作业调度的基本任务是从后备队列中按照一定的算法,选择出若干个作业,为它们分配运行所需的资源(首先是分配内存)。在将它们调入内存后,便分别为它们建立进程,使它们都成为可能获得处理机的就绪进程,并按照一定的算法将它们插入就绪队列。

(2) 进程调度。 进程调度的任务是从进程的就绪队列中, 按照一定的算法选出一个进程,把处理机分配给它,并为它设置运行现场,使进程投入执行。值得提出的是,在多线程 OS中,通常是把线程作为独立运行和分配处理机的基本单位,为此,须把就绪线程排成一个队列,每次调度时,是从就绪线程队列中选出一个线程,把处理机分配给它。

分配系统资源内存分配

编辑

语音

内存分配的主要任务是为每道程序分配内存空间,使它们“各得其所” ;提高存储器的利用率,以减少不可用的内存空间;允许正在运行的程序申请附加的内存空间,以适应程序和数据动态增长的需要。

OS 在实现内存分配时,可采取静态和动态两种方式。在静态分配方式中,每个作业的内存空间是在作业装入时确定的;在作业装入后的整个运行期间,不允许该作业再申请新的内存空间,也不允许作业在内存中“移动” 。在动态分配方式中,每个作业所要求的基本内存空间也是在装入时确定的,但允许作业在运行过程中继续申请新的附加内存空间,以适应程序和数据的动态增长,也允许作业在内存中“移动” 。为了实现内存分配,在内存分配的机制中应具有这样的结构和功能:

(1) 内存分配数据结构。该结构用于记录内存空间的使用情况,作为内存分配的依据;

(2) 内存分配功能。系统按照一定的内存分配算法为用户程序分配内存空间;

(3) 内存回收功能。系统对于用户不再需要的内存,通过用户的释放请求去完成系统的回收功能。

分配系统资源设备分配

编辑

语音

设备分配的基本任务是根据用户进程的 I/O 请求、 系统的现有资源情况以及按照某种设备的分配策略,为之分配其所需的设备。如果在 I/O 设备和 CPU 之间还存在着设备控制器和 I/O 通道时,还须为分配出去的设备分配相应的控制器和通道。

为了实现设备分配,系统中应设置设备控制表、控制器控制表等数据结构,用于记录设备及控制器的标识符和状态。根据这些表格可以了解指定设备当前是否可用,是否忙碌,以供进行设备分配时参考。在进行设备分配时,应针对不同的设备类型而采用不同的设备分配方式。 对于独占设备(临界资源)的分配, 还应考虑到该设备被分配出去后系统是否安全。在设备使用完后,应立即由系统回收。

参考资料

1.

汤小丹.计算机操作系统:西安电子科技大学出版社,2010

计算机设备分配资源的发展,分配系统资源相关推荐

  1. 计算机与linux操作系统的发展

    一.计算机 (一)计算机的概念 1.概念:计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能.是能够按照程序运行,自动.高速 ...

  2. 计算机和编程语言的发展历史

    计算机的发展历史 在第二次世界大战中,美国政府寻求计算机以开发潜在的战略价值.这促进了计算机的研究与发展.1944年霍华德.艾肯(1900-1973)研制出全电子计算器,为美国海军绘制弹道图.这台简称 ...

  3. 清华、北大、浙大的计算机课程资源集都在这里了

    参加 2019 Python开发者日,请扫码咨询 ↑↑↑ 整理 | 一一 出品 | AI科技大本营(ID:rgznai100) 此前,一份介绍中科大的相关课程资源的 repo 火了,但不知后来是不是因 ...

  4. 第一代至第五代计算机分别是,计算机应用基础教案—计算机的分类与发展(中职教育)...

    计算机应用基础教案-计算机的分类与发展(中职教育) (4页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.9 积分 课题一:计算机的分类与发展[教学冃标 ...

  5. 计算机系统结构的前沿发展,计算机系统结构现状与发展.ppt

    计算机系统结构现状与发展 无所不在的计算Pervasive Computing 计算机发展的特点: 1. 无所不在的含有 智能的小装置: 2. 支持服务的后台 巨型计算机 将来的处理技术 量子计算(最 ...

  6. 未来家用计算机发展趋势,计算机应用的发展现状及发展趋势

    [摘要]随着国民经济水平的日益提升,我国的计算机也得到了迅速的发展,计算机应用技术也已经广泛渗透到了各个行业中,并且计算机应用技术对于促进这些行业的快速发展也是有着重要的意义的.本文首先介绍了计算机应 ...

  7. 计算机老师的专业发展怎么写,计算机教师发展趋势

    1教师专业化 教师专业化发展是当今教育发展中的热点问题,如何更好地向着专业方向发展,这就需要我们教师把教学.自主学习.外出培训作为教师发展的首要条件,这样才能有力地促进计算机专业教师的健康.协调发展. ...

  8. 促进计算机的发展,计算机的诞生和发展促进了人类社会的进步和繁荣

    <计算机的诞生和发展促进了人类社会的进步和繁荣>由会员分享,可在线阅读,更多相关<计算机的诞生和发展促进了人类社会的进步和繁荣(2页珍藏版)>请在人人文库网上搜索. 1.办公自 ...

  9. 计算机语言学与机器翻译,论计算机语言学之中机器翻译发展现状

    论计算机语言学之中机器翻译发展现状 21世纪进入经济全球化时代,同在地球村的各个国家之间的往来日渐增多,因而对于翻译的需求量明显增大,单 (本文共1页) 阅读本刊>> 语言翻译市场前景广阔 ...

  10. 基于算力网络的大数据计算资源智能调度分配方法

    摘要 [目的]进入算力时代以来,伴随泛在接入.万物互联,全社会数据量迎来爆发式增长.需要通过算力网络解决大数据计算资源不足.异构算力不足.边缘算力不足等问题.[方法]基于算力网络,重新设计大数据计算体 ...

最新文章

  1. 《算法笔记》中文版 - 包括数组,链表,树,图,递归,DP,有序表等相关数据结构与算法的讲解及代码实现...
  2. Java中 ArrayList类常用方法和遍历
  3. One order error message log and storage
  4. 排序算法一:冒泡排序,插入排序以及选择排序原理与MATLAB实现
  5. C语言数组参数与指针参数
  6. ElasicSearch(3) 安装elasticsearch-head
  7. Web Client Software Factory系列(4):数据绑定和ObjectContainerDataSource控件
  8. SQL SERVER的SID和表的所有权问题
  9. Linux SWAP 深度解读
  10. dj打碟怎么学_关于DJ入门以及手把手教你如何打碟(转)
  11. Python之print函数详解
  12. Android安卓-UI自动打卡Appium+PO+Pytest(1)
  13. Sun Java 国际认证考试流程表
  14. Android数据恢复工具
  15. php卡片式,什么是卡片式设计? | 人人都是产品经理
  16. 东北大学软件项目管理与过程改进复习提纲(2020)——第一章
  17. 面对 ESM 的开发模式,webpack 还有还手之力吗?(转载)
  18. Linux top
  19. TDA61 指令 OBD芯片 OBD指令ELM327详解
  20. 100集华为HCIE安全培训视频教材整理 | 防火墙出口选路(二)

热门文章

  1. Spring Boot实现 文件上传与下载,包括前端界面实现
  2. 认识ruquest对象
  3. 算法笔记_面试题_6.二进制/位运算相关
  4. tensorflow中获取shape的方法比较
  5. OpenCV版本与EmguCV版本匹配问题
  6. 基于TensorRT量化部署RepVGG模型
  7. 在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。
  8. mask rcnn数据转换为tfrecord数据
  9. LeetCode之搜索旋转排序数组
  10. 机器学习中的分类模型和回归模型