system-calls

Do czego służy wywołanie systemowe brk ()?

Zgodnie z instrukcją programistów Linuksa: Brk () i sbrk() zmieniają lokalizację przerwania programu, co określa konie ... śnie w dół. Ale to, czego nie wyjaśniają, to to, co się dzieje, gdy sterta zajmuje całą przestrzeń między stertą a stosem?

W jaki sposób malloc() jest implementowane wewnętrznie? [duplikat]

To pytanie ma już odpowiedź tutaj: Jak działają malloc () i free ()? ... program i widzę wiele sbrk wywołań systemowych, robiąc man sbrk mówi o tym, że jest używany w malloc(), ale niewiele więcej.

Jak działają połączenia systemowe?

Rozumiem, że użytkownik może posiadać proces i każdy proces ma przestrzeń adresową (która zawiera poprawne lokalizacje pamięc ... yna się od miejsca, w którym został przerwany. Is my dobrze rozumiesz? Dołączony jest szorstki schemat mojego zrozumienia:

Jak napisać obsługę sygnału, aby złapać SIGSEGV?

Chcę napisać obsługę sygnału, aby złapać SIGSEGV. I protect a block of memory for read or write using char *buffer; char * ... S); } Problem polega na tym, że działa tylko obsługa sygnału i nie mogę wrócić do głównej funkcji po przechwyceniu sygnału.

praktyczne przykłady zastosowania dup lub dup2

I know what dup / dup2 tak, ale nie mam pojęcia, kiedy będzie używany. Jakieś praktyczne przykłady? Dzięki.

dup2 / dup-po co miałbym duplikować deskryptor pliku?

Staram się zrozumieć użycie dup2 i dup. Ze strony man: DESCRIPTION dup and dup2 create a copy of the file descriptor old ... ym robić jego kopię? Byłbym wdzięczny, gdybyś mógł wyjaśnić i podać mi przykład, gdzie dup2 / dup jest potrzebny. Dzięki

Co jest lepsze "int 0x80" lub "syscall"?

Przestudiowałem jądro Linuksa i dowiedziałem się, że dla architektury x86_64 przerwanie int 0x80 nie działa jak wywołanie wyw ... nie brzmi: w przypadku architektury x86 co jest bardziej korzystne syscall lub int 0x80 i dlaczego? EDIT : używam jądra 3.4

Magiczne liczby wywołania systemowego Linux reboot ()

interfejs programowania Linux ma ćwiczenie w Rozdziale 3, które wygląda tak: Podczas używania restartu specyficznego dla ... ybym skompilował jądro z kodu źródłowego, mógłbym spróbować znaleźć, który plik obiektowy zdefiniował symbol i przejść z tam.

Jak kontrolować, na którym rdzeniu działa proces?

Mogę zrozumieć, jak można napisać program, który używa wielu procesów lub wątków: fork () nowy proces i używać IPC, lub utwor ... m szeregowania, ale więcej " po wybraniu rdzenia, jakie instrukcje muszą być wykonane, aby rdzeń zaczął pobierać instrukcje?"

Jak ponownie zaimplementować (lub zawinąć) funkcję syscall w Linuksie?

Załóżmy, że chcę całkowicie przejąć wywołanie systemowe open (), być może zawijać rzeczywisty syscall i wykonać pewne logowan ... ędzy zdefiniowanym przez użytkownika open() a libc open(). Proszę podzielić się innymi technikami, aby osiągnąć ten sam cel.

wywołanie systemowe i przełącznik kontekstowy

Przepraszam, że zadaję to pytanie, gdy już zostało zadane, ale nie mogłem uzyskać od nich jasności. Dlatego zadaję następując ... go. Zastanawiam się, co by się stało, gdyby zmiana kontekstu miała miejsce na czas połączenia systemowego. Jakieś przykłady ?

Jak uzyskać dostęp do wywołania systemowego z przestrzeni użytkownika?

Przeczytałem kilka paragrafów w LKD 1 a ja po prostu nie mogę zrozumieć poniższej treści: Dostęp do wywołania systemowe ... _______1rozwój jądra Linuksa , autorstwa Roberta Love.  plik PDF na wordpress.com [idź do strony: 81]); wynik Google Books .

Jak wywołać wywołanie systemowe przez syscall lub sysenter w wbudowanym zestawie?

Jak zaimplementować wywołanie systemowe używając sysenter / syscall bezpośrednio w x86 Linux? Czy ktoś może pomóc? Byłoby jes ... wołania systemowego? I find some material http://damocles.blogbus.com/tag/sysenter /. Ale nadal trudno żeby się dowiedzieć.

Gdzie mogę znaleźć kod źródłowy wywołania systemowego?

W Linuksie gdzie mogę znaleźć kod źródłowy dla wszystkich wywołań systemowych, biorąc pod uwagę, że mam drzewo źródłowe? Równ ... kod źródłowy i assembly dla konkretnego wywołania systemowego, czy jest coś, co mogę wpisać w terminalu, jak-my_system_call?

Jak interpretować wyjście strace?

Muszę profilować działanie aplikacji, dla której używam strace. Nie wiem jednak, jak interpretować różne wywołania systemowe ... ę doświadczenia w systemach operacyjnych i rozumiem, jakie wywołania systemowe, Pamięć, Pamięć wirtualna, planowanie itp. są.

Jak mogę przechwytywać połączenia systemu linux?

Poza sztuczką LD_PRELOAD i modułami jądra Linuksa, które zastępują określony syscall na podany przez Ciebie , czy istnieje mo ... zechwycenia syscall ( na przykład open), tak aby najpierw przeszedł przez twoją funkcję, zanim dotrze do rzeczywistego open ?

Jak uzyskać identyfikator wątku z dowolnego pthread t?

Mam pthread_t i chciałbym zmienić jego powinowactwo do procesora. Problem polega na tym, że używam glibc 2.3.2, który nie ma ... n sposób kształt lub forma równoważna ID wątku OS. Stąd pytanie: Jak mogę uzyskać identyfikator wątku z dowolnego pthread_t?

Jak wywołać wywołanie systemowe przez sysenter w wbudowanym zestawie?

Jak zaimplementować wywołanie systemowe używając sysenter / syscall bezpośrednio w x86 Linux? Czy ktoś może pomóc? Byłoby jes ... ania systemowego? I find some material http://damocles.blogbus.com/tag/sysenter /. Ale nadal trudno jest zrozumieć Wynocha.

Jak wywołanie systemowe przekłada się na instrukcje procesora?

Powiedzmy, że istnieje prosty program taki jak: #include<stdio.h> void main() { int x; printf("Cool"); ... to momencie musi zrobić coś, aby załadować instrukcje systemu operacyjnego itp ... Trochę niejasne :) proszę o wyjaśnienie.

Co to jest interfejs dla wywołań systemowych ARM i gdzie jest on zdefiniowany w jądrze Linuksa?

Czytałem o wywołaniach systemowych w Linuksie i wszędzie jest podany opis dotyczący architektury x86 (0x80 i SYSENTER). Ale n ... stotnych plików, które poznałem to: Arch/arm/kernel / calls.S Arch/arm/kernel / entry-common.S (potrzebne Wyjaśnienie)