Быстрый путь
Быстрый путь — это термин, используемый в информатике для описания пути с более короткой длиной пути инструкций в программе по сравнению с обычным путем. Чтобы быстрый путь был эффективным, он должен решать наиболее часто возникающие задачи более эффективно, чем обычный путь, оставляя последнему обрабатывать необычные случаи, крайние случаи , обработку ошибок и другие аномалии. Быстрые пути — это форма оптимизации . [1]
Например, выделенное для маршрутизации пакетов, оборудование используемое для построения компьютерных сетей, часто заботится о наиболее распространенных типах пакетов на аппаратном уровне, а другие типы передаются по «медленному пути», обычно реализуемому программным обеспечением, работающим на управляющем процессоре. Например, пакеты со специальной управляющей информацией, пакеты с ошибками или пакеты, направленные на само устройство, а не направляемые куда-либо еще, будут передаваться по медленному пути. Медленный путь более гибок и может обрабатывать пакеты любого типа.
Даже в чистом программном обеспечении были разработаны конкретные реализации, которые используют концепцию быстрого пути для максимизации производительности обработки пакетов. В этих реализациях сетевой стек разделен на два уровня, и нижний уровень обрабатывает большую часть входящих пакетов вне среды операционной системы (ОС), не вызывая каких-либо дополнительных затрат ОС, которые ухудшают общую производительность. Только те редкие пакеты, которые требуют сложной обработки, пересылаются в сетевой стек ОС, который выполняет необходимые функции управления, сигнализации и контроля.
Некоторые аппаратные RAID- контроллеры реализуют «быстрый путь» для доступа со сквозной записью , который в определенных ситуациях обходит кэш контроллера. Это имеет тенденцию к увеличению количества операций ввода-вывода в секунду , особенно для твердотельных накопителей .
Чтобы быстрый путь приносил пользу, он должен обрабатывать большинство операций. Это связано с тем, что тест «быстрый или медленный путь» сам по себе замедляет медленный путь. Одним из распространенных способов проведения атаки типа «отказ в обслуживании» является загрузка устройства пакетами, требующими использования медленного пути.