下列不属于 *** 作系统管理功能的是什么?

下列不属于 *** 作系统管理功能的是什么?,第1张

下列不属于 *** 作系统管理功能的是:数据库管理

计算机 *** 作系统功能包括:处理器管理、存储器管理、设备管理、文件管理、作业管理等功能模块

1、处理器管理

处理器管理最基本的功能是处理中断事件。处理器只能发现中断事件并产生中断而不能进行处理。配置了 *** 作系统后,就可对各种事件进行处理。处理器管理的另一功能是处理器调度。处理器可能是一个,也可能是多个,不同类型的 *** 作系统将针对不同情况采取不同的调度策略。

2、存储器管理

存储器管理主要是指针对内存储器的管理。主要任务是:分配内存空间,保证各作业占用的存储空间不发生矛盾,并使各作业在自己所属存储区中不互相干扰。

3、设备管理

设备管理是指负责管理各类外围设备(简称:外设),包括分配、启动和故障处理等。主要任务是:当用户使用外部设备时,必须提出要求,待 *** 作系统进行统一分配后方可使用。当用户的程序运行到要使用某外设时,由 *** 作系统负责驱动外设。 *** 作系统还具有处理外设中断请求的能力。

4、文件管理

文件管理是指 *** 作系统对信息资源的管理。在 *** 作系统中,将负责存取的管理信息的部分称为文件系统。文件是在逻辑上具有完整意义的一组相关信息的有序集合,每个文件都有一个文件名。文件管理支持文件的存储、检索和修改等 *** 作以及文件的保护功能。

5、作业管理

每个用户请求计算机系统完成的一个独立的 *** 作称为作业。作业管理包括作业的输入和输出,作业的调度与控制(根据用户的需要控制作业运行的步骤)

扩展资料

*** 作系统中设备管理的功能

1、缓冲管理

为达到缓解CPU和I/O设备速度不匹配的矛盾,达到提高CPU和I/O设备利用率,提高系统吞吐量的目的,许多 *** 作系统通过设置缓冲区的办法来实现。

2、设备分配

设备分配的基本任务是根据用户的I/O请求,为他们分配所需的设备。如果在I/O设备和CPU之间还存在设备控制器和通道,则还需为分配出去的设备分配相应的控制器和通道。

3、设备处理

设备处理程序又称设备驱动程序。其基本任务是实现CPU和设备控制器之间的通信。

4、设备独立性和虚拟设备

用户向系统申请和使用的设备与实际 *** 作的设备无关

参考资料来源:百度百科——计算机 *** 作系统功能

参考资料来源:百度百科—— *** 作系统设备管理

#include "iostream.h"

#include "iomanip.h"

#define nofreearea 2

#define noadequacyarea 3

#define allocated 4

#define noprocess 2

#define nosuchprocess 3

#define reclaimed 4

typedef struct TUN

{

int address

int size

char name

struct TUN *next

} usedarea , *usedtable

typedef struct TFN

{

int address

int size

struct TFN *next

} freearea, *freetable

usedtable usedTable = NULL

freetable freeTable = NULL

int alloc( char processname , int processsize )

{

if( freeTable == NULL )

return 1

freetable p = freeTable

freetable q = p

while( p != NULL &&p->size <processsize )

{

q = p

p = p->next

}

if( p == NULL )

return 3

usedtable x = new usedarea

x->address = p->address

x->size = processsize

x->name = processname

x->next = NULL

if( p->size >processsize )

{

p->size -= processsize

p->address += processsize

}

else

{

if( p == freeTable )

freeTable = NULL

else

q->next = p->next

delete p

}

usedtable r = usedTable

usedtable t = r

while( r != NULL &&r->address <x->address )

{

t = r

r = r->next

}

if( usedTable == NULL )

usedTable = x

else

{

x->next = r

t->next = x

}

return 4

}

int Reclaim( char processname )

{

if( usedTable == NULL )

return 1

usedtable p = usedTable

usedtable q = p

while( p != NULL &&p->name != processname )

{

q = p

p = p->next

}

if( p == NULL )

return 3

freetable r = freeTable

freetable t = r

freetable x

while( r != NULL &&r->address <p->address )

{

t = r

r = r->next

}

x = new freearea

x->address = p->address

x->size = p->size

x->next = NULL

if( r == freeTable )

{

x->next = r

freeTable = x

t = freeTable

}

else

{

x->next = r

t->next = x

}

while( t->next != NULL &&t->address + t->size == t->next->address )

{

t->size += t->next->size

r = t->next

t->next = t->next->next

delete r

}

if( p == usedTable )

{

usedTable = usedTable->next

}

else

q->next = p->next

delete p

return 4

}

int Init()

{

freeTable = new freearea

freeTable->address = 0

freeTable->size = 128

freeTable->next = NULL

return 1

}

void processrequest()

{

char processname

int processsize

cout<<"...................."<<endl

cout<<"作业名: "

cin >>processname

cout<<"作业长度: "

cin >>processsize

if(processsize<=128)

{int i

if( alloc( processname , processsize) == 4 )

{

i=i+processsize

if(i>128)

{cout<<"该作业超出空间"<<endl

}

if(i<=128)

cout<<"该作业已成功获得所需空间"<<endl

i=i+processsize

cout<<"........................................"<<endl

}

else

cout<<"该作业超出空间,没有获得所需空间"<<endl

cout<<"........................................"<<endl

return

}

if(processsize>128)

{cout<<"该作业超出空间"<<endl

cout<<"........................................"<<endl

}

}

void processreclaim()

{

int processname

cout<<"...................."<<endl

cout<<"作业名: "

cin >>processname

int result = Reclaim( processname )

if( result == 4 )

cout<<"该作业已成功回收"<<endl

else if( result == 2 || result == 1 )

cout<<"系统没有作业或该作业不存在"<<endl

cout<<"...................."<<endl

}

void freeTablePrint()

{

cout<<endl<<endl<<endl<<"***********************************"<<endl

cout<<setw(10)<<"address"<<setw(10)<<"length"<<setw(10)<<"state"<<endl<<endl

freetable p = freeTable

usedtable q = usedTable

int x , y

while( p || q )

{

if( p )

x = p->address

else

x = 0x7fffffff

if( q )

y = q->address

else

y = 0x7fffffff

if( x <y )

{

cout<<setw(10)<<p->address<<setw(10)<<p->size<<setw(10)<<"空闲"<<endl

p = p->next

}

if( x >y )

{

cout<<setw(10)<<q->address<<setw(10)<<q->size<<setw(10)<<"已分配"<<setw(10)<<"ID="<<q->name<<endl

q = q->next

}

}

cout<<endl<<endl<<endl<<"************************************"<<endl<<endl<<endl

}

void main()

{

Init()

int choose

bool exitFlag = false

while( !exitFlag )

{

cout<<"************************0 - 退出 ************************"<<endl

cout<<"************************1 - 分配主存 ************************"<<endl

cout<<"************************2 - 回收主存 ************************"<<endl

cout<<"************************3 - 显示主存 ************************"<<endl<<endl<<endl

cout<<"************************选择所要执行的 *** 作:"

cin>>choose

switch( choose )

{

case 0:

exitFlag = true

break

case 1:

processrequest()

break

case 2:

processreclaim()

break

case 3:

freeTablePrint()

break

}

}

}

进行抽象?还是进行管理?如果是进行抽象。就请您赐教。如果是管理的话。

对于CUP(中央处理器)也就是处理机。CUP是计算机系统中最重要的硬件资源,也就是相当于人的大脑。---(重要性。计算机的一切处理运算都是在CPU中完成的,只有得到计算机的处理数据,用户的任务才能得到处理。)---(CPU的功能,这点很容易知道。因为在计算机硬件系统中。我们知道CPU是由运算器和控制器组成。运算器就是对数据进行逻辑运算等等。那么这里说道的数据从什么地方来。分两部分。内存和自身的寄存器。经行处理之后,把处理过的数据保存在内存和自身的寄存器上。)处理器的占有和利用率之间关系到计算机和用户任务的处理效率。---(这点应该是清楚的。就不再多说了。)继续。每台电脑就只有1个CUP。当多个用户使用同一个计算机的时候,那么 *** 作系统就要分配把处理机交给那个用户先使用。还有就是这个用户的使用时间---(关于这点。我以前不知道怎么一台计算机还可以多人使用。不是就我一个人么。。其实我觉得。肯定有这样的情况的。比如说在QQ上共享资源。可能不恰当。意思是一样的)

那么一个大型的 *** 作系统肯定提供的很丰富的调度资源。由 *** 作系统的管理有设置。那么调度的策略有:分时调度。优先调度。排队调度。---(这些调度都顾名思义,就不需要在讲什么了)。这个就是 *** 作系统对CPU的管理。小结下。其实就讲了。关于CPU怎么怎么重要。然后功能是什么。那么CPU的占有和它的利用率就会影响计算机和用户任务的处理效率。那么之后又讲了。怎么来配分以及它的调度策略。如果你想了解某种调度策略怎么来调度的话。就去查点资料就OK了。。

存储管理也就是内存管理。我们先来看下它管理是管理的什么。1:对于内外存交换信息的管理。2:配合硬件做地址转换和存储保护的工作。3:进行存储空间的分配和回收。---如果不知道怎么来内外存信息管理。配合硬件做地址转换和存储保护工作。以及存储空间的分配和回收。先记下来再说。。说道这里会遇到几个问题。我们知道多个用户程序共用一个计算机系统的时候,往往就会公用计算的内存储器。如果把各个用户程序和数据隔离互不干扰。又能共享一些数据。那么就对这个存储空间经行保护和分配。那么存储管理的功能有 1:内存的分配---就是当多个进程同时进入到内存当中,如何来分配内存空间。哪些空间是已经分配的。哪些空间是为分配的。那么按照如何的算法和分配策略使得这个空间充分运用。那么这就是内存分配需要做的事情了。。但是怎么去做。查阅有关资料 - -.....2:地址的转换和重定位--用户在程序中使用的是逻辑地址。那么CUP执行程序的时候是按照物理地址来经行访问的。那么这个存储管理的软件配合硬件把逻辑地址转换成物理地址。3:存储保护--每个程序都在自己所属的内存区中 *** 作。那么必须要保证他们不能相互的干扰。以及破坏。因此。一般由硬件提供保护功能。软件配合实现。

4:内存共享---其实就和QQ群中共享资源都是一样的。了解它是什么就可以了。5:存储的扩展--那么就是把内存的空间扩大。那么用到的技术就是虚拟存储技术。知道这个就可以了

设备管理,设备管理就是计算机中除CUP内存以外的所有输入和输出管理。功能--1:缓冲管理,由于CPU和i/o设备的速度很大。为了缓和这一矛盾。通常在设备管理中建立I/O缓冲区,对缓冲区的有效管理是设备管理的一向重要任务。2:设备分配,根据用户程序提出的I/O请求和系统中设备的使用情况。按照一定的策略。将所有设备分配给申请者。3:设备处理程序,对于未设置通道的计算机系统其基本任务通常是实现CPU和设备控制器之间的通信。4:设备的独立性和虚拟设备。设备的独立性,是指。用户在编写程序的时候,无需了解系统具体配置了哪些设备。只需要为所需的设备起个逻辑名就可以了。。。。。。。如果还有什么不理解的。。就咪我哈。。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12052125.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存