Чем отличается ВРИО от ИО
Временное исполнение чужих обязанностей порождает необходимость документального обозначения статуса работника. Две основных формы для этого – ВРИО и ИО, которые в значительной степени похожи между собой. Существуют ли различия между ними и насколько они существенны?
Определение
ВРИО – это форма временного замещения сотрудника, когда работник исполняет определённые обязанности по должности, за что ему выплачивается разница между окладами его основной и фактически занимаемой должности. При этом свои обязанности он исполняет исключительно в период отсутствия основного работника и после его выхода возвращается на своё прежнее место либо переводится на другой участок.
ИО – это форма совмещения должностей, при которой сотрудник исполняет обязанности до назначения нового лица на вакантное место. Работник не освобождается от своих основных обязанностей, а об исполнении обязанностей запись в трудовую книжку не делается. По возвращении основного сотрудника он вновь занимает свою главную должность.
к содержанию ↑Сравнение
Правовая дифференциация данных терминов заложена в статьях 74 и 151 Трудового кодекса РФ, а их положения отточены на практике. Так, ВРИО назначается на должность с освобождением от старой. Место, которое он занял, не является вакантным, соответственно, он будет трудиться до возвращения основного работника. ИО совмещает обязанности со своей основной должностью. При этом место, на которое он назначен, остаётся вакантным.
Стоит сразу оговориться, что толкование норм сформировано практикой, и зачастую ВРИО и ИО используются как синонимы. Доплата производится в случаях, если временно исполняющий должность не является штатным заместителем лица, которое не может приступить к трудовым обязанностям. Официальные разъяснения ничуть не снимают остроту проблемы, так как сами противоречивы.
к содержанию ↑Выводы TheDifference.ru
- Содержание. ВРИО исключительно исполняет обязанность временной занимаемой им должности, в то время как ИО совмещает обязанности с основной должностью.
- Продолжительность. ВРИО исполняет обязанности до выхода основного работника, ИО – до назначения нового лица на должность.
- Наличие вакантного места. ВРИО назначается в случае, если основной работник временно не может исполнять трудовые обязанности, ИО – при наличии свободного «кресла».
- Обязанности. ИО совмещает временную должность с основными обязанностями, ВРИО – переводится на новую работу.
ВРИО – как оформить назначение
Зачастую в документах встречаются такие аббревиатуры как врио. Как расшифровывается данный термин, что обозначает? Правомерно ли его указание в документации предприятия? Разберемся подробнее.
Что включает в себя понятие врио?
Если основной сотрудник отсутствует, его обязанности могут быть переданы другому специалисту. При этом не имеет значения, по какой причине не выходит прежний сотрудник – из-за болезни, отпуска, командировки и т.д. Главное – вовремя передать его полномочия и правильно оформить документы на кадровые перестановки.
Аббревиатура врио расшифровывается как временно исполняющий обязанности. При этом функционал одного сотрудника передается другому. Получение письменного согласия является обязательным условием для расширения объем работ. Соответственно, дополнительная нагрузка на специалиста должна быть оплачена в повышенном размере. В каком именно, решается по взаимному соглашению сторон. Отказаться от допнагрузки вправе как сотрудник, так и работодатель с предупреждением другой стороны минимум за 3 дня (рабочих) и в письменной форме.
Отличия между врио и ио
Помимо термина врио кадровики нередко используют понятие ио. Что это такое? Этот термин обозначает исполняющего обязанности. Главное различие – отсутствует слово временный. Ио назначается в том случае, когда руководящая должность остается свободной, а в организации идет поиск кандидата на вакантное место. Или ио может назначаться во время испытательного срока.
Врио подразумевает временное исполнение обязанностей. Основная должность при этом сохраняется за отсутствующим специалистом. Этот момент является ключевым. Работник, которого принимают для замещения постоянного сотрудника, должен понимать, что, как правило, такое трудоустройство носит временный характер.
Вывод: Врио – работник, временно замещающий отсутствующего сотрудника. Ио – работник, исполняющий функции до того, как будет найден достойный кандидат на вакантную должность. При временном исполнении вменяемые функции передаются в дополнение к основным обязанностям за повышенную зарплату. При исполнении обязанностей (ио) занятость представляет собой новую работу на тот период, пока должность свободна.
Возложение дополнительных обязанностей без согласия работника
Временное исполнение обязанностей – нормативная база
В соответствии с положениями стат. 60.2 ТК в целях выполнения трудовых функций временно отсутствующего специалиста его работу можно поручить другому сотруднику компании. Нагрузка носит дополнительный характер, то есть, подразумевает одновременное выполнение своих и чужих обязанностей.
Поскольку такая работа имеет повышенные объемы, сотрудник должен дать письменное согласие на кадровые перестановки. Без наличия данного согласия нельзя поручить специалисту дополнительные функции. Совмещать разрешается как отдельные должности, так и профессии. Общий срок исполнения временной работы, ее перечень, объемы устанавливает работодатель. Если достигнуто взаимное согласие между сторонами трудовых взаимоотношений, требуется издать приказ.
Временно исполняющий обязанности – как оформить полномочия
Чтобы исполнение дополнительных функций носило правомерный характер, кадровик работодателя обязан корректно оформить перестановку и подготовить пакет обязательных документов. Какие формы составлять – это зависит от того, как именно будут выполняться обязанности отсутствующего постоянного сотрудника. Передача полномочий возможна несколькими способами:
- Совмещение – оформление выполняется согласно стат. 60.2 ТК. То есть, на сотрудника в дополнение к основным обязанностям возлагаются функции отсутствующего специалиста. При этом совмещаются профессии или должности. Кадровая перестановка документально подкрепляется оформлением распоряжения руководителя на врио, дополнительным соглашением к основному трудовому договору. Заключать новый контракт не требуется. Если специалист отказывается от временного исполнения, принудить его к повышенным нагрузкам работодатель не вправе.
- Перевод – в соответствии с положениями стат. 72.1 ТК перевод означает полное перемещение специалиста с одного места работы на другое. Допускается перевод между структурными подразделениями одного предприятия. Также требуется наличие согласия (письменного) специалиста. Исключением являются форс-мажорные обстоятельства, обозначенные в ч. 2, 3 стат. 72.2 ТК. В отличие от расширения объема работ перевод не обязывает работника одновременно исполнять свои и дополнительные обязанности. От собственного функционала сотрудник полностью освобождается работодателем. Для правомерности таких трудовых взаимоотношений заключается допсоглашение к основному ТД.
- Совместительство – порядок внутреннего совместительства регулируется в глав. 44 ТК. Подобная занятость обязывает специалиста исполнять допобязанности во время, свободное от основной работы. Кадровое оформление предусматривает подписание отдельного трудового договора. Внутренним совместителям полагаются все трудовые гарантии и льготы, которые распространяются на основной персонал. Точные условия сотрудничества определяются в ТД. Максимальная продолжительность ежедневной занятости совместителей не может превышать 4 час. в день.
Какой способ оформления врио выбрать, решает работодатель. Любой вариант повышенной нагрузки должен быть оплачен дополнительно. Сумма доплаты при совмещении должностей (профессий) или при расширении объемов работ определяется в виде отдельной выплаты. Или можно установить доплату в процентах к основному заработку. Если работник переводится или оформляется совместителем, ему нужно установить новую зарплату с учетом загрузки.
Надо ли и как писать термин врио в документах
Если изучить законодательство, нигде нет упоминаний о том, что в реквизитах нужно использовать приставку врио, то есть, указывать на временный характер должности. В связи с этим при визировании документов сотрудник подписывается напротив своей фамилии:
- Начальник отдела Сидоров /Сидоров А.Н./
Главное, чтобы полномочия работника были подтверждены приказом руководителя о возложении обязанностей. В некоторых организациях применяется способ, принятый еще в СССР. Когда перед должностью ставится знак «/», а уполномоченное лицо ставит свою подпись. Однако в настоящее время существует запрет на использование такого знака. Особенно это важно при работе в госорганах (Методические рекомендации по делопроизводству в федеральных органах власти по Приказу Росархива № 76 от 23.12.09 г.).
Если в отдельных ситуациях возникает необходимость на указание временного исполнения, тогда можно привести термин врио перед должностью. А затем уже проставить подпись и ее расшифровку. Какой вариант аббревиатуры использовать (ВРИО, В.Р.И.О, врио, ВрИО или другой) имеет значение. Подробнее этот вопрос рассмотрен в отдельной статье.
Временный единоличный исполнительный орган общества
Временный единоличный исполнительный орган акционерного общества — осуществляет руководство текущей деятельностью общества в пределах компетенции исполнительных органов общества, если компетенция временных исполнительных органов не ограничена уставом.
Временный единоличный исполнительный орган (временный директор) образуется по решению совета директоров общества в следующих случаях:
- Когда общее собрание акционеров (или совет директоров, если это по уставу отнесено к его компетенции) приняло решение о досрочном прекращении полномочий генерального директора и членов правления. Общее собрание также вправе в любое время принять решение о досрочном прекращении полномочий управляющей организации (управляющего).
- Когда по решению совета директоров приостановлены полномочия генерального директора или управляющей организации (управляющего).
- Когда генеральный директор или управляющая организация (управляющий) не могут исполнять свои обязанности.
Чем отличается временный директор от исполняющего обязанности?
Временный единоличный исполнительный орган акционерного общества отличается от исполняющего обязанности единоличного исполнительного органа акционерного общества, прежде всего тем, что его порядок избрания, назначения и прекращения полномочий регулируется только законом об акционерных обществах.
Временный директор избирается в тех случаях, когда по каким-либо причинам директор (генеральный директор) в акционерном обществе отсутствует постоянно (смерть, неспособность исполнять обязанности, отстранение от должности), в то время как исполняющий обязанности – обычно на период временного отсутствия действующего директора (отпуск, командировка, болезнь).
И.о. директора действует по приказу действующего генерального директора и в момент назначения его исполняющим обязанности является работником акционерного общества. Временный директор всегда избирается советом директоров (наблюдательным советом) акционерного общества, и может в момент избрания не являться работником общества. Должность исполняющего обязанности директора в обществе отсутствует (вас не могут принять на работу на должность и.о. директора), в то время как временный директор – это самостоятельная должность в штатном расписании (работник принимается на должность временного директора).
И, что немаловажно – формальное ограничение продолжительности исполнения обязанностей директора, как и любой другой должности, существует и ограничивается 3 месяцами, в то время как временный директор действует до прекращения его полномочий или избрания директора – без какого-либо формального ограничения срока.
Посмотреть таблицу
Главные различияВременный единоличный исполнительный орган акционерного обществаИсполняющий обязанности единоличного исполнительного органа акционерного обществаИзбирается, когда директор отсутствует постоянно | Избирается на период временного отсутствия директора | |
В момент избрания может не являться работником акционерного общества | Является работником акционерного общества и действует по приказу действующего генерального директора | |
Является самостоятельной должностью в штатном расписании | Не является самостоятельной должностью в штатном расписании | |
Нет формальных ограничений исполнения обязанностей | Формальное ограничение продолжительности исполнения обязанностей – 3 месяца |
Изменения в законодательстве
Само по себе понятие временного директора возникло в российском законодательстве в 2001 году. Первоначально оно было предназначено только для оперативного решения при смене директора. Типичной ситуацией в это время была следующая: для отстранения действующего директора необходимо единогласное решение всех членов совета директоров, одним из которых был сам директор, а другим – его друг и заместитель. Акционеры, имеющие более 50% голосующих акций, не имели никакой возможности сменить директора акционерного общества или избрать нового директора без согласия бывшего директора или миноритарных акционеров (обладающие небольшим количеством акций).
Но с внесением в 2009 году в Федеральный закон «Об акционерных обществах» изменений (части 5-9 статьи 69) ситуация изменилась.
Совет директоров вправе вынести вопрос о досрочном прекращении полномочий единоличного исполнительного органа акционерного общества, если это решение не принято:
- советом директоров на двух проведённых подряд заседаниях совета директоров общества;
- в течение 2 месяцев с даты прекращения полномочий предыдущего единоличного исполнительного органа акционерного общества.
К сожалению, эта процедура непроста и занимает 4—5 месяцев. Без введения понятия «временного директора» общество и мажоритарный акционер окажутся в ситуации, когда акционерным обществом не управляет никто. Сейчас в такой ситуации, не дожидаясь решения внеочередного общего собрания акционеров, члены совета директоров могут простым большинством голосов, от общего числа членов совета директоров, избрать временного директора, срок действия полномочий которого устанавливается на период до избрания генерального директора. И тогда развитие акционерного конфликта выглядит для мажоритарного акционера уже не так пугающе – ведь контроль над текущей хозяйственной деятельностью акционерного общества останется за мажоритарным акционером.
На практике реализация данной нормы сопряжена со значительными трудностями, прежде всего из-за отсутствия в законодательстве чёткого определения некоторых сроков и существенных моментов, что позволяет в некоторых случаях отстраняемым директорам и миноритарным акционерам успешно блокировать попытки основных акционеров по избранию временного директора и назначению собрания акционеров.
Чем отличается ВРИО от ИО |
Временное исполнение чужих обязанностей порождает необходимость документального обозначения статуса работника. Две основных формы для этого – ВРИО и ИО, которые в значительной степени похожи между собой. Существуют ли различия между ними и насколько они существенны?
Что означает ВРИО и ИО
ВРИО – это форма временного замещения сотрудника, когда работник исполняет определённые обязанности по должности, за что ему выплачивается разница между окладами его основной и фактически занимаемой должности. При этом свои обязанности он исполняет исключительно в период отсутствия основного работника и после его выхода возвращается на своё прежнее место либо переводится на другой участок.
Разница между ВРИО и ИО
Правовая дифференциация данных терминов заложена в статьях 74 и 151 Трудового кодекса РФ, а их положения отточены на практике. Так, ВРИО назначается на должность с освобождением от старой. Место, которое он занял, не является вакантным, соответственно, он будет трудиться до возвращения основного работника. ИО совмещает обязанности со своей основной должностью. При этом место, на которое он назначен, остаётся вакантным.
TheDifference.ru определил, что отличие ВРИО от ИО заключается в следующем:
Содержание. ВРИО исключительно исполняет обязанность временной занимаемой им должности, в то время как ИО совмещает обязанности с основной должностью.
Наличие вакантного места. ВРИО назначается в случае, если основной работник временно не может исполнять трудовые обязанности, ИО – при наличии свободного «кресла».
Обязанности. ИО совмещает временную должность с основными обязанностями, ВРИО – переводится на новую работу.
статус в теории и на практике
Многие компании и предприятия используют труд работников, по определенным обстоятельствам не утвержденных в соответствующей вакантной должности на постоянной основе. Такие работники называются исполняющими обязанности. В системе государственной службы случаи назначения исполняющих обязанности тоже нередки. Чего стоит лишь когорта председателей государственных администраций, которых Президент назначил в обход правительства. Даже в спорте после увольнения главного тренера футбольного клуба собственники назначают кого-то из штата тренеров исполняющим обязанности.
В этой статье предлагаем проанализировать возможность использования формулировки «исполняющий обязанности» в трудовых отношениях и ее соответствие действующему законодательству.
Исполняющий обязанности — это работник (служащий), который фактически выполняет работу (несет службу) по определенной вакантной должности, не занимая ее. При этом важно не путать понятие «исполняющий обязанности» с замещением временно отсутствующего работника
Конституционное законодательство Украины дает определенные ответы на рассматриваемый вопрос. Так, Конституция Украины предусматривает выполнение обязанностей Премьер-министра и членов Кабинета Министров после отставки правительства до момента формирования его нового состава. Также, согласно Закону Украины «О временном исполнении обязанностей должностных лиц, которых назначает на должность с согласия Верховной Рады Украины Президент Украины или Верховная Рада Украины по представлению Президента Украины» № 709/97 от 10 декабря 1997 года, в случае увольнения (отставки) лица, которое назначает на должность с согласия Верховного Совета Украины Президент Украины, или лица, которое назначает на должность Верховный Совет Украины по представлению Президента Украины, обязанности уволенного лица временно, но не больше одного месяца, выполняет первый заместитель (а в случае его отсутствия — заместитель) этого должностного лица, назначенный конституционно легитимным лицом. Согласно решению Конституционного Суда Украины от 27 апреля 2000 года № 7‑рп/2000, нормы этого Закона распространяются на временное выполнение обязанностей и назначение на должности всех без исключения должностных лиц, которых назначает Президент с согласия Верховного Совета или Верховный Совет по представлению Президента, за исключением Премьер-министра Украины и членов Центральной избирательной комиссии. Итак, Закон автоматически делает исполняющим обязанности первого или одного из других заместителей уволенного должностного лица, что больше похоже на заместительство. Тем не менее назначение временно исполняющим обязанности на вакантную должность лица не из числа заместителей этим нормативным актом не предусмотрено.
Основная проблема в том, что действующее законодательство Украины о труде вообще не содержит понятия «исполняющий обязанности» относительно незанятой должности. Вместе с тем, согласно постановлению Верховной Рады Украины от 12 сентября 1991 года №1545-XII «О порядке временного действия на территории Украины некоторых актов законодательства Союза ССР», до сих пор является действующим разъяснение Госкомитета Совета Министров СССР по вопросам труда и заработной платы и Секретариата ВЦСПС № 30/39 от 29 декабря 1965 года «О порядке оплаты временного заместительства», в котором, по крайней мере, есть несколько абзацев об исполняющем обязанности. В пункте 2 указанного разъяснения идет речь о том, что назначение работника исполняющим обязанности на вакантную должность не допускается. Это возможно лишь на должность, назначение на которую осуществляется вышестоящим органом управления. В этом случае руководитель предприятия, учреждения, организации обязан не позднее месячного срока со дня принятия работника на работу представить в вышестоящий орган управления документы для его назначения на должность. Этот орган в месячный срок со дня получения документов должен рассмотреть вопрос и сообщить руководителю о результатах. То есть, имеем ссылку на «исполняющего обязанности» с одновременным предостережением о невозможности выполнения обязанностей по вакантной должности, за исключением должности, назначает на которую вышестоящий орган управления, причем общий срок такого выполнения не может быть больше двух месяцев.
Что нам дает разъяснение № 30/39? По большому счету, кроме упоминания об «исполняющем обязанности», ничего: ни определения, ни сроков такой работы, ни правового регулирования прекращения, ни возможности занятия должности на постоянной основе не предусмотрено. Тем паче, есть мнение, что пункт 2 разъяснения № 30/39 противоречит законодательству Украины, и на основании постановления Верховной Рады от 12 сентября 1991 года № 1545 не может применяться, поскольку им (законодательством) определен иной порядок назначения на должность, чем установленный для должностных лиц предприятий, учреждений, организаций до обретения Украиной независимости.
Необходимо также иметь в виду, что согласно вышеуказанному постановлению № 1545, действующим на территории Украины остается и Указ Президиума Верховного Совета СССР № 311-IX от 24 сентября 1974 года «Об условиях труда временных работников и служащих» (далее — Указ). Согласно пункту 1 Указа, временными работниками и служащими считаются работники и служащие, принятые на работу на срок до двух месяцев. И хотя этот Указ не содержит положений об исполняющем обязанности, зато имеет ссылку о возможности использования временного труда и практически соотносится с нашим проблемным вопросом. Так, словосочетание «возложить выполнение обязанностей» нередко дополняется словом «временно». Соответственно в распорядительном документе или приказе пишется: «Временно возложить выполнение обязанностей». С точки зрения трудовых правоотношений это сложная юридическая конструкция, поскольку исполняющий обязанности не занимает соответствующую должность, а Указом устанавливаются определенные условия труда штатных работников и служащих, которые работают временно. Тем не менее, учитывая почти полное отсутствие правового регулирования, убеждаемся в возможности распространения действия Указа на правовой статус временно исполняющего обязанности в части временности, то есть срока не больше двух месяцев.
Формулировка «временно возложить выполнение обязанностей» или «назначить исполняющим обязанности» так или иначе используется разными органами государства. Для примера возьмем акты Президента о назначении председателей государственных администраций (Указ от 10 июля 2007 года № 623; Указ от 15 ноября 2007 года № 1097; Указ от 2 ноября 2007 года № 1057; распоряжение от 11 апреля 2007 года № 76/2007‑рп; распоряжение от 24 апреля 2007 года № 89/2007‑рп; распоряжение от 14 октяб ря 2008 года № 296/2008-рп и прочие). Безусловно, эти указы и распоряжения Президента, а также легитимность назначенных лиц вызывают сомнение относительно их законности как в плане непредусмотренного законодательством выполнения обязанностей по вакантной должности, так и в плане временности (все выполняли обязанности больше двух месяцев).
Что касается назначения лица «исполняющим обязанности» на вакантную должность в разрезе трудового права, то, исходя из сказанного выше, работодателям нужно четко запомнить — это незаконно, законодательством Украины такое не предусмотрено. Назначая лицо временно исполняющим обязанности на вакантную должность, работодатель фактически допускает его к работе, что является полноценным заключением трудового договора согласно статье 24 Кодекса законов о труде (КЗоТ) Украины. И никакие документы, в которых отображается «выполнение обязанностей», не имеют значения. Единственный аргумент работодателя — это то, что с работником заключен временный трудовой договор, и то при условии, если установленный Указом № 311 срок не истек. Такая же ситуация и при назначении исполняющим обязанности работника, который уже находится в трудовых отношениях с соответствующим предприятием или компанией. Это является ничем иным, как переводом на другую должность (статья 32 КЗоТ). Если такой перевод осуществлен без письменного согласия работника, но он добровольно приступил к выполнению обязанностей на другой должности (работе), такой перевод является законным, а работник считается занимающим эту должность с первого дня такого перевода. Добавим, что, согласно пункту 2.14 приказа Минтруда, Минюста, Минсоцзащиты Украины от 29 июля 1993 года № 58 «Об утверждении Инструкции о порядке ведения трудовых книжек работников», сведения о работе заносятся в трудовую книжку работника согласно Классификатору ДК 003:2005, который содержит перечень профессий и должностей без единого упоминания о временном выполнении обязанностей.
Вывод: такой статус лица, как «исполняющий обязанности», в трудовых отношениях является некорректным и незаконным. Это больше практическое, чем правовое, состояние. Необходимо или идти за практикой, вносить изменения в КЗоТ и определять правовое регулирование временного выполнения обязанностей (понятие, порядок назначения, сроки пребывания, условия труда, гарантии, возможности для перехода на постоянно и т. п.), или исключить эти практические моменты путем законного запрета на трудовую деятельность в качестве исполняющего обязанности.
Джерело: komuna.lviv.ua
И о главного бухгалтера как правильно писать
Перед тем как назначит ио главного бухгалтера, необходимо оформить совмещение профессий. Для этой процедуры составляется дополнительное трудовое соглашение, а так же приказ о временном назначении сотрудника исполняющим обязанности главного бухгалтера.
Поиск ответа
Устанавливается и плата за совмещение двух должностей.
Для того чтобы правильно и быстро оформить работника на должность ио главного бухгалтера, работнику отдела кадров будут нужны документы сотрудника, документы и печать организации, в которой он работает, а так же бланки всех необходимых для оформления документов.
Итак, как назначить ио главного бухгалтера правильно и быстро? Для этого следуйте инструкции:
Обычно на должность ио главного бухгалтера назначают ведущего бухгалтера. Заключая дополнительное соглашение с этим сотрудником, пропишите все его обязанности на новой должности и новые права. Обязанности ио главного бухгалтера сотрудник должен будет выполнять вместе со своими обычными обязанностями. Важно указать размер доплаты за выполнение дополнительных функций. Награждением за исполнение обязанностей главного бухгалтера может быть процент от оклада главного бухгалтера или процент от оклада той должности. Которую обычно занимает сотрудник.
Важно указать срок, на который работник назначается исполняющим обязанности главного бухгалтера. Так же нужно установить право его подписи на финансовых документах, которые должен подписывать главный бухгалтер.
Перед заключением трудового договора, все условия работы должны быть оговорены и согласованы с сотрудником. Соглашение должно быть заверено директором организации и печатью этой организации. Так же под договором должна стоять подпись и самого сотрудника, назначаемого на новую должность.
Составление приказа о назначении сотрудника на должность ио главного бухгалтера.
В шапке документа указывается полное и сокращённое название организации. В том случае если организационно-правовая форма предприятия это частный предприниматель, следует указать его фамилию, имя и отчество.
Далее указывается номер и дата приказа, а так же город, в котором находится организация. Темой документа в данном случае будет назначение сотрудника исполняющим обязанности главного бухгалтера. Причиной составления приказа – необходимость заместить главного бухгалтера на время его отсутствия.
Обязательно указывается срок, на который сотрудник должен исполнять обязанности главного бухгалтера. Если сотруднику придется быть ио главного бухгалтера больше месяца, то совмещение двух должностей недопустимо. В таком случае необходимо оформлять перевод на новую должность. В любом случае, далее в приказе указывается размер вознаграждения за выполнение дополнительных обязанностей и устанавливается право подписи исполняющего обязанности главного бухгалтера.
© Автор: Давыдченко Анна
Комментарии
Добавить комментарий
Поля отмеченные * обязательны.
Как оформить временное исполнение обязанностей генерального директора
руководителя фирмы требуется в случаях, когда он по каким-то причинам отсутствует (болеет, находится в командировке, отпуске и т. п.). Как правило, временное исполнение обязанностей генерального директора возлагается на его заместителя. Если у директора нет заместителя, в должностные обязанности которого входило бы временное выполнение функций руководителя, то эти обязанности генеральный директор возлагает на другого сотрудника. В этом случае он должен издать приказ о временном возложении обязанностей руководителя фирмы на этого сотрудника.
Порядок временного замещения руководителя рекомендуется прописать в УСТАВЕ фирмы и в трудовых договорах с генеральным директором, его заместителем.
(Кому?) И.о. директора? И.о. директору? Как правильно написать в заявлении?
Если в уставе подробно прописана вся процедура, то издания отдельного приказа не требуется.
Нужно ли заключать с сотрудником, который не является штатным заместителем генерального директора, дополнительное соглашение к трудовому договору о временном исполнении его обязанностей?
Все будет зависеть от того, как именно оформлено временное исполнение обязанностей. Если при этом сотрудник не освобождается от своей основной работы, то исполнение обязанностей можно поручить ему с его письменного согласия (ст. 60.2 ТК РФ). При этом рекомендуется заключить с сотрудником дополнительное соглашение к трудовому договору, в котором прописать все обязанности по замещаемой должности, установить срок замещения, определить размер доплаты. Но есть и другой вариант оформления таких отношений — через временный перевод на другую работу для замещения временно отсутствующего сотрудника (ст. 72.2 ТК РФ). В этом случае также нужно оформить с сотрудником дополнительное соглашение к трудовому договору, поскольку такой перевод происходит по соглашению сторон. В качестве срока перевода в соглашении укажите: лДо выхода генерального директора на работу» (ст. 72.2 ТК РФ) Запись в трудовую книжку ни в том, ни в другом случае делать не нужно.
Исполняющий обязанности генерального директора должен подписывать документы от своего имени, поскольку ему официально делегированы эти полномочия. Часто встречается ситуация, когда в стандартный бланк (например, в унифицированные формы по учету труда и его оплаты) вписана должность и фамилия генерального директора, а исполняющий обязанности перед наименованием должности от руки пишет ли. о.» и ставит свою подпись. Получается, что подпись и расшифровка подписи не совпадают. В то же время в реквизит лподпись» должны входить наименование должности лица, подписавшего документ, его личная подпись, расшифровка подписи (инициалы, фамилия). Такие требования предусмотрены пунктом 3.22 ГОСТ Р 6-30/2003. Учтите, что такой должности, как лисполняющий обязанности», не существует. Поэтому исполняющий обязанности должен указывать в документах ту должность, которую он занимает по штатному расписанию фирмы.
При подготовке документов на подпись исполняющему обязанности генерального директора не забывайте изменять в бланках наименование должности и расшифровку подписи. Несовпадение должности, подписи и расшифровки сделает документ юридически недействительным.
В каких случаях нужна доверенность
Если ни устав, ни трудовой договор с руководителем не предусматривают возможности передачи полномочий в отсутствие генерального директора, то необходимо оформить гражданско-правовую доверенность с указанием переданных доверенному лицу полномочий.
Доверенность- это письменное уполномочие, выдаваемое одним лицом другому лицу для представительства перед третьими лицами (ст. 185 ГК РФ).Доверенность — понятие гражданского, а не трудового права. Она призвана регулировать именно внешние отношения фирмы.
Доверенность от имени фирмы выдается за подписью ее руководителя или иного лица, уполномоченного на это учредительными документами, с приложением печати фирмы. Она выдается на срок не более трех лет, а если срок не указан, действует лишь в течение одного года с момента выдачи.
Лицо, выдавшее доверенность, может в любое время ее отменить. А лицо, которому выдана доверенность, вправе отказаться от нее в любое время (ч. 1 ст. 188 ТК РФ).
В каком случае действия, совершенные исполняющим обязанности генерального директора в его отсутствие, могут быть признаны незаконными?
Это может произойти, если полномочия генерального директора были переданы устно, без оформления соответствующего приказа, а также если полномочия по заключению договоров с контрагентами переданы без доверенности. Скорее всего арбитражный суд решит, что гражданско-правовые сделки, оформленные в этот период, были заключены ненадлежащим лицом, и признает их недействительными. И хотя арбитражная практика признает законными сделки, даже если полномочия руководителя фирмы были переданы другому лицу только приказом, без оформления доверенности (постановление Президиума Высшего арбитражного суда РФ от 24 марта 1998 г. № 6813/97), наличие доверенности избавит вас от небходимости доказывать правомочность издания приказа. Передача полномочий генерального директора приказом не должна противоречить уставу фирмы (в нем может быть закреплено, например, что полномочия генерального директора передаются только по доверенности).
Как оплачивать временное исполнение обязанностей
Дополнительныe трудозатраты требуют дополнительной оплаты труда. Статья 151 Трудового кодекса РФ говорит о том, что за исполнение обязанностей временно отсутствующего сотрудника положены доплаты. Размер этих доплат устанавливается соглашением сторон трудового договора.
В разъяснении Госкомтруда СССР и Секретариата ВЦСПС от 29 декабря 1965 г. № 820/39 лО порядке оплаты временного заместительства» (оно действует в части, не противоречащей Трудовому кодекса РФ) сказано следующее. Временно исполняющему обязанности выплачивается разница между его фактическим окладом (должностным, персональным) и должностным окладом замещаемого работника (без персональной надбавки). Таким образом, доплата может составлять разницу в окладах генерального директора и того сотрудника, который его временно замещает.
Нужно ли доплачивать за исполнение обязанностей генерального директора его заместителю, если замещение директора — прямая обязанность этого сотрудника по трудовому договору?
Нужно. До недавнего времени действовали абзацы 3 и 4 пункта 1 разъяснения лО порядке оплаты временного заместительства», которые предусматривали, что разница в окладах не выплачивается штатному заместителю или помощнику отсутствующего работника (в данном случае генерального директора), а также главному инженеру, который замещает отсутствующего руководителя. Однако Верховный суд РФ определением от И марта 2003 г. № КАС 03-25 отменил этот пункт как ущемляющий права сотрудников и противоречащий статье 151 Трудового кодекса РФ. Таким образом, любому сотруднику, в том числе и штатному заместителю генерального директора, нужно доплачивать за временное исполнение обязанностей руководителя. Скачать кадровую программу учёта сотрудников и автоматизации отдела персонала для кадровиков «Отдел кадров 2018»
Скачать бесплатно программы для автоматизации учёта кадров, расчёт стажа, документооборота, учёта договоров и клиентов (CRM-система)
Вход на сайт
ВРИО, ИО и директор – как не потеряться?
Проблема различного отношения трудового законодательства и законодательства о юридических лицах к единоличному исполнительному органу волнует многих. Действительно, по трудовому законодательству едиоличный исполнительный орган является таким же работником, как и все остальные, просто он от имени организации имеет право действовать без доверенности. Во всех остальных правах он приравнен к обычному работнику. Он может уйти на больничный, в отпуск, в декрет, его можно понизить в должности или повысить.
С точки зрения законодательства о юридических лицах, директор (генеральный директор) является лицом, вписанным в ЕГРЮЛ. Что же делать, если он вписан в ЕГРЮЛ, а фактически уже не занимает данную должность. Конечно, его можно уволить, однако это не единственный вариант. Эту проблемы мы и хотели бы раскрыть в данном материале.
Что такое ВРИО и ИО?
ВРИО (временно исполняющий обязанности) и ИО (исполняющий обязанности) – понятия, которые не фигурируют ни в ТК РФ, ни в законе о юридических лицах, ни в законе об ООО. Однако, до сих пор действует изданное еще в советские времена Разъяснение Госкомтруда СССР от 1965 года, в котором под ВРИО понимается лицо, исполняющее обязанности временно отсутствующего сотрудника. На законодательном уровне отличия между ВРИО и ИО нет. Однако, на практике, ВРИО назначается на определенный срок, то есть, по сути, на срок отсутствия постоянного сотрудника, в этом случае никаких вакансий не открывается. В свою очередь, ИО назначается на неопределенный срок, до того момента, как на данную должность не будет принят новый сотрудник.
ИО может быть кандидатом на должность. ИО может быть любой сотрудник компании, который переведен по совмещению в соответствии с соглашением. При этом, после того, как нанят постоянный сотрудник соглашение расторгается. Если мы говорим о ВРИО, то соглашение расторгать не нужно, так как в нем и так прописан срок. Однако, не всегда для ИО требуется соглашение. Например, некоторые лица обязаны быть ИО в силу своих служебных полномочий. Например, старший помощник, заместитель и т.п.
Оформление документов
Оформление ИО возможно двумя способами. Первый способ — это приказ по организации, если не открывается вакансия. По сути, в данном случае, ЕИО сам себе назначает ИО. Если Вы планируете такую ситуацию, то лучше пропишите ее в Уставе. Второй способ – это решение или протокол Общего собрания либо Совета директоров, если имеется вакантная должность. При этом в течение месяца должно быть принято решение о назначении этой кандидатуры на пост директора или об отклонении. Следует отметить, что налоговики весьма охотно идут навстречу организации и вносят запись в ЕГРЮЛ об ИО, так как они понимают, что долго без директора организация существовать не может. Нотариусу необходимо представить заявление по форме Р14001, с названием ВРИО или ИО директора, приказ на ВРИО или протокол на ИО и учредительные документы. Заметим, что сама процедура идентична процедуре смены директора. Заявителем должен быть сам ИО. В ИФНС предоставляются форма Р14001 и, при подаче документов через представителя, доверенность. В итоге Вы получаете лист записи, в котором указан ВРИО или ИО и выписку из ЕГРЮЛ, в которой также указан ВРИО или ИО. Кстати, не стоит забывать про банк. В банке надо будет сменить карточку.
Немного о конфузах
В организации назначен ВРИО или ИО, все документы оформлены, и вдруг директор, которого никто не увольнял, возвращается на работу.
Как назначить ио главного бухгалтера и составить приказ
В этом случае всю процедуру надо повторить — идти к нотариусу с формой Р14001, затем регистрировать изменения в налоговой и в банк. Если все же был назначен ВРИО, то это плюс компании, так как ее деятельность при возвращении директора не парализуется, ведь трудовой договор с директором не расторгнут. Однако, тут может возникнуть корпоративный конфликт. ВРИО назначается директором, а вот самого директора избирает именно Общее собрание. Чтобы избежать подобных ситуаций в Уставе желательно прописать, когда одобрение ВРИО требуется Общим собранием и какое для одобрения требуется количество голосов. Еще одной конфузной ситуацией может стать отсутствие директора при окончании полномочий ИО. Однако, и в этой ситуации налоговики идут навстречу организации. Они спокойно регистрируют любое наименование ЕИО, вплоть до заместителя директора. Банки тоже спокойно к этому относятся.
Из всего вышесказанного можно сделать вывод, если директор компании устал от работы и уехал отдыхать, не стоит отчаиваться, просто перед его отъездом надо назначить ВРИО. Тогда и общее собрание привлекать не понадобится, и все будут довольны.
Подпись и.о. исчезнет из документов – RH.by
ФотаОбновлённый Трудовой кодекс вступает в силу 28 января. Ключевым новациям документа была посвящена дискуссия нового проекта «СБ. Беларусь сегодня» «Компетентный вторник», сообщает БЕЛТА.
Трудовой кодекс в новой редакции сводит воедино ранее принятые нормы, наработанную практику и дополнительные меры как по защите прав работников, так и расширению полномочий нанимателей.
Среди основных новаций – больше возможностей для совмещения карьеры и воспитания детей, дополнительные гарантии работникам предпенсионного возраста, продление контракта с добросовестными сотрудниками, нормы дистанционной и временной работы, четкое разделение ответственности за материальный ущерб.
На фоне таких значимых изменений не такой уже сенсационной выглядит следующая новация:
С 28 января в приказе предприятия, организации или ином документе не должна использоваться подпись «и.о.» или «врио» (временно исполняющий обязанности).
«Есть штатное расписание, в котором и следует прописать, кто замещает директора, если он болен или в отпуске. Подписывать документы он должен по своей должности», – отметила начальник главного юридического управления Министерства труда и социальной защиты Валентина Масловская.
При этом судья судебной коллегии по гражданским делам Верховного суда, кандидат юридических наук Римма Филипчик полагает, что отмена аббревиатур «и.о.» и «врио» приживтся не сразу.
Также, по её мнению, сложно предсказать, как будет работать норма о временном переводе работника к другому нанимателю (с его согласия на срок до шести месяцев с сохранением зарплаты на уровне не ниже, чем по основному месту работы). «Переведённый работник подчиняется правилам трудового распорядка временного нанимателя. А меры дисциплинарного взыскания к нему может применить лишь наниматель, с которым заключён основной трудовой договор. Норма, скорее всего, будет работать именно в сфере шефской помощи», – предположила Римма Филипчик. Речь о случаях, когда предприятия оказывают посильную помощь подшефным сельхозорганизациям.
• Тэкст даступны на мове: Беларуская
Определение деятельности, интересов и мнений (AIO)
Что такое деятельность, интересы и мнения (AIO)?
Действия, интересы и мнения (AIO) — это характеристики человека, используемые исследователями рынка для построения психографического профиля человека в своих исследованиях. AIO человека обычно выявляется исследователями через их ответы на утверждения или вопросы в опросе. Эксперты по рекламе применяют принципы AIO, чтобы сосредоточить маркетинговые и рекламные усилия компании на целевой аудитории, помогая исследователям и компании лучше понять своего идеального клиента.
Ключевые выводы
- Действия, интересы и мнения (AIO) используются исследователями рынка для построения психографического профиля человека в своих исследованиях.
- В сочетании с демографическими данными AIO может предоставить компаниям много информации об их целевых потребителях.
Понимание деятельности, интересов и мнений (AIO)
Во время типичного опроса AIO исследователь просит респондента указать степень своего согласия или несогласия с рядом утверждений, касающихся его образа жизни, выбора развлечений, модных предпочтений и т. Д.Данные AIO особенно ценны при использовании вместе с другими данными, такими как демографические данные, а не изолированно.
Сегменты AIO
Мероприятия
Деятельность сосредоточена на чьем-то распорядке дня и увлечениях. У человека, который едет на работу на велосипеде и занимается спортом по выходным, скорее всего, другие модели покупок, чем у сотрудника, который ездит на работу на машине и смотрит много фильмов. Членство в клубах, выбор развлечений, отпуск и общественные мероприятия могут дать маркетологам подсказки о деятельности потребителя.
Интересы
Интересы человека раскрывают концепции и идеалы, которые движут его страстями. Мать троих детей может указать в опросе семью, кулинарию, рукоделие и игрушки. Интересы могут также включать хобби, связи и развлечения. У потребителя могут быть разные интересы, например, коллекционирование монет, модельное судостроение, садоводство и рыбалка. Выявив интересы целевого потребителя, компании могут лучше определить, как им понравиться.
Отзывы
У всех есть мнения, и потребители не исключены.Маркетологи хотели бы знать мнение людей о фильмах, общественных деятелях, политиках, актерах и телешоу. Маркетинговым агентствам также необходимо знать мнение потребителей о брендах, товарах и магазинах. AIO направлен на создание психографического профиля потребителя с целью нацеливания рекламы на различные типы людей.
Пример профиля AIO
Демографические данные идентифицируют покупателя по возрасту, доходу, семейному положению и другим физическим характеристикам.Психография пытается определить, почему потребитель покупает определенный продукт. Например, психографический профиль человека может указывать на то, что он ведет активный образ жизни, покупает более качественные вещи, находит удовлетворение в семье и проводит много времени в социальных сетях.
Один из традиционных методов составления психографического профиля — опрос. Отдел маркетинга использует опрос, чтобы получить размер выборки из определенного сегмента населения. Большие размеры выборки приводят к более точным и точным маркетинговым инструментам.Компании также могут использовать веб-аналитику для определения характеристик AIO. Типы веб-сайтов, которые просматривает человек, могут привести к специальным предложениям и сделкам по всем видам продуктов. Кто-то, кто просматривает веб-сайт с именем ребенка, может найти рекламные баннеры детских товаров при последующем поиске в Интернете.
Поддержка асинхронного ввода-вывода (AIO) ядрадля Linux Поддержка асинхронного ввода-вывода ядра
(AIO) для LinuxПоддержка асинхронного ввода-вывода (AIO) ядра для Linux
ОбзорAIO позволяет даже одному потоку приложения перекрывать ввод / вывод операций с другой обработкой, предоставляя интерфейс для отправка одного или нескольких запросов ввода-вывода за один системный вызов ( io_submit () ) без ожидания завершения, и отдельный интерфейс (io_getevents () ) для получения завершенных операций ввода-вывода, связанных с данным завершением группа.
Поддержка ядра AIO включена в ядро Linux 2.6.
Что работает?- AIO для чтения и записи в raw (и O_DIRECT в blockdev)
- AIO для чтения и записи файлов, открытых с помощью O_DIRECT на ext2, ext3, jfs, xfs
- AIO для чтения и записи файлов, открытых без O_DIRECT (т.е. нормально буферная файловая система AIO). На ext2, ext3, jfs, xfs и nfs эти не возвращать явную ошибку, но тихо по умолчанию синхронное или, скорее, не-AIO поведение (т.е.e io_submit ожидает ввода / вывода для полный в этих случаях). Для большинства других файловых систем -EINVAL — это сообщил.
- AIO fsync (не поддерживается ни для одной файловой системы)
- AIO для чтения и записи в сокеты (не возвращает явную ошибку, но по умолчанию по умолчанию используется синхронное или, скорее, не-AIO поведение)
- AIO чтение и запись по каналам (отчеты -EINVAL)
- Не все устройства (включая TTY) поддерживают AIO (обычно возвращаются -EINVAL)
- Буферизованная файловая система AIO, i.е. AIO чтение и запись в открытых файлах без O_DIRECT, на ext2, ext3, jfs, xfs, reiserfs.
- Не включает AIO fsync
- AIO для чтения и записи каналов (от Криса Мейсона)
В. Где я могу найти библиотеки AIO, которые используют ядро AIO на Linux? A. Вам необходимо установить пакет libaio, если вы пишете AIO приложения, использующие собственные интерфейсы AIO (libaio-0.3.99) В. Доступна ли функция AIO для 2.4 ядра? А. Патчи для 2.4 можно найти ЗДЕСЬ . Также проверьте исходную домашнюю страницу Linux-AIO.
Чтение об архитектуре AIO ядра Linux
- Поддержка асинхронного ввода-вывода Linux 2.5, Оттава Linux Symposium 2003
Охватывает дизайн AIO для 2.6, включая файловую систему AIO реализация, которая в настоящее время находится в дереве -mm, и некоторая производительность результаты для O_DIRECT AIO с использованием rawiobench. - Дизайн AIO Заметки, написанные во время 2.4 Реализация AIO. Это немного устарело, но дайте представление о различных вопросы, альтернативные подходы к проектированию и соображения, связанные с реализация AIO и описывает дизайн 2.4 AIO реализация.
- Круглый 3: aio против / dev / epoll сравнивает epoll, опрос AIO и чтение AIO поведение. Полный текст статьи включен в OLS. 2002 г.
- Настройка производительности
- Вектор AIO
Контрольные показатели и тестирование Тестирование производительности / микробенчмаркинг
- Крис Мейсон Тест AIO-Stress выдает поток запросов AIO к одному или нескольким файлы, в которых можно изменять несколько параметров, например, размер блока ввода / вывода, всего Размер ввода-вывода, глубина отправки iocb за раз, количество одновременных потоки, тип и шаблон операций ввода-вывода и т. д.Он сообщает общая достигнутая пропускная способность и средняя задержка отправки io.
- rawiobench — еще один микробенчмарк, который может выполнять последовательные или произвольный дисковый ввод-вывод. Он поддерживает как синхронный, так и асинхронный ввод-вывод для O_DIRECT и буферизованная файловая система AIO и отчеты о пропускной способности и ЦП результаты использования.
- Тест aiocp Дэниела МакНила (OSDL).
- fsx-Linux теперь включен для AIO. Просто скомпилируйте его с помощью -DAIO.
- Файловая система AIO результаты aiostress с патчами fsaio и без них
c ++ — Почему AIO лучше, чем выборочная и многопоточная обработка ввода-вывода?
c ++ — Почему AIO лучше, чем выборочная и многопоточная обработка ввода-вывода? — Переполнение стекаПрисоединяйтесь к Stack Overflow , чтобы учиться, делиться знаниями и строить свою карьеру.
Спросил
Просмотрено 2k раз
Трудно сказать, о чем здесь спрашивают.Этот вопрос неоднозначный, расплывчатый, неполный, слишком широкий или риторический, и на него нельзя разумно ответить в его нынешней форме. Чтобы прояснить этот вопрос и снова открыть его, посетите Справочный центр.Закрыт 9 лет назад.
Я читал, что выборочное и многопоточное программирование было низкопроизводительными моделями ввода-вывода, например, эта статья IBM developerworks о высокопроизводительном вводе-выводе.
Я не понимаю, как синхронизация / асинхронизация: блокировка / неблокирование улучшает производительность. Почему AIO здесь лучший вариант?
Руп31.8k99 золотых знаков8383 серебряных знака102102 бронзовых знака
Создан 04 янв.
5Асинхронность и / или неблокирование не обеспечивает какого-либо внутреннего прироста скорости для отдельных операций ввода-вывода в системе, если для чтения с диска потребуется x миллисекунд, а это то, что потребуется.
Преимущество этих подходов проявляется в многопоточных средах (или средах, где работа может продолжаться, несмотря на отложенный ввод-вывод), позволяя эффективно выполнять операции ввода-вывода отдельно от основного потока выполнения. Ощущаемое увеличение производительности от этого связано с уменьшением количества ресурсов, используемых просто для ожидания возврата или разблокировки ввода-вывода.
Хорошее сравнение асинхронного и неблокирующего режима доступно в этом потоке.
Создан 04 янв.
TurixTurix16866 серебряных знаков99 бронзовых знаков
1Блокировка всего процесса при ожидании завершения отдельного ввода-вывода не эффективно, если есть другие вещи, которые может делать процесс.AIO — это одно средство, позволяющее процессу делать другие вещи, пока система выполнение IO для него; многопоточность — другое. Разница между использование нескольких потоков или использование AIO в значительной степени связано с дизайном; в типичный сервер, например, намного проще использовать несколько потоков, и не должно быть большой разницы в производительности. Для других приложений, AIO может быть проще и / или обеспечивать большую производительность. Это еще один инструмент, который следует рассмотреть, но он применим не везде.
Создан 04 янв.
Джеймс КанцеДжеймс Канце141 11 золотой знак
В многопоточной среде плохо, если один поток блокируется дольше, чем необходимо, потому что это мешает другим потокам выполнять работу.Для предотвращения этого используется асинхронный неблокирующий ввод-вывод. Распространенной библиотекой для этого является Boost.Asio.
Создан 04 янв.
pmrpmr1,949 золотых знаков
2Учтите следующее: когда ваша программа достигает точки, в которой ей нужно ждать, пока пользователь введет какой-то текст, у вас есть два варианта: дождаться, пока он это сделает, и ЦП в это время ничего не делает, или вы можете заблокировать текущую программу и использовать ЦП для выполнения другие полезные вычисления.После ввода данных пользователем вы можете разблокировать свою программу и продолжить. Таким образом вы можете улучшить производительность.
Создан 04 янв.
atoMerzatoMerz7,0081515 золотых знаков5757 серебряных знаков9999 бронзовых знаков
2Не тот ответ, который вы ищете? Посмотрите другие вопросы с метками c ++ io или задайте свой вопрос.
язык-cpp
Stack Overflow лучше всего работает с включенным JavaScriptВаша конфиденциальность
Нажимая «Принять все файлы cookie», вы соглашаетесь с тем, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Принимать все файлы cookie Настроить параметры
linux — Каков статус асинхронного ввода-вывода POSIX (AIO)?
Эффективное выполнение ввода-вывода сокетов решено с помощью kqueue, epoll, портов завершения ввода-вывода и т.п.Выполнение асинхронного файлового ввода-вывода — это своего рода поздний этап (не считая перекрывающегося ввода-вывода Windows и ранней поддержки posix AIO в Solaris).
Если вы ищете возможность ввода-вывода через сокеты, вам, вероятно, лучше использовать один из вышеперечисленных механизмов.
Таким образом, основной целью AIO является решение проблемы асинхронного дискового ввода-вывода. Скорее всего, поэтому Mac OS X поддерживает только AIO для обычных файлов, а не сокетов (поскольку kqueue в любом случае делает это намного лучше).
Операции записи обычно кэшируются ядром и удаляются позже.Например, когда считывающая головка привода проходит мимо места, где должен быть записан блок.
Однако для операций чтения, если вы хотите, чтобы ядро расставляло приоритеты и упорядочивало чтение, AIO — действительно единственный вариант. Вот почему ядро может (теоретически) делать это лучше, чем любое приложение пользовательского уровня:
- Ядро видит все дисковые операции ввода-вывода, а не только дисковые задания ваших приложений, и может упорядочить их на глобальном уровне.
- Ядро (может) знать, где находится считывающая головка диска, и может выбирать задания чтения, которые вы передаете ему в оптимальном порядке, чтобы переместить головку на кратчайшее расстояние
- Ядро может использовать встроенную очередь команд для дальнейшей оптимизации операций чтения
- Вы можете выполнить больше операций чтения за один системный вызов с помощью lio_listio (), чем с readv (), особенно если ваши чтения не (логически) непрерывны, что сэкономит немного времени на накладных расходах системного вызова.
- Ваша программа может быть немного проще с AIO, поскольку вам не нужен дополнительный поток для блокировки при вызове чтения или записи.
При этом posix AIO имеет довольно неудобный интерфейс, например:
- Единственное эффективное и хорошо поддерживаемое средство обратных вызовов событий — это сигналы, что затрудняет использование в библиотеке, поскольку это означает использование номеров сигналов из глобального пространства имен сигналов. Если ваша ОС не поддерживает сигналы в реальном времени, это также означает, что вам нужно перебрать все невыполненные запросы, чтобы выяснить, какой из них на самом деле завершен (это, например, Mac OS X, а не Linux).Перехват сигналов в многопоточной среде также накладывает некоторые хитрые ограничения. Обычно вы не можете реагировать на событие внутри обработчика сигнала, но вы должны поднять сигнал, записать в канал или использовать signalfd () (в Linux).
- lio_suspend () имеет те же проблемы, что и select (), он не очень хорошо масштабируется с количеством заданий.
- lio_listio () в том виде, в котором она реализована, имеет довольно ограниченное количество заданий, которые вы можете передать, и найти этот предел переносимым способом нетривиально.Вы должны вызвать sysconf (_SC_AIO_LISTIO_MAX), что может дать сбой, и в этом случае вы можете использовать определение AIO_LISTIO_MAX, которое не обязательно определено, но затем вы можете использовать 2, который определен как гарантированно поддерживаемый.
Что касается реального приложения, использующего posix AIO, вы можете взглянуть на lighttpd (lighty), который также опубликовал измерение производительности при представлении поддержки.
Большинство платформ posix к настоящему времени поддерживают posix AIO (Linux, BSD, Solaris, AIX, tru64).Windows поддерживает его через перекрывающийся файловый ввод-вывод. Насколько я понимаю, только Solaris, Windows и Linux действительно поддерживают асинхронность. файловый ввод-вывод вплоть до драйвера, тогда как другие ОС эмулируют асинхронный режим. Ввод-вывод с потоками ядра. Linux является исключением, его реализация posix AIO в glibc эмулирует асинхронные операции с потоками пользовательского уровня, тогда как его собственный интерфейс асинхронного ввода-вывода (io_submit () и т. Д.) Действительно асинхронен на всем пути вплоть до драйвера, если драйвер поддерживает его. .
Я считаю, что среди операционных систем довольно распространено не поддерживать posix AIO для любого fd, а ограничивать его обычными файлами.
AIO: быстрый путь к отличной производительности
Большинство администраторов AIX знакомы с концепцией асинхронного ввода-вывода (AIO). AIO закодирован во многих операционных системах, включая большинство версий UNIX и Windows. Вы не так много слышите об AIO, я полагаю, потому что он существует так долго, что воспринимается как должное. Ему не хватает привлекательного графического интерфейса, невероятного времени отклика или огромного объема памяти. Но будьте уверены, без AIO наш мир был бы намного медленнее.
AIO — важная характеристика производительности AIX; он был включен в операционную систему на протяжении десятилетий и является одним из первых настраиваемых параметров, которые администраторы-новички научились настраивать. Но чтобы действительно увидеть, как AIO работает в AIX и почему это так важно, нам нужно понять некоторые концепции и терминологию.
Основы
По сути, AIO — это обработка ввода и вывода (или чтения и записи), которая позволяет начать другую обработку до завершения первого ввода / вывода.
Допустим, у вас есть база данных, в которой созданы два потока, каждый из которых инициирует некоторую форму операций ввода-вывода в вашей системе. В системе без AIO первый поток будет выполнять свой ввод-вывод, а второй поток будет вынужден ждать в очереди. Только после завершения ввода-вывода первого потока можно было выполнить ввод-вывод второго потока.
Это пример синхронного ввода-вывода, хотя программисты обычно называют его «блокирующим вводом-выводом». Еще в темные века компьютерных систем, прежде чем многозадачность стала важной функцией программирования, именно так обрабатывались операции ввода-вывода, а системы, в которых она использовалась, были пустыми.Мало того, что обработка ввода-вывода происходила с невероятной скоростью, в конечном итоге большинство системных ресурсов диск, ЦП, память и сеть большую часть времени простаивали. Подумайте об этом: если системная функция должна быть приостановлена, пока ваша база данных выполняет простое чтение или запись, и вы выполняете тысячи таких операций чтения и записи, большая часть вашего времени будет потрачена на переход и подготовку системы к выполнению следующий ввод / вывод (и следующий…). В то время, когда память и процессоры были очень дорогими элементами, эта схема ввода-вывода не принесла наибольшего ущерба вложению средств в ИТ.
К счастью, где-то по пути действительно блестящие программисты придумали код, который позволял этому второму потоку базы данных инициировать свою собственную операцию ввода-вывода до того, как первый поток завершил свой ввод-вывод. По мере развития концепции и кода, лежащего в ее основе, вычислительные системы стали выполнять сотни и даже тысячи операций ввода-вывода одновременно, не задерживая другую обработку. Вообще говоря, это «асинхронная» операция, и применительно к хранилищу (и, кстати, сети) мы называем ее AIO.
В сторону: AIX немного сбивает с толку аббревиатуры хранилищ. У нас есть AIO, но также есть CIO и DIO. У нас даже есть состояние ошибки под названием EIO. Понятно, что это может сбить с толку начинающих администраторов. В конечном итоге все просто: AIO — это метод ввода-вывода, а DIO (прямой ввод-вывод) и CIO (параллельный ввод-вывод) — способы монтирования файловых систем. EIO, как я уже сказал, — это ошибка.
Кроме того, прежде чем мы продолжим, мне нужно поговорить о слоне в комнате: если код вашего приложения специально не использует преимущества AIO, вы не сможете использовать это средство.В наши дни продукты большинства основных поставщиков баз данных используют AIO, включая Oracle, DB2 и Cache. Но с приложениями — особенно приложениями собственного производства и приложениями, выпускаемыми небольшими поставщиками — это в значительной степени чушь. Чтобы определить, использует ли приложение AIO, просто возьмите трассировку ядра AIX и изучите данные. Это просто — к тому же это единственный способ самостоятельно определить, установлены ли у вас и база данных, и ваше приложение в одной системе. Достаточно сказать, что в случае сомнений лучше всего обратиться к поставщику приложения и поговорить напрямую с разработчиками.Служба поддержки первой линии почти никогда не имеет такой информации.
Быстрый и медленный путь AIO
Итак, как AIO реализован в AIX? Есть два метода реализации: быстрый и медленный. В Fastpath AIO асинхронный ввод-вывод обрабатывается с помощью программного обеспечения драйвера адаптера и / или кода диспетчера логических томов (LVM). В AIO с медленным путем поток ядра, вставленный в поток ввода-вывода, выполняет операцию. Это иллюстрирует разницу в именовании. Если у вас есть дополнительный переход для вашего запроса ввода-вывода из точки A в точку B, он будет медленнее по сравнению с более прямым маршрутом.
Fastpath и slowpath AIO можно включить в системе AIX одновременно. Какой метод вы будете использовать, зависит от вашего приложения или программного кода базы данных. В ранних версиях AIX необходимо было специально включить быстрый путь AIO, но в наши дни он включен по умолчанию. И каждая версия AIX, насколько я помню, всегда настраивала некоторое количество потоков ядра AIO для обработки медленного пути AIO, и это не сильно изменилось за более чем два десятилетия. В результате вы в любом случае будете защищены.
Конечно, в UNIX нет ничего более простого, чем кажется. Когда мы используем потоки ядра для обработки AIO в AIX, мы должны помнить, что существует два типа, и мы также должны знать, какой тип использует наше приложение или база данных. Типы потоков ядра AIO — «устаревшие» и «POSIX». Хотя с функциональной точки зрения они одинаковы, они реализованы в коде немного по-разному. (Для наших целей эти различия незначительны, и нам не нужно тратить на них время. Но если вы действительно хотите знать, это изложено в Интернете в Центре знаний IBM.Не говорите, что я вас не предупреждал: этот материал вызывает мигрень.)
В любом случае, AIX предоставляет возможность изменять количество потоков ядра каждого типа. Каждый из них потребляет некоторый объем памяти для своей среды процесса — около 440 КБ, поэтому, если вы работаете в системе с низким объемом памяти, я бы не стал настраивать тысячи из них. Итак, сколько из этих потоков ядра AIO, обычно называемых серверами AIO, вам понадобится? В качестве пользователя root в командной строке AIX просмотрите параметры ввода и вывода (IOO) с помощью этой команды:
ioo –FL | более
Вы получите следующий результат:
НАЗВАНИЕ CUR DEF BOOT MIN MAX UNIT TYPE ЗАВИСИМОСТИ -------------------------------------------------- ------------------------------ aio_active 0 0 логическое S -------------------------------------------------- ------------------------------ aio_maxreqs 128K 128K 128K 4K 1M числовой D -------------------------------------------------- ------------------------------ aio_maxservers 30 30 30 1 20000 числовой D aio_minservers -------------------------------------------------- ------------------------------ aio_minservers 3 3 3 0 20000 числовой D aio_maxservers -------------------------------------------------- ------------------------------ aio_server_inactivity 300 300 300 1 86400 секунд D
Эти поля сообщают вам статус устаревшего AIO в вашей системе.(Параметры POSIX AIO появляются на дисплее позже.) Сверху вниз, вот что вам говорят эти поля:
- aio_active ― Показывает, действительно ли расширение ядра AIO использовалось в вашей системе и закреплено. (Это было сделано в памяти без страницы.)
- aio_maxreqs ― Это количество запросов AIO, которые выполняются, а также тех, которые ожидают в очередях. Хотя это неточно, проще всего представить общее количество запросов AIO, которое может иметь значение
- aio_maxservers ― Это количество устаревших потоков ядра AIO или серверов, настроенных для медленного пути AIO для каждого процессора.По умолчанию таких серверов 30.
Интересная мелочь: в очень ранних версиях AIX это значение изначально рассчитывалось для каждого процессора. Насколько я помню, примерно в конце 1990-х годов философия изменилась, и вы распределили свои серверы AIO в соответствии с количеством имеющихся у вас дисков. Правило в десять раз превышало количество дисков, к которым осуществлялся асинхронный доступ. Еще через несколько лет мы вернулись к значению в расчете на процессор.
Если вы читали мои статьи об использовании ЦП, то видите, что определение количества серверов AIO на основе количества ЦП может быть рискованным.Мы говорим о лицензированных или виртуальных процессорах? Предположим, что соотношение между виртуальными и назначенными процессорами выше оптимального уровня производительности 1: 1? Что если 2: 1 или 3: 1? Что, если в системах POWER8 разрешено соотношение 20: 1? И работают ли эти процессоры в режиме прямой или масштабируемой пропускной способности, что означает, что вы должны рассчитывать потребности вашего сервера AIO на основе использования одного аппаратного потока или всех из них? Ответы на эти вопросы ни в коем случае не так просты, как написано на страницах руководства. Мой совет? Если у вас есть доступная память, используйте 10-кратное значение hdisk, чтобы определить базовое количество серверов AIO.С наиболее часто используемыми базами данных, независимо от поставщика, вы, вероятно, сочтете значение по умолчанию неадекватным. Если вы планируете использовать AIO в одной из этих сред, начните со значения aio_maxservers, равного 10-кратному количеству дисков, которые будут задействованы в AIO, и при необходимости увеличьте его.
- aio_minservers ― Это минимальное количество серверов AIO, которое может быть в вашей системе. Мой лучший совет — никогда не изменять значение по умолчанию 3.
- aio_server_inactivity ― Если через 300 секунд сервер AIO не обнаружил, что нужно выполнить полезную работу, он выйдет из таблицы процессов.Другое значение, которое вам, вероятно, следует оставить.
Параметры сервера POSIX AIO появляются на несколько строк ниже в выводе IOO -FL и являются дубликатами устаревших параметров. После того, как вы определились, используете ли вы старый или POSIX AIO, настройте эти значения таким же образом.
Устаревшие настройки и настройки POSIX AIO, которые я только что рассмотрел, являются неограниченными настройками, что означает, что они могут быть свободно изменены администратором сайта. Некоторые ограниченные настройки также заслуживают упоминания, поскольку их правильное использование устраняет несколько распространенных технических заблуждений.Большинство этих ограниченных настроек регулируют использование быстрого пути AIO. Имейте в виду, что если ваша база данных или приложение использует медленный путь, настройка этих параметров не принесет никакой пользы; фактически, вы можете нанести вред своей системе. Итак, давайте посмотрим на эти настройки как на ручки и переключатели, предназначенные только для информации.
Опять же, вот часть наших выходных данных IOO –FL:
## Ограниченные настройки -------------------------------------------------- ------------------------------ aio_fastpath 1 1 1 0 1 логическое D -------------------------------------------------- ------------------------------ aio_fsfastpath 1 1 1 0 1 логическое D -------------------------------------------------- ------------------------------ aio_kprocprio 39 39 39 0 254 числовой D -------------------------------------------------- ------------------------------ aio_multitidsusp 1 1 1 0 1 логическое D -------------------------------------------------- ------------------------------ aio_sample_rate 5 5 5 1 86400 секунд D -------------------------------------------------- ------------------------------ aio_samples_per_cycle 6 6 6 1 128K числовой D
Сверху:
- aio_fastpath ― Отображает текущее состояние системы AIO и то, как обрабатываются запросы AIO.По умолчанию для этого параметра установлено значение 1, что означает, что быстрый путь включен. По умолчанию все запросы AIO отправляются непосредственно в LVM или дисковый код, минуя диспетчер виртуальной памяти (VMM) и файловую систему. При этом кеширование на этом уровне не выполняется. Отключение fastpath направляет запросы AIO к процессам ядра. Однако, если AIO работает с файловой системой, состояние fastpath не имеет значения, потому что вызовы будут поступать в VMM. AIO на необработанный логический том (LV) с отключенным быстрым путем приводит к тому, что необработанный LV обрабатывается как специальный файл, передавая свои запросы через VMM и код файловой системы.
- aio_fsfastpath ― При монтировании файловых систем JFS2 с опцией CIO ― или «одновременный» этот параметр определяет, как выполняются запросы ввода-вывода. При значении по умолчанию 1 запрос ввода-вывода направляется непосредственно на LVM или диск. Установка этого параметра в 0 отключает быстрый путь файловой системы и направляет запросы ввода-вывода процессам ядра.
- aio_kprocprio ― Управляет приоритетом процессов ядра AIO. По сути, он контролирует их «хорошее» значение.
- aio_multitidsusp ― Определяет, могут ли потоки приостанавливать выполнение запроса AIO другим потоком.Это значение применяется только к устаревшим серверам AIO.
- aio_sample_rate и aio_samples_per_cycle ― В наши дни серверы AIO отправляются из пулов таких серверов. Эти две настройки управляют тем, как в этих пулах управляется механизм, называемый «распад». Представьте, что этих двух последних вариантов не существует.
И, как неограниченные настройки, эти значения дублируются для системы POSIX AIO. Мой лучший совет — настраивать ограниченные параметры только после подробных консультаций с вашей базой данных или поставщиком приложения.Как правило, трогать их не нужно.
Итак, какой тип AIO вы используете?
Теперь, когда мы определили AIO и объяснили типы AIO, доступные в AIX, вы можете подумать: «В моей существующей системе, как я могу определить, какой тип AIO я использую, если он есть?» В системе с одной целью, например, сервер базы данных или сервер, на котором выполняется одно приложение, ответ прост: используйте pstat. Вы можете использовать обычную команду ps с соответствующими флагами (например, -elfk), но с pstat вам нужно запомнить только флаг -a.
Давайте посмотрим на два разных вывода pstat –a, grepping для активности aioserver (процесс ядра):
pstat –a | grep aio 53 а 35007c 1 35007c 0 0 1 aioLpool 55 а 37009c 1 37009c 0 0 1 aioPpool
Здесь мы видим только две записи: пулы, из которых отправляются серверы AIO. Из этого вывода мы можем сделать вывод, что мы либо используем быстрый путь AIO ― и в этом случае мы не используем серверы AIO ―, либо мы не используем AIO в какой-либо форме.
Теперь посмотрите на ту же команду, запустите в другой системе:
pstat –a | grep aio 1088 a 4001ac 1 4001ac 0 0 1 aioPpool 1133 а 6d01f2 1 6d01f2 0 0 1 aioLpool 1286 a 1060150 1 1060150 204 204 1 posix_aioserver 1357 a 14d01aa 1 14d01aa 204 204 1 posix_aioserver 1480 а 1c8010c 1 1c8010c 0 0 1 posix_aioserver 1497 a 1d901fc 1 1d901fc 0 0 1 posix_aioserver … Строки пропущены…
В этом случае мы видим не только наши пулы AIO, но и серверы AIO, которые были отправлены из этих пулов.Если у нас есть активные серверы AIO, мы используем медленный путь AIO по крайней мере для некоторой части нашей общей рабочей нагрузки.
Все становится немного сложнее, если мы запускаем несколько приложений в одной системе. Опять же, давайте возьмем пример системы с базой данных и каким-либо приложением. Можно поспорить, что база данных выполняет AIO, но как насчет приложения? В зависимости от того, насколько детально вы хотите получить, у вас есть два варианта: трассировка ядра AIX или iostat. Обычно я использую трассировку ядра, чтобы сказать мне, какая сущность и какой тип AIO выполняет, но есть промежуточный путь: используйте iostat с флагами -A и -P.Это намного проще реализовать и намного легче читать. Флаг –A сообщает нам об активности устаревшего сервера AIO, а –P сообщает нам об активности сервера POSIX AIO. Другие поля в выходных данных покажут нам активность быстрого пути AIO, если таковая имеется:
iostat –A | подробнее Конфигурация системы: lcpu = 40 дисков = 834 ent = 10,00 путей = 2 виртуальных диска = 0 maxserver = 1200 aio: avgc avfc maxgc maxfc maxreqs avg-cpu:% user% sys% idle% iowait Physc% entc iostat: 0551-157 Асинхронный ввод-вывод не настроен в системе.
Здесь мы ищем устаревшие операции AIO. Мы получаем сообщение: «Асинхронный ввод-вывод не настроен в системе». Итак, мы знаем, что если мы используем медленный путь, мы не используем устаревшие процессы ядра. Но теперь мы выдаем ту же команду, но с флагом –P:
iostat –P | более Конфигурация системы: lcpu = 40 дисков = 834 ent = 10,00 путей = 2 виртуальных диска = 0 maxserver = 1200 aio: avgc avfc maxgc maxfc maxreqs avg-cpu:% user% sys% idle% iowait Physc% entc 485.5 0,0 79 0 131072 61,7 8,8 27,2 2,3 5,6 111,2 Диски:% tm_act Кбит / с tps Kb_read Kb_wrtn hdisk17 0,0 2,3 0,3 3010263 401879 hdisk16 0,0 2,1 0,3 2544751 574347 hdisk15 0,0 2,2 0,3 2838471 454843 жесткий диск14 0,0 2,3 0,3 27 489979
Ага! Это другое. В этих выходных данных мы видим счетчики в нескольких полях, а также активность диска.Активность диска говорит нам о том, что в этой системе активен POSIX AIO. Так что помните, где вы видите активность диска, это тип медленного пути AIO, который вы используете ― устаревший или POSIX. А как насчет Fastpath AIO? Посмотрите на первые несколько строк вывода iostat. Смотрите строку, которая начинается с aio 😕 Здесь вы можете увидеть, используете ли вы быстрый путь. Вот соответствующие поля:
- avgc ― Отображает среднее количество запросов Fastpath в секунду.
- maxfc ― Показывает максимальное количество запросов Fastpath с момента, когда это значение было ранее отображено.Положительные значения в полях avgc и maxfc означают, что вы используете Fastpath AIO.
Обычно вы увидите, что Fastpath AIO используется, если у вас есть AIO для файловых систем, смонтированных CIO или DIO (первый является гибридом последнего) и необработанных логических томов. Slowpath AIO будет происходить в файловых системах, которые монтируются нормально и используют кеш файловой системы. Помимо этого, чтобы определить точный тип AIO, используемый в системах со смешанными средами баз данных и приложений, вам потребуется запустить трассировку ядра AIX.Трассировка ядра для AIO — это тема, для которой требуется отдельная статья, и в ближайшие месяцы мы предпримем следующий, гораздо более продвинутый шаг.
А пока я обращусь ко второму слону в комнате: портам завершения ввода и вывода (IOCP).
Краткий обзор IOCP
Вы когда-нибудь задумывались об этих вещах? IOCP поставляются с дистрибутивами AIX как минимум начиная с версии 4.1. Для меня они важны. Если вы запустите lsdev –Cc iocp, он вернет эту строку: iocp0 Defined I / O Completion Ports.IOCP всегда находятся в определенном состоянии, поэтому вам нужно сделать их доступными. Но как они относятся к AIO?
IOCP — это API, который выполняет несколько одновременных операций ввода-вывода во многих различных операционных системах. Он создается и связывается с файловыми дескрипторами и сокетами. (Помните, я сказал, что AIO работает и для хранения, и для сети?) Не вдаваясь в подробности, IOCP — это структура, которая уведомляется каждый раз, когда завершается операция ввода-вывода. Что происходит, так это процесс, который запрашивает ввод-вывод, проверяет порт завершения на наличие сообщения, в котором говорится (по сути): «Готово, продолжайте и выполните еще несколько операций ввода-вывода.«Порты завершения и их схема обмена сообщениями налагают на AIO порядок ― и скорость, которых у вас не было бы без них. Строго говоря, вам не нужно настраивать IOCP в системах, где вы будете использовать AIO. Но это средство обмена сообщениями увеличивает производительность ваших операций AIO, поэтому я всегда предпочитаю переводить IOCP в доступное состояние. Как уже отмечалось, есть экземпляры быстрого пути AIO, где IOCP не помогают. В конце концов, необработанные данные не связаны с дескрипторами файлов.
Вы поняли? Да, я говорю, что необработанные данные, использующие Fastpath AIO, могут не получить выгоду от IOCP.Но что, если эти необработанные данные затем будут записаны в сокет? Краткий ответ: всегда настраивайте свои IOCP в доступном состоянии.
Почему важны AIO
Несмотря на то, что мы рассмотрели много вопросов, нам еще есть что сказать об AIO. А пока я оставлю вас с этой мыслью: без понимания механизма AIO добиться максимальной производительности хранилища или сети от ваших систем AIX невозможно. Если вы никогда не изучаете другую тему ввода-вывода, обязательно изучите эту.
aio (3) — Страницы руководства NetBSD
aio (3) — Страницы руководства NetBSDAIO (3) Руководство по функциям библиотеки NetBSD AIO (3)При поддержке man-cgi (2021-06-01). Поддерживается для NetBSD пользователя Kimmo Suominen. На основе man-cgi Панайотиса Христиаса.
NAME
aio - асинхронный ввод / вывод (в реальном времени)
БИБЛИОТЕКА
Библиотека реального времени POSIX (librt, -lrt)
ОБЗОР
#include
ОПИСАНИЕ
Стандарт IEEE 1003.1-2001 (`` POSIX.1 '') определяет интерфейс для асинхронный ввод и вывод. Хотя в NetBSD это предоставляется как часть POSIX Real-time Library (librt, -lrt), реализация в основном находится в ядре. Обоснование Обоснование можно грубо резюмировать следующими пунктами. 1. Повышение производительности за счет предоставления механизма для выполнения операций ввода-вывода. без блокировки. Теоретически, если ввод / вывод никогда не блокируется, не- ни на программном, ни на аппаратном уровне накладные расходы Ввод-вывод станет нулевым, и процессы больше не будут привязаны к вводу-выводу.2. Разделить различные операции ввода-вывода на логически отличные Активные процедуры. В отличие от стандартного stdio (3), aio интерфейс разделяет организацию очереди и отправку операций ввода-вывода на ядро и получение уведомлений о завершении операции от ядро. 3. Обеспечить единообразную и стандартизированную структуру для асинхронной Ввод / вывод. Например, aio избегает необходимости (и накладных расходов) дополнительные рабочие потоки, иногда используемые для выполнения асинхронного ввода-вывода. Блок управления асинхронным вводом / выводом Блок управления асинхронным вводом / выводом является основным операционным блоком, стоящим за AIO . Это необходимо, поскольку может быть выполнено произвольное количество операций. запускается сразу, и поскольку каждая операция может быть как входной, так и исходящей положил. Этот блок представлен структурой aiocb , которая определена в заголовке < aio.h >. Следующие поля доступны для пользователя Приложения: off_t aio_offset; void * aio_buf; size_t aio_nbytes; int aio_fildes; int aio_lio_opcode; int aio_reqprio; struct sigevent aio_sigevent; Поля: 1. aio_offset указывает неявное смещение файла, при котором Выполняются операции ввода-вывода. Этого нельзя ожидать фактическое смещение чтения / записи файлового дескриптора. 2. Элемент aio_buf является указателем на буфер, в который данные будет записан или в который операция чтения сохраняет данные. 3. aio_nbytes определяет длину aio_buf .4. aio_fildes определяет используемый дескриптор файла. 5. aio_lio_opcode используется функцией lio_listio () для инициализировать список запросов ввода-вывода одним вызовом. 6. Член aio_reqprio может использоваться для уменьшения расписания. приоритет операции aio . Это доступно, только если _POSIX_PRIORITIZED_IO и _POSIX_PRIORITY_SCHEDULING являются определен, и соответствующий файловый дескриптор поддерживает его.7. Элемент aio_sigevent используется для указания того, как вызывающий процесс уведомляется после завершения операции aio . Члены aio_buf , aio_fildes и aio_nbytes концептуально похожи. параметрам buf, fildes и nbytes, используемым в стандарте. функции чтения (2) и записи (2). Например, звонящий может читать aio_nbytes из файла, связанного с файловым дескриптором aio_fildes в буфер aio_buf .Все соответствующие поля должны быть инициализированы вызывающий абонент перед вызовом aio_read () или aio_write (). Смещения файлов Асинхронные операции ввода-вывода не являются строго последовательными; операции выполняется в произвольном порядке и более одной операции для одного файла дескриптор может быть запущен. Запрошенная операция чтения или записи начинается от абсолютной позиции, указанной в aio_offset , как если бы lseek (2) были вызваны с помощью SEEK_SET непосредственно перед операцией.В Стандарт POSIX не определяет, что происходит после того, как операция aio успешно завершено. В зависимости от реализации фактическая смещение файла может обновляться или не обновляться. Ошибки и завершение Считается, что асинхронные операции ввода-вывода завершены, когда: Обнаружена ошибка. Передача ввода-вывода выполнена успешно. Операция отменена. Если обнаружено состояние ошибки, препятствующее выполнению операции запущен, запрос не ставится в очередь.В этом случае чтение и запись функции aio_read () и aio_write (), возвращаются немедленно, устанавливая global errno , чтобы указать причину ошибки. После успешной постановки операции в очередь aio_error () и aio_return () необходимо использовать для определения статуса операции и для определить любые условия ошибки. Сюда входят условия, о которых сообщил стандартные read (2), write (2) и fsync (2).Запрос остается поставлен в очередь и потребляет ресурсы процесса и системы до тех пор, пока aio_return () не будет называется. Ожидает завершения Интерфейс aio поддерживает модели как опроса, так и уведомления. В первый может быть реализован простым многократным вызовом aio_error () функция для проверки статуса операции. После завершения операции Запущено, aio_return () используется для освобождения структуры aiocb для повторного использования.Модель уведомления реализована с использованием члена aio_sigevent из блок управления асинхронным вводом / выводом. Операционная модель и используемые структуры описаны в sigevent (3). Функция aio_suspend () может использоваться для ожидания завершения одного или больше операций. Можно установить тайм-аут, чтобы процесс может продолжить выполнение и предпринять действия по восстановлению, если aio работает все не завершаются должным образом. Отмена и синхронизация Функция aio_cancel () может использоваться для запроса отмены асинхронного хроническая операция ввода / вывода. Однако учтите, что не все из них могут быть- celed. Тот же aiocb , который использовался для запуска операции, может использоваться в качестве ручного управления. dle для идентификации. Также можно запросить отмену все операции, ожидающие выполнения для файла. Сравнима с fsync (2), функция aio_fsync () может использоваться для синхронизации уменьшите содержимое постоянного хранилища при множественном асинхронном вводе / выводе операции для файла или устройства еще не завершены.Синхронизация операция включает только те запросы, которые уже были успешными - полностью поставлен в очередь.
ФУНКЦИИ
Следующие функции составляют API интерфейса aio : Описание функции aio_cancel (3) отменить невыполненную асинхронную операцию ввода-вывода aio_error (3) получить статус ошибки асинхронной операции ввода-вывода aio_fsync (3) асинхронная синхронизация данных файла aio_read (3) асинхронное чтение из файла aio_return (3) получить статус возврата операции асинхронного ввода / вывода aio_suspend (3) приостановить до завершения операций или тайм-аута aio_write (3) асинхронная запись в файл lio_listio (3) список направленных операций ввода-вывода
СОВМЕСТИМОСТЬ
К сожалению, реализации асинхронного ввода-вывода POSIX немного различаются.Некоторые реализации предоставляют немного другой API с возможными расширения. Например, реализация FreeBSD использует функцию ` aio_waitcomplete () 'для ожидания следующего завершения запроса aio .
СТАНДАРТЫ
Интерфейс aio должен соответствовать стандарту IEEE Std 1003.1-2001. (`` POSIX.1 '') стандарт.
ИСТОРИЯ
Интерфейс aio впервые появился в NetBSD 5.0.
ГЕОДЫ
Можно отметить несколько ограничений: Неопределенное поведение при одновременных асинхронных операциях используйте тот же блок управления асинхронным вводом / выводом. Когда асинхронная операция чтения не завершена, неопределенное поведение ior может последовать, если содержимое aiocb было изменено, или если память связанный со структурой, или буфер aio_buf , освобождается. NetBSD 9.99 19 мая 2010 г. NetBSD 9.99
AQFER IO (AIO) — AQFER
Увеличьте ценность ваших данных в реальном времени
aqfer IO предоставляет вашему бизнесу механизм принятия решений, сопоставимый с теми, которые используются поставщиками рекламных технологий, в которых вы инвестируете.
aqfer IO — это API для настройки и доступа к идентификаторам пользователей менее чем за 10 мс. Это означает, что решения о том, как отправлять сообщения пользователям, какие креативы им показывать или каким пользовательским опытом поделиться с ними, могут приниматься непосредственно вашей практикой маркетинговой аналитики, не полагаясь на логику, применяемую третьей стороной.
aqfer IO может быть использован в качестве основы для динамической оптимизации креативов, управляемой непосредственно брендом или агентством. Его также можно интегрировать с системами управления контентом, чтобы пользовательский опыт наиболее точно соответствовал положению посетителя сайта в воронке заинтересованности или программе регистрации.
В любой конфигурации aqfer IO может помочь сделать прямое взаимодействие 1: 1 с вашей аудиторией реальностью.
Большая разница: скажи что-нибудь интересное.
Невозможно поддерживать диалог с клиентами и потенциальными клиентами, если вам нечего сказать интересного.
aqfer IO позволяет достаточно быстро узнать то, что вы уже знаете о потенциальных клиентах или посетителях, чтобы использовать эту информацию для предоставления им наиболее актуального контента или сообщений.
Предназначен для глобального развертывания в веб-масштабе и пропускной способности:
- Поддерживает сотни тысяч транзакций в секунду.
- Архитектура с открытым исходным кодом
Расширяемость:
- Обработчики: Разверните свой собственный код в нашем API-шлюзе, чтобы управлять вставляемыми или возвращаемыми данными.
- Доставляйте решения, а не данные.
- Доставьте свой собственный индивидуальный API с белой этикеткой.
- Несколько конфигураций: Invoke Server to Server, UserAgent to Server или UserAgent to Origin Server через CDN.
- RESTful API: Надежный API, поддерживающий запросы GET, PUT и POST.
Несколько вариантов хранения:
- IMDS (хранилище данных в памяти): умеренных объемов данных, очень низкая стоимость доступа, данные недолговечны или легко восстанавливаются из внешнего источника.
- DBDS (хранилище данных на диске): экономичная поддержка миллиардов документов с высокой доступностью, отказоустойчивостью и возможностью восстановления.
- GraphDS: API-доступ к продукту управления графом идентификаторов aqfer Graph.
aqfer Graph помогает раскрыть весь потенциал ваших данных и привлечь клиентов, когда это наиболее важно.
Ключевые компоненты
API данных в реальном времени
Получение доступа в реальном времени к данным объекта (пользователь, домохозяйство, устройство) и взаимосвязи объектов (граф идентичности)
Глобальная веб-шкала
Обеспечение высокой пропускной способности: поддержка сотен тысяч транзакций в секунду
Службы передачи данных
Получите мгновенный доступ ко всем данным, хранящимся в IMDS (хранилище данных в памяти), DBDS (хранилище данных на диске) и aqferGraphDS
ОТДЫХ с лучшими
Простой доступ к данным с помощью API RESTful от aqfer
.
Добавить комментарий
Комментарий добавить легко