В чем разница между «превышением времени» и «превышением лимита времени»? - PullRequest
0 голосов
/ 02 февраля 2019

Мой класс и я не можем прийти к единому мнению, если есть разница между «Превышено ограничение по времени» и «Превышение времени».Мы читаем " Операционные системы " по Stallings и не видим, чтобы эти два отличались от описаний ниже.

Вы можете увидеть список " Причины для процессаОкончание"на второй странице этого PDF .

Из этого списка:

+---------------------+-------------------------------------------------------------------------------------------------------+
| Reason              | Explanation                                                                                           |
+---------------------+-------------------------------------------------------------------------------------------------------+
| Time limit exceeded | The process has run longer than the specified total time limit.                                       |
|                     | There are a number of possibilities for the type of time that is measured.                            |
|                     | These include total elapsed time ("wall clock time"), amount of time spent executing,                 |
|                     | and, in the case of an interactive process, the amount of time since the user last provided any input.|
+-----------------------------------------------------------------------------------------------------------------------------+
| Time overrun        | The process has waited longer than a specified maximum for a certain event to occur.                  |
+---------------------+-------------------------------------------------------------------------------------------------------+

На данный момент лучший ответ, который я видел, это" время "Превышен лимит "- как долго процессу разрешено использовать ЦП (элемент управления ОС), а" превышение времени "- когда процесс слишком долго ждал, чтобы произошло событие (элемент управления внутри процесса).

Есть ли различие и, если да, какой компонент решает прекратить работу - ядро ​​или процесс?Неужели просто «бежал» дольше, чем ему разрешено, и «ждал» дольше, чем разрешено?

1 Ответ

0 голосов
/ 02 февраля 2019

«Переполнение времени» - это то, что обычно называется таймаутом .Вы правы, что ожидание, которое может привести к тайм-ауту, находится под контролем процесса.

Ваша книга, очевидно, описывает очень старые системы;в современных случаях тайм-аут редко (если вообще когда-либо) считается причиной прекращения процесса (хотя, конечно, любой процесс может выбрать для выхода при его возникновении).С другой стороны, ограничения на общее время выполнения процесса являются обычной (если необязательной) функцией: системы Unix отправляют SIGXCPU процессу, время CPU которого превышает настраиваемый предел .

...