~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ 2198A346D79445DA1BFF0B70ED6E4554__1695896700 ✰
Заголовок документа оригинал.:
✰ Handle (computing) - Wikipedia ✰
Заголовок документа перевод.:
✰ Ручка (компьютерная) — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/Handle_(computing) ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/21/54/2198a346d79445da1bff0b70ed6e4554.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/21/54/2198a346d79445da1bff0b70ed6e4554__translat.html ✰
Дата и время сохранения документа:
✰ 12.06.2024 15:24:20 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 28 September 2023, at 13:25 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

Ручка (компьютерная) — Википедия Jump to content

Ручка (вычислительная)

Из Википедии, бесплатной энциклопедии

В компьютерном программировании дескриптор база — это абстрактная ссылка на ресурс , который используется, когда программное обеспечение ссылается на блоки памяти прикладное или объекты, которыми управляет другая система, например данных или операционная система .

Дескриптор ресурса может быть непрозрачным идентификатором , и в этом случае он часто представляет собой целое число (часто индекс массива в массиве или «таблице», которая используется для управления этим типом ресурса) или это может быть указатель , разрешающий доступ. для получения дополнительной информации. Общие дескрипторы ресурсов включают дескрипторы файлов , сетевые сокеты , подключения к базе данных , идентификаторы процессов (PID) и идентификаторы заданий . PID и идентификаторы заданий представляют собой явно видимые целые числа; хотя файловые дескрипторы и сокеты (которые часто реализуются как форма файлового дескриптора) представляются как целые числа, они обычно считаются непрозрачными. В традиционных реализациях файловые дескрипторы являются индексами таблицы файловых дескрипторов (для каждого процесса) , а затем и (общесистемной) таблицы файлов .

Сравнение с указателями [ править ]

Хотя указатель содержит адрес элемента, на который он ссылается, дескриптор представляет собой абстракцию ссылки, которая управляется извне; его непрозрачность позволяет системе перемещать референт в памяти, не делая дескриптор недействительным, что делает его похожим на виртуальную память для указателей, но даже более абстрактным. Аналогичным образом, дополнительный уровень косвенности также увеличивает контроль управляющей системы над операциями, выполняемыми над референтом. Обычно дескриптор представляет собой индекс или указатель на глобальный массив надгробий .

Утечка дескриптора это тип программной ошибки , которая возникает, когда компьютерная программа не освобождает ранее выделенный дескриптор. Это форма утечки ресурсов , аналогичная утечке памяти для ранее выделенной памяти.

Безопасность [ править ]

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

Например, если программа желает прочитать файл системных паролей ( /etc/passwd) в режиме чтения/записи ( O_RDWR), он может попытаться открыть файл с помощью следующего вызова:

int   fd   =   open  (  "/etc/passwd"  ,   O_RDWR  ); 

Этот вызов просит операционную систему открыть указанный файл с указанными правами доступа. Если ОС позволяет это, то она открывает файл (создает запись в таблице дескрипторов файлов для каждого процесса ) и возвращает дескриптор (дескриптор файла, индекс в этой таблице) пользователю: фактический доступ контролируется ОС, и ручка является признаком этого. И наоборот, ОС может запретить доступ и, следовательно, не открыть файл и не вернуть дескриптор.

В системе, основанной на возможностях, дескрипторы могут передаваться между процессами с соответствующими правами доступа. Обратите внимание, что в этих случаях дескриптор должен быть чем-то отличным от маленького целого числа, уникального для всей системы, иначе его можно подделать. Тем не менее, такое целое число может использоваться для идентификации возможности внутри процесса; например, файловый дескриптор в Linux невозможно подделать, поскольку само по себе его числовое значение бессмысленно и только в контексте процесса может относиться к чему-либо. Однако передача такого дескриптора требует особой осторожности, поскольку его значение часто должно различаться в процессах отправки и получения.

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

Примеры [ править ]

Дескрипторы были популярным решением для управления памятью в операционных системах 1990-х годов, таких как Mac OS. [1] и Windows . Структура данных FILE в стандартной библиотеке ввода-вывода C представляет собой дескриптор файла , абстрагированный от базового представления файла (в Unix это файловые дескрипторы ). Как и другие среды рабочего стола , Windows API активно использует дескрипторы для представления объектов в системе и обеспечения канала связи между операционной системой и пользовательским пространством . Например, окно на рабочем столе представлено дескриптором типа HWND (ручка, окно).

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

См. также [ править ]

Ссылки [ править ]

  1. ^ Херцфельд, Энди (январь 1982 г.), The Original Macintosh: венгерский , получено 10 мая 2010 г.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: 2198A346D79445DA1BFF0B70ED6E4554__1695896700
URL1:https://en.wikipedia.org/wiki/Handle_(computing)
Заголовок, (Title) документа по адресу, URL1:
Handle (computing) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)