Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Operating system 操作系统开销_Operating System - Fatal编程技术网

Operating system 操作系统开销

Operating system 操作系统开销,operating-system,Operating System,我正在研究一个耗时的计算算法,并希望尽可能快地运行它 有多少操作系统(Windows或Linux)的存在(在其下运行算法)会减慢进程 是否有专门用于运行预定义程序的“操作系统”示例?首先,我想介绍的是,我也在研究一个非常类似的主题耗时的计算算法!在这里很常见,或者可能只是一个共同事件 现在,让我们继续回答部分:- 进程(正在运行的算法)在操作系统中的存在受守护进程和等待在就绪队列中的其他可用用户程序的影响,具体取决于操作系统应用的调度算法。通常,守护进程总是在运行,一些与系统应用程序相关的进程会

我正在研究一个耗时的计算算法,并希望尽可能快地运行它

有多少操作系统(Windows或Linux)的存在(在其下运行算法)会减慢进程


是否有专门用于运行预定义程序的“操作系统”示例?

首先,我想介绍的是,我也在研究一个非常类似的主题
耗时的计算算法
!在这里很常见,或者可能只是一个共同事件

现在,让我们继续回答部分:-

进程(正在运行的算法)在操作系统中的存在受守护进程和等待在就绪队列中的其他可用用户程序的影响,具体取决于操作系统应用的调度算法。通常,守护进程总是在运行,一些与系统应用程序相关的进程会抢占其他低优先级进程(如果您的进程优先级较低,则可能与您的进程类似,通常系统进程和守护进程会抢占所有其他进程)。操作系统(Windows或Linux)的存在本身——我这里只考虑它们的内核——不会产生影响,因为内核是操作系统和所有进程和任务的管理器。因此,它们不会降低进程的速度,但守护进程和系统进程非常繁重,它们确实会显著影响您的程序。我也希望我们可以禁用所有的守护进程,但它们只是为了操作系统的高效工作(如鼠标控制、电源效率等),总之

仅举一个例子,在基于Linux和Unix的系统上,
top
命令提供了对处理器活动的实时观察。它显示系统上CPU密集型任务最多的
列表

因此,如果您将在Linux系统上执行此代码,那么您将得到大量占用内存的繁重进程的结果!在这里,您会发现,除了大量使用内存的进程外,还有几个守护进程,如
powerd
moused
等,以及其他系统进程,如
Xorg
kdeinit4
等。。。这会影响用户进程

但是,有一点很清楚,每个进程或守护进程通常不会比您的
密集计算算法
进程占用更多内存!比例会更小,可能是八分之一,四分之一

根据评论更新:-

如果您特别希望进程在本机硬件上运行,而不需要操作系统的简化/安装,那么您有两种选择

使用机器级语言或汇编语言或其他低级语言开发代码,这些语言将直接在硬件上运行您的进程,而无需操作系统来管理内存部分、所有和其他系统进程和守护进程

第二个解决方案是开发/使用一个非常简单的操作系统,它只包含算法程序/过程所需的设置!然后,这个最小的操作系统就不会是一个完整的操作系统——因此缺少守护进程,以及像Windows、Linux、Unix等主要操作系统那样的多个系统调用

Nazar554
在评论部分提供了一个有用的链接。我将引用他的话:


如果您确实想消除任何可能的开销,您可以尝试:

在你的情况下,似乎你更喜欢第一种选择而不是另一种。但是,你可以通过任何一种方式完成你的任务

最新编辑:-

这只是myside的一个反馈,因为我无法让你更清楚!如果你问同样的问题会更好,因为有几个专家坐在那里回答关于操作系统开发/功能等的所有问题!在那里,你会收到一个更加强烈和积极的回应,关于每一个与你的主题相关的微小细节,我可能错过了


来自我身边的祝福

在所有主要的操作系统中,为任务分配处理器的主要思想是相同的。我提供了一个图表来演示它。首先让我描述一下这个图表,然后我会回答你的问题

图表说明

当一个操作系统想要同时执行一些任务时,它不能同时将处理器分配给所有任务。因为处理器一次只能处理一个操作,不能同时处理多个任务。因为它,操作系统以一个时隙一个时隙的方式在所有任务之间共享它。换句话说,每个任务只允许在其自己的时间段内使用处理器,并且一旦其时间段完成,它应该将处理器返回给操作系统

操作系统使用来选择和分派挂起的任务,以将其交给处理器。不同操作系统之间的区别在于调度器的工作方式,典型的调度器是做什么的?简言之:

  • 根据任务列表从队列中选择下一个挂起的任务
  • 决定(从处理器)删除的任务应放在何处
回答您的问题

有多少操作系统(Windows或Linux)的存在(在其下运行算法)会减慢进程

这取决于:

  • 调度程序算法(即,您使用哪个操作系统)
  • 系统上的当前负载(即,现在有多少应用程序和守护进程正在运行)
  • 流程任务的优先级(即实时优先级、UI优先级、常规优先级、低优先级等)
  • 任务将完成多少I/O工作(因为I/O请求任务通常安排在单独的队列中)
  • 请原谅我的英语问题,因为英语不是我的母语
    希望它能帮助您

    尝试启动

    来自和:

    运行级别1称为“单用户”模式。更恰当的描述是“救援”或“故障排除”模式。在运行级别1中,不启动任何守护进程(服务)。希望单用户模式将允许您修复任何问题