|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
About Handles and Objects
Windows uses objects and handles to regulate access to system resources for two main reasons. First, the use of objects ensures that developers are not writing code specifically to low-level, internal structures. This enables Microsoft to add or change functionality of the operating system, as long as the original calling conventions are maintained. When subsequent versions of the operating system are released, applications will gain this new functionality with little or no additional development.
Second, the use of objects enables developers to take advantage of Win32 security. Each object has its own access-control list (ACL) that specifies the types of actions processes can perform on the object. The operating system examines an object's ACL each time an application attempts to create a handle to the object. For more information about security, see Security. For most objects, the Win32 API provides functions that create the object, create an object handle, close the object handle, and destroy the object. These tasks may be combined or unnecessary, depending on the type of object and the situation. For example, an application could create an event object. Other applications could open the event and each would have a unique handle to the same event object. In this scenario, as the applications finish using the object, each closes its handle. When there are no open handles to the event object, the operating system removes the object from memory.
In contrast, an application could obtain the existing window-object handle. In this instance, when the window object is no longer needed, the application must remove the object from memory, which invalidates the window handle. When a process terminates, the system automatically closes handles and deletes objects created by the process. However, when a thread terminates, the system usually does not close handles or delete objects. The only exceptions are window, hook, window position, and dynamic data exchange (DDE) conversation objects that are deleted when the creating thread terminates.
Handles and objects consume memory. Therefore, to preserve system performance, an application should close handles and delete objects as soon as they are no longer needed. Applications that do not do this can slow the operating system, due to excessive use of the paging file. Windows provides three categories of objects: user, graphics device interface (GDI), and kernel, as shown in the following tables. The system uses user objects to support window management, GDI objects to support graphics, and kernel objects to support memory management, process execution, and interprocess communications (IPC). For information about creating and using a specific object, refer to the associated overview.
Windows User Objects
User object Overview Accelerator table Keyboard Accelerators Caret Carets Cursor Cursors Dynamic data exchange conversation Dynamic Data Exchange Management Library Desktop Security Hook Hooks Icon Icons Menu Menus Window Windows Window position Windows Window station Windows
Windows GDI Objects
GDI object Overview Bitmap Bitmaps Brush Brushes Font Fonts and Text Palette Colors Pen Pens Extended pen Pens Region Regions Device context Device Contexts Memory device context Device Contexts Metafile Metafiles Metafile device context Metafiles Enhanced metafile Metafiles Enhanced-metafile device context Metafiles
Windows Kernel Objects
Kernel object Overview Process Processes and Threads Thread Processes and Threads File Files File mapping File Mapping Event Synchronization Semaphore Synchronization Mutex Synchronization Pipe (named and anonymous) Pipes Mailslot Mailslots Communications device Communications Heap Memory Management Module Dynamic-Link Libraries Update resource Resources Find file Files Event log Event Logging Change notification Files Token Security Service object Printing and Print Spooler LZ file Data Decompression Library
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
О Ручках и Объектах
Окно использует объекты и оперирует, чтобы регулировать доступ к системным ресурсам для двух основных причин. Сначала, использование объектов проверяет, что разработчики не пишут код особо на низкий уровень, внутренние структуры. Это позволяет Microsoft, чтобы добавлять или изменять функциональное назначение операционной системы, так же долго (длиной) как подлинник, вызывающий соглашения поддержан. Когда последующие версии операционной системы выпущены, приложения приобретет это новое функциональное назначение с плохо или вообще дополнительная разработка.
Во-вторых, использование объектов позволяет, чтобы иметь преимущество перед безопасностью Win32. Каждый объект имеет собственный иметь доступ к-управляющему списку (ACL), что определяет, что типы процессов действий могут выполниться на объекте. Операционная система изучает объектный ACL всякий раз, когда приложение пытается создавать ручку на объект. Более подробно о безопасности, смотри Безопасность. Для большинства объектов, Win32 API обеспечивает функции, которые создают объект, создают объектную ручку, закрывают объектную ручку и уничтожают объект. Эти задачи могут быть объединены или необязательно, в зависимости от типа объекта и ситуация. Например, приложение могло бы создать объект события. Другие приложения могли бы открыть событие и каждые должны иметь уникальную ручку на том же объекте события. В этом сценарии, как конец приложений, использовавший объект, каждый закрывает свою ручку. Когда нет открытых ручек на объект события, операционная система удаляет объект из памяти.
На контрасте, приложение могло бы получить существующую окно-объектную ручку. В данном случае, когда объект окна не - больше не нужно, приложение должно удалить объект из памяти, который аннулирует ручку окна. Когда процесс завершается, система автоматически закрывает оперировать и удаляет объекты созданные процессом. Тем не менее, когда резьба завершается, система обычно не закрывает ручки или удаляет объекты. Единственные исключения - окно, рычажная, позиция окна, и динамический обмен данных разговора (DDE) возражает, что удален когда создание резьбы завершается.
Ручки и объекты поглощают память. Следовательно, чтобы сохранять системное исполнение, приложение должно закрывать ручки и удалять объекты как только они не будут больше не нужно. Приложения, что не делать это может замедлить операционную систему, из-за чрезмерного использования файла подкачки. Windows обеспечивает три категории объектов: пользователь, графический интерфейс устройства (GDI), и зерно, как показано в следующих таблицах. Система использует объекты пользователя против поддержки управления окна, объекты GDI против поддержки графики, и зерно возражает против поддержки управления памяти, выполнения процесса, и межпроцессовой связи (IPC). Для информации о создании и используя специфический объект, ссылаться на связанный обзор.
Объекты Пользователя Windows
Объектный Обзорный Акселератор Пользователя табличных Символов ^ Курсора Курсоров Символа ^ Клавишных Акселераторов Биржевой разговор Динамических Динамических Данных данных Биржевого Управления Библиотечного Захвата Безопасности Desktop Перехватывает Меню Меню Иконного Окна Иконок Windows позиции Окна Windows станции Окна Windows
Windows GDI Возражает
ОБЪЕКТНЫЕ Обзорные Побитовые отображения Побитового отображения GDI Чистят Шрифтовые Шрифты Щеток и Ручки Цветов Текстовых Ручек Палитры Расширял Области Области Ручек Устройства ручки контекстного устройства Памяти Контекстов Контекстов контекстного Устройства Метафайла Устройства Метафайлов устройства Метафайла контекстных Метафайлов Расширял устройство Метафайлов Расширенного метафайла метафайла контекстных Метафайлов
Объекты Зерна Windows
Объектный Обзорный Процесс Зерна Обрабатывает и Заправляет Процессы Резьбы и Файловых Файлов Резьбы Файл, отображающий Синхронизацию События Файлового Распределения Семафора Synchronization Mutex Трубы Синхронизации (поименованную и анонимная) Связь устройства Связи Памяти Кучи ресурса Коррекции Библиотек Труб Mailslot Mailslots Ресурсов Management Module Dynamic-Link Находит файловое Событие регистрационного События Файлов, регистрирующее Файлы уведомления Символической Безопасности Изменения Объектная Печать и Распечатка Декомпрессии файловых Данных Библиотеки Услуги Spooler LZ
|
|
|
|
| |