Mihai Sprinceana
Un forum de programare cu de toate. Va astept sa va inscrieti si sa deveniti moderatori. Oricine este binevenit aici sa se inscrie si sa aiba acces la informatie free! Fiecare este liber sa adauge proiecte programe free etc. Ajutati acest forum sa devina o comunitate puternica unde fiecare invata de la fiecare! Tot ce trebuie sa faceti este sa va inregistrati si fiecare contributie se poate dovedi utila in timp! Forumul este free informatia free dk aveti timp liber ajutati si pe ceilalti si invatati si voi in acelasi timp! Haideti sa facem ceva pt.a ne ajuta intre noi! Cititi regulament postare forum inainte de a posta!
Lista Forumurilor Pe Tematici
Mihai Sprinceana | Inregistrare | Login

POZE MIHAI SPRINCEANA

Nu sunteti logat.
Nou pe simpatie:
loryci_2006
Femeie
21 ani
Bucuresti
cauta Barbat
21 - 49 ani
Mihai Sprinceana / SO Linux&Unix / Functia mbind (apel sistem) Moderat de Cristy89, Houssey, cr3us, fireratbat, profu.info, sade5000
Autor
Mesaj Pagini: 1
Cristy89
Moderator

Inregistrat: acum 15 ani
Postari: 26
mbind - seteaza o interdictie pt.un domeniu al memoriei =set memory policy for an memory range 

Fisiere heder incluse:

#include <numaif.h>


Forma generala:

int mbind(void *start, unsigned long len, int policy, unsigned long *nodemask,         unsigned long maxnode, unsigned flags)

DESCRIPTION

mbind -seteaza memoria NUMA(Non-Uniform-Memory Address) incepand cu start si de lungime len.

Memoria NUMA a pc-ului este divizata in mai multe noduri.

Restrictia de memorie(memory policy) defineste in ce node memoria este alocata.

Functia mbind are efect doar pt.noi alocari.

Exemple de restrictii valabile:
MPOL_DEFAULT, MPOL_BIND, MPOL_INTERLEAVE, MPOL_PREFERRED.

Toate restrictiile cu exceptia MPOL_DEFAULT au nevoie sa le fie specificate nodurile la care se aplica aceste restrictii in cadrul parametrului nodemask.


In cazul restrictiei MPOL_MF_STRICT este trecut in flag-uri(indicatori) parametrul EIO va fi intors cand pagile existente nu urmeaza restrictia.

Restrictia  MPOL_DEFAULT este cea default(implicita) si semnifica restrictionarea procesului curent(care poate fi modificat cu set_mempolicy).

Restrictia MPOL_BIND -restrange alocarea memoriei pt.nodurile specificate in nodemask. Nu vor exista alte alocari catre alte noduri.


MPOL_INTERLEAVE -este o restrictie ce lasa alocarile in nodurile specificate din nodemask.

MPOL_PREFERRED- este o restrictia care in esenta seteaza nodul de preferinta pt.o anumita alocare. Nucleul SO va incerca sa aloce in primul sau nod mai si va esua in cazul celorlalte noduri cand aceste au memorie scazuta. Cand nici un nod nu este setat in masca, nodul curent este folosit pt.alocare.


RETURN VALUE
mbind intoarce -1 cand se produce o eroare si in caz contrar 0. r

Erori:

EFAULT
    There was a unmapped hole in the specified memory range or an passed pointer was not valid.
EINVAL
    An illegal parameter was passed.
ENOMEM
    System out of memory
EIO
    MPOL_F_STRICT was specified and an existing page was already on an wrong node.


pus acum 15 ani
   
Pagini: 1  

Mergi la