Info

Wybierz coś...

Ciekawe

Podobne

Podobne

Kosmetyki do makijażu

Funkcja mapuje obszar pamięci fizycznej urządzenia do obszaru pamięci wirtualnej procesu sterownika#include #include #include #include #include #include void *mapuj_pamiec(off_t adres_fizyczny, size_t dlugosc_mapy){int dp; /* deskryptor pliku */void kosmetyki do makijażu /* wskaznik na zmapowany obszarpamieci urzadzenia(wirtualny adres w przestrzeni adresowej procesu)*//* Tylko root może otrzymać dostęp do /dev/mem */if (geteuid() != 0) {printf("Brak uprawnień do otwarcia /dev/mem!(uruchom z uprawnieniami roota)\n");return((void *)-1);}/* Weryfikacja adresu fizycznego początku mapowanegoobszaru pamięci */if ((adres_fizyczny % PAGE_SIZE) != 0) {printf("Adres fizyczny nie jest wielokrotnościąPAGE_SIZE)!\n");return((void *)-2);}/* Weryfikacja zakresu mapowanego obszaru pamieci */if ((dlugosc_mapy % PAGE_SIZE) != 0) {printf("Długość mapowanego obszaru pamięci musibyć wielokrotnością PAGE_SIZE!\n");return((void *)-3);}/* Otwarcie pliku odwzorowujacego pamiec systemu (/dev/mem) w trybie rw */dp = open("/dev/mem", O_RDWR | O_SYNC) < 0)if(dp < 0){printf("Otwarcie /dev/mem nie powiodło się, kodbłędu: %d!\n", dp);return((void *)-4);}/* Mapowanie pamieci urzadzenia do przestrzeniadresowej procesu */mem_wsk = mmap(NULL, dlugosc_mapy, (PROT_READ |PROT_WRITE), MAP_SHARED, dp, adres_fizyczny);if ((mem_wsk == MAP_FAILED) || (mem_wsk == NULL)) {printf("Mapowanie pamięci urządzenia niepowiodło się\n");close(dp);return((void *)-5);}/* Zamkniecie pliku odwzorowującego pamięć systemu(/dev/mem) */if (close(dp) != 0) {printf("Zamkniecie /dev/mem nie powiodło się!\n");}return(mem_wsk);}/* przykłady dostępu do rejestrów urządzenia,// zdefiniować jeden z poniższych trybów dostępu// (uwaga, specyficzne dla kompilatora)://#define ACCESS_MODE (unsigned int)/* 32-bitowy *///#define ACCESS_MODE (unsigned short int)/* 16-bitowy *///#define ACCESS_MODE (unsigned char)/* 8-bitowy */// Zapis wartości do rejestru:*((volatile ACCESS_MODE*)(adres_rejestru)) = wartosc;// Odczyt wartości rejestru:wartosc = (ACCESS_MODE)*((volatile ACCESS_MODE*)(adres_rejestru));*/60ProgramowanieMechanizmy czasu rzeczywistego okiem programisty sterownikówlistopad 2008nia i dowiadywać się o stanie urządzeniaco 10 milisekund odczytując jego rejestrstatusowy.

Ten kreator pomoże tylko w konfiguracji udziałów publicznych, a nie prywatnych (jeżeli chcesz wiedzieć jak to zrobić zajrzyj do dokumentacji pakietu Samba ). Wybór Grupy Roboczej dla Twoich Udziałów Określić należy grupę roboczą w której dostępne będą te udziały (). Możesz albo utworzyć nową grupę roboczą, albo wybrać już istniejącą, ale jeżeli nie jesteś pewny co zrobić, poproś o pomoc swojego administratora. 11 Nazwa Serwera Samba Następnie, konieczne jest określenie nazwy pod którą Twój serwer Mandriva Linux będzie rozpoznawany na komputerach Windows , tak jak to pokazano na .

Na sunnę składają się hadisy, czyli opowieści o czynach i wypowiedziach Proroka Muhammada. Z tego względu całe życie muzułmanina jest imitatio Muhammadi, naśladowaniem Proroka. Do powstania sunny przyczynił się fakt, że Koran nie zawiera jednak wszystkich szczegółów dotyczących prawa muzułmańskiego. Przez to stanowi ona niejako uzupełnienie świętej księgi. W VIII wieku n.e., kiedy zaczęli już wymierać ludzie, którzy pamiętali Proroka i mogli zaświadczyć o jego słowach, rozpoczął się proces spisywania sunny. Egoistka pracowita niezwykle stwierdza kolorowe wiatraczki.