• 30.04.2018
  • 4 minute de citit

In acest articol

ZwMapViewOfSection Rutina maps vedere a unei sectiuni in spatiul virtual de adrese al unui proces de subiect.

Sintaxa

NTSYSAPI NTSTATUS ZwMapViewOfSection (HANDLE SectionHandle, HANDLE ProcessHandle, PVOID * BaseAddress, ULONG_PTR ZeroBits, SIZE_T CommitSize, PLARGE_INTEGER SectionOffset, PSIZE_T ViewSize, SECTION_INHERIT InheritPosition, UL

Parametrii

SectionHandle

[in] Maner la un obiect de sectiune. Acest handle este creat de un apel reusit catre ZwCreateSection sau ZwOpenSection.

ProcessHandle

[in] Trageti la obiectul care reprezinta procesul in care ar trebui sa fie mapata vizualizarea. Utilizati macrocomanda ZwCurrentProcess pentru a specifica procesul curent. Manerul trebuie sa fi fost deschis cu acces PROCESS_VM_OPERATION (descris in documentatia Microsoft Windows SDK).

Adresa de baza

[intrare, iesire] Pointer catre o variabila care primeste adresa de baza a vizualizarii. Daca valoarea acestui parametru nu este NULL , vizualizarea este alocata incepand de la adresa virtuala specificata rotunjita la urmatoarea limita a adresei de 64 de kilobyti.

ZeroBits

[in] Specifica numarul de biti de adresa de ordine inalta care trebuie sa fie zero in adresa de baza a vizualizarii sectiunii. Valoarea acestui parametru trebuie sa fie mai mica de 21 si este utilizata numai daca BaseAddress este NULL – cu alte cuvinte, atunci cand apelantul permite sistemului sa stabileasca unde sa aloce vizualizarea.

CommitSize

[in] Specifica dimensiunea, in octeti, a regiunii angajate initial a vizualizarii. CommitSize este semnificativa numai pentru sectiunile sustinute de fisiere de pagina si este rotunjita la cel mai apropiat multiplu din PAGE_SIZE. (Pentru sectiunile care mapeaza fisiere, atat datele, cat si imaginea sunt angajate la momentul crearii sectiunii.)

SectionOffset

[intrare, iesire, optional] Un indicator catre o variabila care primeste offsetul, in octeti, de la inceputul sectiunii pana la vizualizare. Daca acest indicator nu este NULL , decalajul este rotunjit in jos la urmatoarea limita de dimensiune alocare-granularitate.

ViewSize

[intrare, iesire] Un indicator catre o variabila SIZE_T. Daca valoarea initiala a acestei variabile este zero, ZwMapViewOfSection mapeaza o vizualizare a sectiunii care incepe de la SectionOffset si continua pana la sfarsitul sectiunii. In caz contrar, valoarea initiala specifica dimensiunea vizualizarii, in octeti. ZwMapViewOfSection rotunjeste intotdeauna aceasta valoare pana la cel mai apropiat multiplu de PAGE_SIZE inainte de a mapa vizualizarea.

La intoarcere, valoarea primeste dimensiunea reala, in octeti, a vizualizarii.

ariana grande porno tetonas gratis
pornocolombianas porno fuerte
porno forzadas fakings.tv
porno gay negro jovencitasxxx
mala rodriguez porno se folla al
paja en el coche zoofila
chochitos jovencitos porno abuela
videos sexo gratis masaje final feliz
coños de viejas porno sin censura
videos gay xx se folla a su hermana
porno torrent maduras haciendo pajas
xxxespañol videos gays españoles
Keyword porno hablado español
descargar pelis pornos jovencitos desnudos
española viciosa viejas tragando leche
porno gay trios xxxhd
videos de sexo en español masajes eroticos chinos
recopilacion pajas descargar peliculas porno
masajes eroticos chinos videos prono
peliculas porno travestis vecinas cachondas

Mosteniti dispozitia

[in] Specifica modul in care vizualizarea trebuie partajata proceselor secundare. Valorile posibile sunt:

Vizualizarea va fi mapata in orice proces copil creat in viitor.

ViewUnmap

Vizualizarea nu va fi mapata in procesele copil.

Driverele ar trebui sa specifice de obicei ViewUnmap pentru acest parametru.

AllocationType

[in] Specifica un set de semnalizatoare care descrie tipul de alocare care trebuie efectuata pentru regiunea de pagini specificata. Semnalizarile valide sunt MEM_LARGE_PAGES, MEM_RESERVE si MEM_TOP_DOWN. Desi MEM_COMMIT nu este permis, este implicit daca nu este specificat MEM_RESERVE. Pentru mai multe informatii despre semnalizatoarele MEM_ XXX , consultati descrierea rutinei VirtualAlloc.

Win32Protect

[in] Specifica tipul de protectie pentru regiunea paginilor angajate initial. Dispozitivele si driverele intermediare ar trebui sa seteze aceasta valoare la PAGE_READWRITE.

Valoare returnata

ZwMapViewOfSection returneaza o valoare NTSTATUS. Valorile returnate posibile includ urmatoarele:

Cod de returnare Descriere

STATUS_SUCCESS

Rutina a efectuat cu succes operatia solicitata.

STATUS_CONFLICTING_ADDRESSES

Gama de adrese specificata intra in conflict cu un interval de adrese deja rezervat sau tipul de atribut de cache specificat intra in conflict cu atributul de cache existent al gamei de adrese. De exemplu, daca memoria mapata se afla intr-o pagina mare care este deja mapata ca fiind complet stocata in cache, atunci este ilegal sa solicitati maparea acestei memorii ca non-cache sau sa scrieti combinate.

STATUS_INVALID_PAGE_PROTECTION

Valoarea specificata pentru parametrul Protect este nevalida.

STATUS_SECTION_PROTECTION

Valoarea specificata pentru parametrul AllocationType este incompatibila cu tipul de protectie specificat la crearea sectiunii.

Observatii

Mai multe vizualizari diferite ale unei sectiuni pot fi mapate simultan in spatiul de adrese virtuale al unuia sau mai multor procese.

Daca sectiunea specificata nu exista sau accesul solicitat nu este permis, ZwMapViewOfSection returneaza o eroare.

Nu utilizati ZwMapViewOfSection pentru a mapa un interval de memorie de la \ Device \ PhysicalMemory in modul utilizator – cu exceptia cazului in care driverul dvs. a alocat direct domeniul de memorie prin MmAllocatePagesForMdl sau o alta metoda care garanteaza ca nicio alta componenta de sistem nu a mapat acelasi interval de memorie cu o valoare MEMORY_CACHING_TYPE diferita.

Aplicatiile utilizatorului nu pot accesa direct \ Device \ PhysicalMemory incepand cu Windows Server 2003 cu Service Pack 1 (SP1) si pot sa o acceseze numai daca driverul trece un handle catre aplicatie.

Pentru mai multe informatii despre obiectele sectiunii, consultati Obiecte sectiuni si vizualizari.

Nota   Daca apelul catre aceasta functie apare in modul utilizator, ar trebui sa utilizati numele ” NtMapViewOfSection ” in loc de ” ZwMapViewOfSection “.

Pentru apelurile de la driverele in modul kernel, versiunile Nt Xxx si Zw Xxx ale unei rutine Windows Native System Services se pot comporta diferit in modul in care gestioneaza si interpreteaza parametrii de intrare. Pentru mai multe informatii despre relatia dintre versiunile Nt Xxx si Zw Xxx ale unei rutine, consultati Utilizarea versiunilor Nt si Zw ale rutinelor Native System Services.

Cerinte

    Client minim acceptat Disponibil incepand cu Windows 2000. Platforma tinta Header universal wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) Biblioteca NtosKrnl.lib DLL NtosKrnl.exe IRQL PASSIVE_LEVEL Regulile de conformitate DDI PowerIrpDDis, HwStorPortProhibitedDDIs

Vezi si

MEMORY_CACHING_TYPE

MmAllocatePagesForMdl

Utilizarea versiunilor Nt si Zw ale rutinelor Native System Services

VirtualAlloc

ZwCurrentProcess

ZwOpenSection

ZwUnmapViewOfSection