.\" -*- coding: UTF-8 -*- .\" Copyright (c) 2010 Michael Kerrisk .\" based on a proposal from Stephan Mueller .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\" Various pieces of text taken from the kernel source and the commentary .\" in Linux commit fa28237cfcc5827553044cbd6ee52e33692b0faa .\" both written by Paul Mackerras .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH subpage_prot 2 "30 martie 2023" "Pagini de manual de Linux 6.05.01" .SH NUME subpage_prot \- definește o protecție de subpagină pentru un interval de adrese .SH BIBLIOTECA Biblioteca C standard (\fIlibc\fP, \fI\-lc\fP) .SH REZUMAT .nf \fB#include \fP /* Definirea constantelor \fBSYS_*\fP */ \fB#include \fP .PP \fBint syscall(SYS_subpage_prot, unsigned long \fP\fIaddr\fP\fB, unsigned long \fP\fIlen\fP\fB,\fP \fB uint32_t *\fP\fImap\fP\fB);\fP .fi .PP \fINotă\fP: glibc nu oferă nici o funcție de învăluire pentru \fBsubpage_prot\fP(), fiind necesară utilizarea \fBsyscall\fP(2). .SH DESCRIERE Apelul de sistem specific PowerPC \fBsubpage_prot\fP() oferă posibilitatea de a controla permisiunile de acces pe subpagini individuale de 4 ko pe sistemele configurate cu o dimensiune a paginii de 64 ko. .PP Harta de protecție se aplică paginilor de memorie din regiune începând de la \fIaddr\fP și continuând cu \fIlen\fP octeți. Ambele argumente trebuie să fie aliniate la o limită de 64 ko. .PP Harta de protecție este specificată în memoria tampon indicată de \fImap\fP. Harta are 2 biți pentru fiecare subpagină de 4ko; astfel, fiecare cuvânt de 32 de biți specifică protecțiile a 16 subpagini de 4ko în interiorul unei pagini de 64ko (astfel, numărul de cuvinte de 32 de biți indicate de \fImap\fP ar trebui să fie egal cu numărul de pagini de 64ko specificate de \fIlen\fP). Fiecare câmp de 2 biți din harta de protecție este fie 0 pentru a permite orice acces, fie 1 pentru a împiedica scrierea, fie 2 sau 3 pentru a împiedica toate accesele. .SH "VALOAREA RETURNATĂ" În caz de succes, \fBsubpage_prot\fP() returnează 0. În caz contrar, se returnează unul dintre codurile de eroare specificate mai jos. .SH ERORI\-IEȘIRE .TP \fBEFAULT\fP Memoria tampon la care face referire \fImap\fP nu este accesibilă. .TP \fBEINVAL\fP Argumentele \fIaddr\fP sau \fIlen\fP sunt incorecte. Ambele argumente trebuie să fie aliniate la un multiplu al dimensiunii paginii de sistem și nu trebuie să se refere la o regiune din afara spațiului de adrese al procesului sau la o regiune care constă din pagini uriașe. .TP \fBENOMEM\fP Memorie insuficientă. .SH STANDARDE Linux. .SH ISTORIC Linux 2.6.25 (PowerPC). .PP Apelul de sistem este furnizat numai în cazul în care nucleul este configurat cu \fBCONFIG_PPC_64K_PAGES\fP. .SH NOTE Se aplică, de asemenea, protecțiile normale ale paginilor (la nivelul paginii de 64 ko); mecanismul de protecție a subpaginilor este o constrângere suplimentară, astfel încât dacă se pune 0 într\-un câmp de 2 biți nu se va permite scrierea pe o pagină care este altfel protejată la scriere. .SS Justificare .\" In the initial implementation, it was the case that: .\" In fact the whole process is switched to use 4 kB hardware pages when the .\" subpage_prot system call is used, but this could be improved in future .\" to switch only the affected segments. .\" But Paul Mackerass says (Oct 2010): I'm pretty sure we now only switch .\" the affected segment, not the whole process. Acest apel de sistem este furnizat pentru a ajuta la scrierea emulatoarelor care operează folosind pagini de 64 ko pe sistemele PowerPC. Atunci când se emulează sisteme precum x86, care utilizează o dimensiune mai mică a paginilor, emulatorul nu mai poate utiliza unitatea de gestionare a memoriei (MMU) și apelurile de sistem normale pentru a controla protecția paginilor. (Emulatorul ar putea emula MMU prin verificarea și eventual realocarea adresei pentru fiecare acces la memorie în software, dar acest lucru este lent). Ideea este că emulatorul furnizează o serie de măști de protecție care se aplică unui interval specificat de adrese virtuale. Aceste măști sunt aplicate la nivelul la care intrările în tabelul de pagini hardware (PTE) sunt inserate în tabelul de pagini hardware pe baza PTE\-urilor Linux, astfel încât PTE\-urile Linux nu sunt afectate. Implicit, regiunile spațiului de adrese care sunt protejate sunt comutate pentru a utiliza pagini hardware de 4 ko în loc de pagini hardware de 64 ko (pe mașinile cu suport hardware pentru pagini de 64 ko). .SH "CONSULTAȚI ȘI" \fBmprotect\fP(2), \fBsyscall\fP(2) .PP \fIDocumentation/admin\-guide/mm/hugetlbpage.rst\fP în arborele sursă al nucleului Linux .PP .SH TRADUCERE Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu . .PP Această traducere este documentație gratuită; citiți .UR https://www.gnu.org/licenses/gpl-3.0.html Licența publică generală GNU Versiunea 3 .UE sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE. .PP Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la .MT translation-team-ro@lists.sourceforge.net .ME .