Тенденции развития вычислительной техники. Принципы организации ЭВМ


)Поддержка синхронных и асинхронных операций ввода-вывода



бет37/52
Дата16.12.2021
өлшемі1,21 Mb.
#101732
1   ...   33   34   35   36   37   38   39   40   ...   52
Байланысты:
арх
biologiya-pnnen-8-synypa-arnalan--tosan-zhiynty-baalau-tapsyrmalary
39)Поддержка синхронных и асинхронных операций ввода-вывода.

Операция ввода-вывода может выполняться по отношению к процессу, запросившему операцию, в синхронном или асинхронном режимах. Синхронный режим означает, что процесс приостанавливает свою работу до тех пор, пока операция ввода-вывода не будет завершена (рис. 6.1, а), а при асинхронном режиме процесс продолжает выполняться в мультипрограммном режиме одновременно с операцией ввода-вывода (рис. 6.1, б). Отличие же заключается в том, что операция ввода-вывода может быть инициирована не только пользовательским процессом — в этом случае операция выполняется в рамках системного вызова, но и кодом ядра, например кодом подсистемы виртуальной памяти для считывания отсутствующей в памяти страницы.


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


Достарыңызбен бөлісу:
1   ...   33   34   35   36   37   38   39   40   ...   52




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет