comment
| - In computer science, asynchronous I/O (also non-sequential I/O) is a form of input/output processing that permits other processing to continue before the transmission has finished. Input and output (I/O) operations on a computer can be extremely slow compared to the processing of data. An I/O device can incorporate mechanical devices that must physically move, such as a hard drive seeking a track to read or write; this is often orders of magnitude slower than the switching of electric current. For example, during a disk operation that takes ten milliseconds to perform, a processor that is clocked at one gigahertz could have performed ten million instruction-processing cycles.
- Асинхронний або неблокуючий ввід/вивід — це форма обробки вводу/виводу, яка дозволяє виконувати інші процеси ще до того як закінчиться передавання даних. Операції вводу/виводу на комп’ютері можуть бути надзвичайно повільними порівняно з обробкою даних. Пристрій вводу/виводу може містити механічні частини які повинні фізично переміщуватись, наприклад жорсткий диск, який шукає доріжку для запису чи читання. Це часто на порядки повільніше ніж перемикання електричного струму. Наприклад під час дискової операції що займає десять мілісекунд, процесор що має частоту в один гігагерц може виконати десять мільйонів циклів виконання інструкцій.
- 컴퓨터 과학에서 비동기 입출력(asynchronous I/O) 또는 비순차 입출력(non-sequential I/O)은 데이터 전송을 마치기 전에 기타 프로세스가 계속하도록 허가하는 입출력 처리의 한 형태이다. 컴퓨터에서의 입출력 기능은 데이터 처리 시 보다 상당히 느릴 수 있다. 모든 입출력 장치는 읽기나 쓰기를 위해 트랙을 찾는 하드 드라이브와 같이 물리적으로 움직여야 하는 기계 장치를 포함할 수 있다. 즉, 전기 회로를 전환하는 것 보다 종종 더 느리다. 이를테면, 디스크 작업 수행에 10 밀리초가 소요되는 동안 1 기가헤르츠 클럭의 프로세서는 10,000,000 명령 처리 사이클을 수행할 수 있다. 입출력에 대한 단순 접근은 액세스를 시작하고 끝날 때까지 기다리는 것이다. 그러나 이러한 접근(동기 입출력)은 통신 중에 프로그램의 진행을 가로막아, 을 유휴 상태로 만들어버린다. 프로그램이 수많은 입출력 동작을 취할 때, 프로세서는 입출력 동작이 끝날 때까지 기다리는 유휴 시간 대부분을 소모할 수 있다. 한편, 통신을 시작한 다음 입출력이 끝날 것을 요구하지 않는 처리를 수행할 수 있다. 이러한 접근은 비동기 입출력으로 부른다.
- В информатике асинхронный ввод/вывод является формой неблокирующей обработки ввода/вывода, который позволяет процессу продолжить выполнение не дожидаясь окончания передачи данных. Входные и выходные (I/O) операции на компьютере могут быть весьма медленными, по сравнению с обработкой данных. Устройство ввода/вывода может быть на несколько порядков медленнее, чем оперативная память. Например, во время дисковой операции, которой требуется десять миллисекунд для выполнения, процессор, который работает на частоте один гигагерц, может выполнить десять миллионов циклов команд обработки.
- 非同期I/O (Asynchronous I/O) とは、入出力の処理を、その要請元のプロセス・スレッドとは独立に(非同期に)行う、入出力のAPIの類型である。
- 异步IO是计算机操作系统对输入输出的一种处理方式:发起IO请求的线程不等IO操作完成,就继续执行随后的代码,IO结果用其他方式通知发起IO请求的程序。与异步IO相对的是更为常见的“同步(阻塞)IO”:发起IO请求的线程不从正在调用的IO操作函数返回(即被阻塞),直至IO操作完成。
|
έχει περίληψη
| - В информатике асинхронный ввод/вывод является формой неблокирующей обработки ввода/вывода, который позволяет процессу продолжить выполнение не дожидаясь окончания передачи данных. Входные и выходные (I/O) операции на компьютере могут быть весьма медленными, по сравнению с обработкой данных. Устройство ввода/вывода может быть на несколько порядков медленнее, чем оперативная память. Например, во время дисковой операции, которой требуется десять миллисекунд для выполнения, процессор, который работает на частоте один гигагерц, может выполнить десять миллионов циклов команд обработки.
- 非同期I/O (Asynchronous I/O) とは、入出力の処理を、その要請元のプロセス・スレッドとは独立に(非同期に)行う、入出力のAPIの類型である。
- 异步IO是计算机操作系统对输入输出的一种处理方式:发起IO请求的线程不等IO操作完成,就继续执行随后的代码,IO结果用其他方式通知发起IO请求的程序。与异步IO相对的是更为常见的“同步(阻塞)IO”:发起IO请求的线程不从正在调用的IO操作函数返回(即被阻塞),直至IO操作完成。
- Асинхронний або неблокуючий ввід/вивід — це форма обробки вводу/виводу, яка дозволяє виконувати інші процеси ще до того як закінчиться передавання даних. Операції вводу/виводу на комп’ютері можуть бути надзвичайно повільними порівняно з обробкою даних. Пристрій вводу/виводу може містити механічні частини які повинні фізично переміщуватись, наприклад жорсткий диск, який шукає доріжку для запису чи читання. Це часто на порядки повільніше ніж перемикання електричного струму. Наприклад під час дискової операції що займає десять мілісекунд, процесор що має частоту в один гігагерц може виконати десять мільйонів циклів виконання інструкцій. Простішим підходом до вводу/виводу є запитати доступ, і чекати на отримання даних. Але такий підхід (що називається синхронним, чи блокуючим) зупиняє роботу програми на час виконання вводу/виводу, призводячи до простоювання обчислювальних ресурсів. Коли програма робить багато операцій вводу/виводу, процесор майже ввесь свій час може проводити очікуючи на завершення виконання цих операцій. Альтернативою є почати комунікацію, а потім виконати процеси що не потребують результатів її завершення. Цей підхід називають вводом/виводом. Будь-яка задача що насправді залежить від результатів вводу-виводу все ще очікуватиме завершення комунікації, але інші процеси зможуть продовжувати роботу. В операційних системах існує багато функцій на різних рівнях, призначених для реалізації асинхронного I/O. Насправді, у всіх, окрім найбільш рудиментальних операційних систем, головною функцією є забезпечення хоча б базових форм асинхронного I/O, хоча це може бути не надто видимим для користувача чи програміста. В найпростішому програмному рішенні, статус пристрою постійно з певними інтервалами, щоб визначити чи готовий пристрій до наступної операції. (Наприклад CP/M працювала таким чином. Семантика її системних викликів не вимагала більш складної структури вводу/виводу, хоча більшість реалізацій були складнішими та ефективнішими). Прямий доступ до пам’яті може значно збільшити ефективність систем що базуються на опитуванні, а можуть взагалі усунути потребу в опитуванні. Багатозадачні операційні системи можуть використовувати функціональність яка надається апаратними перериваннями, при цьому ховаючи складність обробки переривання від користувача. був першою формою багатозадачності створеної для експлуатації асинхронного вводу виводу. Асинхронний ввід/вивід використовується для збільшення пропускної здатності, та швидкості реагування на події.
- In computer science, asynchronous I/O (also non-sequential I/O) is a form of input/output processing that permits other processing to continue before the transmission has finished. Input and output (I/O) operations on a computer can be extremely slow compared to the processing of data. An I/O device can incorporate mechanical devices that must physically move, such as a hard drive seeking a track to read or write; this is often orders of magnitude slower than the switching of electric current. For example, during a disk operation that takes ten milliseconds to perform, a processor that is clocked at one gigahertz could have performed ten million instruction-processing cycles. A simple approach to I/O would be to start the access and then wait for it to complete. But such an approach (called synchronous I/O, or blocking I/O) would block the progress of a program while the communication is in progress, leaving system resources idle. When a program makes many I/O operations (such as a program mainly or largely dependent on user input), this means that the processor can spend almost all of its time idle waiting for I/O operations to complete. Alternatively, it is possible to start the communication and then perform processing that does not require that the I/O be completed. This approach is called asynchronous input/output. Any task that depends on the I/O having completed (this includes both using the input values and critical operations that claim to assure that a write operation has been completed) still needs to wait for the I/O operation to complete, and thus is still blocked, but other processing that does not have a dependency on the I/O operation can continue. Many operating system functions exist to implement asynchronous I/O at many levels. In fact, one of the main functions of all but the most rudimentary of operating systems is to perform at least some form of basic asynchronous I/O, though this may not be particularly apparent to the user or the programmer. In the simplest software solution, the hardware device status is polled at intervals to detect whether the device is ready for its next operation. (For example, the CP/M operating system was built this way. Its system call semantics did not require any more elaborate I/O structure than this, though most implementations were more complex, and thereby more efficient.) Direct memory access (DMA) can greatly increase the efficiency of a polling-based system, and hardware interrupts can eliminate the need for polling entirely. Multitasking operating systems can exploit the functionality provided by hardware interrupts, whilst hiding the complexity of interrupt handling from the user. Spooling was one of the first forms of multitasking designed to exploit asynchronous I/O. Finally, multithreading and explicit asynchronous I/O APIs within user processes can exploit asynchronous I/O further, at the cost of extra software complexity. Asynchronous I/O is used to improve throughput, latency, and/or responsiveness.
- 컴퓨터 과학에서 비동기 입출력(asynchronous I/O) 또는 비순차 입출력(non-sequential I/O)은 데이터 전송을 마치기 전에 기타 프로세스가 계속하도록 허가하는 입출력 처리의 한 형태이다. 컴퓨터에서의 입출력 기능은 데이터 처리 시 보다 상당히 느릴 수 있다. 모든 입출력 장치는 읽기나 쓰기를 위해 트랙을 찾는 하드 드라이브와 같이 물리적으로 움직여야 하는 기계 장치를 포함할 수 있다. 즉, 전기 회로를 전환하는 것 보다 종종 더 느리다. 이를테면, 디스크 작업 수행에 10 밀리초가 소요되는 동안 1 기가헤르츠 클럭의 프로세서는 10,000,000 명령 처리 사이클을 수행할 수 있다. 입출력에 대한 단순 접근은 액세스를 시작하고 끝날 때까지 기다리는 것이다. 그러나 이러한 접근(동기 입출력)은 통신 중에 프로그램의 진행을 가로막아, 을 유휴 상태로 만들어버린다. 프로그램이 수많은 입출력 동작을 취할 때, 프로세서는 입출력 동작이 끝날 때까지 기다리는 유휴 시간 대부분을 소모할 수 있다. 한편, 통신을 시작한 다음 입출력이 끝날 것을 요구하지 않는 처리를 수행할 수 있다. 이러한 접근은 비동기 입출력으로 부른다. 비동기 입출력을 사용하면 스루풋, 레이턴시, 반응 속도를 개선할 수 있다.
|