Udostępnij przez


Nieprzetworzone i przetłumaczone zasoby

Gdy funkcja EvtDeviceRemoveAddedResources lub EvtDevicePrepareHardware odbiera listę zasobów, otrzymuje dwie wersje tej listy. Jedna wersja reprezentuje nieprzetworzone zasoby urządzenia, a druga reprezentuje przetłumaczone zasoby urządzenia. Obie wersje reprezentują ten sam zestaw zasobów sprzętowych w tej samej kolejności.

  • Zasoby pierwotne to zasoby, które są identyfikowane przez adresy powiązane z magistralą, z którą urządzenie jest połączone. Zazwyczaj sterownik, który programuje urządzenie, udostępnia te adresy urządzeniu.

  • Przetłumaczone zasoby to zasoby, które są identyfikowane przez systemowe adresy fizyczne używane przez sterowniki w celu uzyskania dostępu do zasobów.

Sterownik urządzenia magistrali PCI odbiera zasoby wymienione w kolejności, w której są wyświetlane w rejestrach adresów podstawowych (BAR) urządzenia. Jednak dodatkowe deskryptory zasobów mogą być przeplatane na liście, w efekcie zasób pod indeksem X w BAR może nie być zgodny z zasobem na tej samej pozycji indeksu na liście zasobów.

Aby uzyskać więcej informacji na temat nieprzetworzonych i przetłumaczonych zasobów, zobacz opisy składowych struktury CM_PARTIAL_RESOURCE_DESCRIPTOR .

Jeśli przetłumaczona lista zasobów urządzenia zawiera zasób zawierający element członkowski typu struktury CM_PARTIAL_RESOURCE_DESCRIPTOR ustawiony na CmResourceTypeMemory, każdy sterownik, który uzyskuje dostęp do tego zasobu, musi wykonać następujące czynności:

Aby uzyskać więcej informacji na temat mapowania adresów względnych magistrali, zobacz Mapowanie adresów Bus-Relative do adresów wirtualnych.