Debugowanie jądra systemu Linux
|
|
- Irena Sikora
- 6 lat temu
- Przeglądów:
Transkrypt
1 Norbert Potocki Krzysztof Gogól Piotr Dittwald 30 listopada 2007
2 Debugowanie jądra - wstęp Problemy z debugowaniem jądra musimy często resetować system czasami potrzebna jest kompilacja dużych fragmentów jądra niebezpieczeństwo uszkodzenia systemu plików błąd w jądrze może zawiesić cały system brak możliwości użycia debuggera nic nie może stać wyżej niż jądro
3 Debugowanie jądra - wstęp Sposoby debugowania jądra wypisywanie informacji debugujących podczas działania jądra printk, itp. użycie wbudowanego w jądro debuggera kdb wirtualizacja systemu i debugowanie jądra jako zwykłego procesu użytkownika uml
4 Printk() Oops printk() - cóż to takiego? funkcja wypisująca wiadomości jądra - działanie podobne do printf() wypisywane wiadomości są powiązane z różnymi poziomami logowania (ang. loglevels) lub priorytetami odpowiedni loglevel jest wskazywany przez makro Przykłady: p r i n t k (KERN DEBUG Here I am : %s :% i \n, FILE, LINE & ) ; p r i n t k (KERN CRIT I m t r a s h e d ; g i v i n g up on %p\n, p t r ) ;
5 Printk() Oops trochę o poziomach logowania (loglevels) istnieje 8 możliwych poziomów logowania, zdefinowanych w pliku nagłówkowym linux/kernel.h mniejszy numer = wyższy priorytet brak wyspecyfikowanego w printfk priorytetu brany jest DEFAULT MESSAGE LOGLEVEL (wyspecyfikowany w /kernel/printk.c) - wartość ta zmieniała się w historii rozwoju Linuksa, więc sugerowane jest jawne specyfikowanie priorytetu wiadomość o priorytecie większym niż console loglevel wyświetlana jest na konsoli (wiadomości jądra zależą także od działania klogd oraz syslogd ) w /proc/sys/kernel/printk znajdują się następujące cztery wartości: console loglevel, default message loglevel, minimum console level oraz default console loglevel
6 Printk() Oops trochę o poziomach logowania (loglevels) istnieje 8 możliwych poziomów logowania, zdefinowanych w pliku nagłówkowym linux/kernel.h mniejszy numer = wyższy priorytet brak wyspecyfikowanego w printfk priorytetu brany jest DEFAULT MESSAGE LOGLEVEL (wyspecyfikowany w /kernel/printk.c) - wartość ta zmieniała się w historii rozwoju Linuksa, więc sugerowane jest jawne specyfikowanie priorytetu wiadomość o priorytecie większym niż console loglevel wyświetlana jest na konsoli (wiadomości jądra zależą także od działania klogd oraz syslogd ) w /proc/sys/kernel/printk znajdują się następujące cztery wartości: console loglevel, default message loglevel, minimum console level oraz default console loglevel
7 Printk() Oops trochę o poziomach logowania (loglevels) istnieje 8 możliwych poziomów logowania, zdefinowanych w pliku nagłówkowym linux/kernel.h mniejszy numer = wyższy priorytet brak wyspecyfikowanego w printfk priorytetu brany jest DEFAULT MESSAGE LOGLEVEL (wyspecyfikowany w /kernel/printk.c) - wartość ta zmieniała się w historii rozwoju Linuksa, więc sugerowane jest jawne specyfikowanie priorytetu wiadomość o priorytecie większym niż console loglevel wyświetlana jest na konsoli (wiadomości jądra zależą także od działania klogd oraz syslogd ) w /proc/sys/kernel/printk znajdują się następujące cztery wartości: console loglevel, default message loglevel, minimum console level oraz default console loglevel
8 Printk() Oops trochę o poziomach logowania (loglevels) istnieje 8 możliwych poziomów logowania, zdefinowanych w pliku nagłówkowym linux/kernel.h mniejszy numer = wyższy priorytet brak wyspecyfikowanego w printfk priorytetu brany jest DEFAULT MESSAGE LOGLEVEL (wyspecyfikowany w /kernel/printk.c) - wartość ta zmieniała się w historii rozwoju Linuksa, więc sugerowane jest jawne specyfikowanie priorytetu wiadomość o priorytecie większym niż console loglevel wyświetlana jest na konsoli (wiadomości jądra zależą także od działania klogd oraz syslogd ) w /proc/sys/kernel/printk znajdują się następujące cztery wartości: console loglevel, default message loglevel, minimum console level oraz default console loglevel
9 Printk() Oops trochę o poziomach logowania (loglevels) istnieje 8 możliwych poziomów logowania, zdefinowanych w pliku nagłówkowym linux/kernel.h mniejszy numer = wyższy priorytet brak wyspecyfikowanego w printfk priorytetu brany jest DEFAULT MESSAGE LOGLEVEL (wyspecyfikowany w /kernel/printk.c) - wartość ta zmieniała się w historii rozwoju Linuksa, więc sugerowane jest jawne specyfikowanie priorytetu wiadomość o priorytecie większym niż console loglevel wyświetlana jest na konsoli (wiadomości jądra zależą także od działania klogd oraz syslogd ) w /proc/sys/kernel/printk znajdują się następujące cztery wartości: console loglevel, default message loglevel, minimum console level oraz default console loglevel
10 Przykłady Wprowadzenie Printk() Oops fragment pliku /include/linux/kernel.h (jądro ): #d e f i n e KERN EMERG <0> / system i s unusable / #d e f i n e KERN ALERT <1> / action must be taken immediately / #d e f i n e KERN CRIT <2> / c r i t i c a l c o n d i t i o n s / #d e f i n e KERN ERR <3> / e r r o r c o n d i t i o n s / #d e f i n e KERN WARNING <4> / warning c o n d i t i o n s / #d e f i n e KERN NOTICE <5> / normal but s i g n i f i c a n t c o n d i t i o n / #d e f i n e KERN INFO <6> / i n f o r m a t i o n a l / #d e f i n e KERN DEBUG <7> / debug l e v e l messages /
11 Przykłady - c.d. Wprowadzenie Printk() Oops fragment pliku /kernel/printk.c (jądro ): / p r i n t k s w i t h o u t a l o g l e v e l use t h i s.. / #d e f i n e DEFAULT MESSAGE LOGLEVEL 4 / KERN WARNING / / We show everything that i s MORE important than t h i s.. / #d e f i n e MINIMUM CONSOLE LOGLEVEL 1 / Minimum l o g l e v e l we l e t p e o p l e use / #d e f i n e DEFAULT CONSOLE LOGLEVEL 7 / anything MORE s e r i o u s than KERN DEBUG /
12 Printk() Oops Debugging System Faults fault!= panic oops zakłócenie w poprawnej pracy jądra Linuxa powodujące błąd Pomimo oopsa, system często działa dalej Ginie tylko proces odpowiedzialny za wywołanie błędu Tracona jest zapisywana przez proces pamięć
13 Printk() Oops Debugging System Faults fault!= panic oops zakłócenie w poprawnej pracy jądra Linuxa powodujące błąd Pomimo oopsa, system często działa dalej Ginie tylko proces odpowiedzialny za wywołanie błędu Tracona jest zapisywana przez proces pamięć
14 Printk() Oops Debugging System Faults fault!= panic oops zakłócenie w poprawnej pracy jądra Linuxa powodujące błąd Pomimo oopsa, system często działa dalej Ginie tylko proces odpowiedzialny za wywołanie błędu Tracona jest zapisywana przez proces pamięć
15 Printk() Oops Debugging System Faults fault!= panic oops zakłócenie w poprawnej pracy jądra Linuxa powodujące błąd Pomimo oopsa, system często działa dalej Ginie tylko proces odpowiedzialny za wywołanie błędu Tracona jest zapisywana przez proces pamięć
16 Printk() Oops Debugging System Faults fault!= panic oops zakłócenie w poprawnej pracy jądra Linuxa powodujące błąd Pomimo oopsa, system często działa dalej Ginie tylko proces odpowiedzialny za wywołanie błędu Tracona jest zapisywana przez proces pamięć
17 Printk() Oops Z oopsa można odczytać wiele ciekawych informacji
18 Printk() Oops Oops wg lxr.linux.no/source/documentation/oops-tracing.txt Co zrobić, gdy trafimy na oopsa? Znajdź Oopsa i wyślij go do osoby zajmującej się utrzymaniem systemu. Wyślij Oopsa do linux-kernel@vger.kernel.org Co zrobić jeśli błąd jest na tyle poważny, że nie można wpisywać poleceń? Przepisać ręcznie tekst z ekranu Zrobić zdjęcie aparatem cyfrowym
19 Printk() Oops Oops wg lxr.linux.no/source/documentation/oops-tracing.txt Co zrobić, gdy trafimy na oopsa? Znajdź Oopsa i wyślij go do osoby zajmującej się utrzymaniem systemu. Wyślij Oopsa do linux-kernel@vger.kernel.org Co zrobić jeśli błąd jest na tyle poważny, że nie można wpisywać poleceń? Przepisać ręcznie tekst z ekranu Zrobić zdjęcie aparatem cyfrowym
20 Printk() Oops Oops wg lxr.linux.no/source/documentation/oops-tracing.txt Co zrobić, gdy trafimy na oopsa? Znajdź Oopsa i wyślij go do osoby zajmującej się utrzymaniem systemu. Wyślij Oopsa do linux-kernel@vger.kernel.org Co zrobić jeśli błąd jest na tyle poważny, że nie można wpisywać poleceń? Przepisać ręcznie tekst z ekranu Zrobić zdjęcie aparatem cyfrowym
21 Printk() Oops Oops wg lxr.linux.no/source/documentation/oops-tracing.txt Co zrobić, gdy trafimy na oopsa? Znajdź Oopsa i wyślij go do osoby zajmującej się utrzymaniem systemu. Wyślij Oopsa do linux-kernel@vger.kernel.org Co zrobić jeśli błąd jest na tyle poważny, że nie można wpisywać poleceń? Przepisać ręcznie tekst z ekranu Zrobić zdjęcie aparatem cyfrowym
22 Printk() Oops Oops wg lxr.linux.no/source/documentation/oops-tracing.txt Co zrobić, gdy trafimy na oopsa? Znajdź Oopsa i wyślij go do osoby zajmującej się utrzymaniem systemu. Wyślij Oopsa do linux-kernel@vger.kernel.org Co zrobić jeśli błąd jest na tyle poważny, że nie można wpisywać poleceń? Przepisać ręcznie tekst z ekranu Zrobić zdjęcie aparatem cyfrowym
23 Printk() Oops Oops wg lxr.linux.no/source/documentation/oops-tracing.txt Co zrobić, gdy trafimy na oopsa? Znajdź Oopsa i wyślij go do osoby zajmującej się utrzymaniem systemu. Wyślij Oopsa do linux-kernel@vger.kernel.org Co zrobić jeśli błąd jest na tyle poważny, że nie można wpisywać poleceń? Przepisać ręcznie tekst z ekranu Zrobić zdjęcie aparatem cyfrowym
24 Printk() Oops Co pokazuje oops? 1 Numer oopsa 2 Status programu i stan rejestrów procesora 3 Zawartość stosu 4 Zapis ostatnich wywołań
25 Printk() Oops Co pokazuje oops? 1 Numer oopsa 2 Status programu i stan rejestrów procesora 3 Zawartość stosu 4 Zapis ostatnich wywołań
26 Printk() Oops Co pokazuje oops? 1 Numer oopsa 2 Status programu i stan rejestrów procesora 3 Zawartość stosu 4 Zapis ostatnich wywołań
27 Printk() Oops Co pokazuje oops? 1 Numer oopsa 2 Status programu i stan rejestrów procesora 3 Zawartość stosu 4 Zapis ostatnich wywołań
28 Wprowadzenie Printk() Oops Gdzie znajdują się te informacje?
29 Wprowadzenie Printk() Oops Gdzie znajdują się te informacje?
30 Źródło oopsa Wprowadzenie Printk() Oops Moduł z błędem (pointer nie może być 0) #i n c l u d e <l i n u x / module. h> MODULE LICENSE ( GPL ) ; i n t i n i t module ( v o i d ) { p r i n t k (KERN INFO P s u j a c e H e l l o w o r l d \n ) ; c h a r c = 0 ; c = ; r e t u r n 0 ; } v o i d c l e a n u p module ( v o i d ) { p r i n t k (KERN INFO good bye\n ) ; }
31 KLOGD Wprowadzenie Printk() Oops Demon klog dekoduje oops y zanim zostaną zapisane w logu. Uwaga na zdekodowany symbol EIP (Extended Instruction Pointer) Unable to h a n d l e k e r n e l NULL p o i n t e r d e r e f e r e n c e a t v i r t u a l a d d r e s s \ p r i n t i n g e i p : c c 3 pde = Oops : 0002 CPU : 0 EIP : : [ f a u l t y : f a u l t y w r i t e +3/576] EFLAGS : eax : f f f f f f e a ebx : c 2 c 55 ae 0 ecx : c c 0 edx : c 2 c 55b00 e s i : 0804d038 edi : 0804d038 ebp : c 2337 f 8c esp : c2337 f 8c ds : 0018 es : 0018 s s : 0018 Process cat ( pid : 23413, stackpage=c ) Stack : c e6 c2c55 ae0 0804d c2c55b00 c \ d038 b f f f f b d b f f f f b d 4 c 010b \ 0804 d d038 b f f f f b d b b \ C a l l Trace : [ s y s w r i t e +214/256] [ system c a l l +52/56] Code : c c0 89 ec 5d c3 8d b
32 Printk() Oops KLOGD Wskaźnik instrukcji był wykonywany w funkcji faulty-write KLOG ładuje informacje podczas uruchamiania, stąd jeśli moduł został załadowany po zainicjowaniu klogd. Klogd nie ma o nim informacji Aby temu przeciwdziałać można: 1 wysyłać sygnał SIGUSR1 po każdym załadowaniu nowego modułu 2 uruchomić klogd z opcją -p ( paranoid ), dzięki której klogd będzie ponownie wczytywać informacje o symbolach po każdym komunikacie oops Klogd potrzebuje aktualnej kopii System.map
33 Printk() Oops KLOGD Wskaźnik instrukcji był wykonywany w funkcji faulty-write KLOG ładuje informacje podczas uruchamiania, stąd jeśli moduł został załadowany po zainicjowaniu klogd. Klogd nie ma o nim informacji Aby temu przeciwdziałać można: 1 wysyłać sygnał SIGUSR1 po każdym załadowaniu nowego modułu 2 uruchomić klogd z opcją -p ( paranoid ), dzięki której klogd będzie ponownie wczytywać informacje o symbolach po każdym komunikacie oops Klogd potrzebuje aktualnej kopii System.map
34 Printk() Oops KLOGD Wskaźnik instrukcji był wykonywany w funkcji faulty-write KLOG ładuje informacje podczas uruchamiania, stąd jeśli moduł został załadowany po zainicjowaniu klogd. Klogd nie ma o nim informacji Aby temu przeciwdziałać można: 1 wysyłać sygnał SIGUSR1 po każdym załadowaniu nowego modułu 2 uruchomić klogd z opcją -p ( paranoid ), dzięki której klogd będzie ponownie wczytywać informacje o symbolach po każdym komunikacie oops Klogd potrzebuje aktualnej kopii System.map
35 Printk() Oops KLOGD Wskaźnik instrukcji był wykonywany w funkcji faulty-write KLOG ładuje informacje podczas uruchamiania, stąd jeśli moduł został załadowany po zainicjowaniu klogd. Klogd nie ma o nim informacji Aby temu przeciwdziałać można: 1 wysyłać sygnał SIGUSR1 po każdym załadowaniu nowego modułu 2 uruchomić klogd z opcją -p ( paranoid ), dzięki której klogd będzie ponownie wczytywać informacje o symbolach po każdym komunikacie oops Klogd potrzebuje aktualnej kopii System.map
36 Printk() Oops KLOGD Wskaźnik instrukcji był wykonywany w funkcji faulty-write KLOG ładuje informacje podczas uruchamiania, stąd jeśli moduł został załadowany po zainicjowaniu klogd. Klogd nie ma o nim informacji Aby temu przeciwdziałać można: 1 wysyłać sygnał SIGUSR1 po każdym załadowaniu nowego modułu 2 uruchomić klogd z opcją -p ( paranoid ), dzięki której klogd będzie ponownie wczytywać informacje o symbolach po każdym komunikacie oops Klogd potrzebuje aktualnej kopii System.map
37 Printk() Oops KLOGD Wskaźnik instrukcji był wykonywany w funkcji faulty-write KLOG ładuje informacje podczas uruchamiania, stąd jeśli moduł został załadowany po zainicjowaniu klogd. Klogd nie ma o nim informacji Aby temu przeciwdziałać można: 1 wysyłać sygnał SIGUSR1 po każdym załadowaniu nowego modułu 2 uruchomić klogd z opcją -p ( paranoid ), dzięki której klogd będzie ponownie wczytywać informacje o symbolach po każdym komunikacie oops Klogd potrzebuje aktualnej kopii System.map
38 Printk() Oops KSYMOOPS Czasem potrzeba więcej informacji niż dostarcza klogd. Często się zdarza, że klogd ginie w wyniku błędu systemu. Do serii 2.3, ksymoops był rozprowadzany ze źródłami jądra. Teraz można go ściągnąć np z ftp://ftp.ocs.com.au/pub/ksymoops
39 Printk() Oops KSYMOOPS Czasem potrzeba więcej informacji niż dostarcza klogd. Często się zdarza, że klogd ginie w wyniku błędu systemu. Do serii 2.3, ksymoops był rozprowadzany ze źródłami jądra. Teraz można go ściągnąć np z ftp://ftp.ocs.com.au/pub/ksymoops
40 Printk() Oops KSYMOOPS Czasem potrzeba więcej informacji niż dostarcza klogd. Często się zdarza, że klogd ginie w wyniku błędu systemu. Do serii 2.3, ksymoops był rozprowadzany ze źródłami jądra. Teraz można go ściągnąć np z ftp://ftp.ocs.com.au/pub/ksymoops
41 Printk() Oops KSYMOOPS Czasem potrzeba więcej informacji niż dostarcza klogd. Często się zdarza, że klogd ginie w wyniku błędu systemu. Do serii 2.3, ksymoops był rozprowadzany ze źródłami jądra. Teraz można go ściągnąć np z ftp://ftp.ocs.com.au/pub/ksymoops
42 Printk() Oops KSYMOOPS Ksymoops poza komunikatem o błędzie potrzebuje kilku dodatkowych informacji: 1 Plik System.map /usr/src/linux/system.map 2 Lista modułów /proc/ksyms 3 Symbole jądra zdefiniowane, gdy pojawia się oops /proc/ksyms 4 Kopia obrazu jądra (vmlinuz, zimage bzimage) 5 Lokalizacja modułów - można podawać za pomocą opsji -o
43 Printk() Oops KSYMOOPS Ksymoops poza komunikatem o błędzie potrzebuje kilku dodatkowych informacji: 1 Plik System.map /usr/src/linux/system.map 2 Lista modułów /proc/ksyms 3 Symbole jądra zdefiniowane, gdy pojawia się oops /proc/ksyms 4 Kopia obrazu jądra (vmlinuz, zimage bzimage) 5 Lokalizacja modułów - można podawać za pomocą opsji -o
44 Printk() Oops KSYMOOPS Ksymoops poza komunikatem o błędzie potrzebuje kilku dodatkowych informacji: 1 Plik System.map /usr/src/linux/system.map 2 Lista modułów /proc/ksyms 3 Symbole jądra zdefiniowane, gdy pojawia się oops /proc/ksyms 4 Kopia obrazu jądra (vmlinuz, zimage bzimage) 5 Lokalizacja modułów - można podawać za pomocą opsji -o
45 Printk() Oops KSYMOOPS Ksymoops poza komunikatem o błędzie potrzebuje kilku dodatkowych informacji: 1 Plik System.map /usr/src/linux/system.map 2 Lista modułów /proc/ksyms 3 Symbole jądra zdefiniowane, gdy pojawia się oops /proc/ksyms 4 Kopia obrazu jądra (vmlinuz, zimage bzimage) 5 Lokalizacja modułów - można podawać za pomocą opsji -o
46 Printk() Oops KSYMOOPS Ksymoops poza komunikatem o błędzie potrzebuje kilku dodatkowych informacji: 1 Plik System.map /usr/src/linux/system.map 2 Lista modułów /proc/ksyms 3 Symbole jądra zdefiniowane, gdy pojawia się oops /proc/ksyms 4 Kopia obrazu jądra (vmlinuz, zimage bzimage) 5 Lokalizacja modułów - można podawać za pomocą opsji -o
47 Printk() Oops KSYMOOPS Ksymoops poza komunikatem o błędzie potrzebuje kilku dodatkowych informacji: 1 Plik System.map /usr/src/linux/system.map 2 Lista modułów /proc/ksyms 3 Symbole jądra zdefiniowane, gdy pojawia się oops /proc/ksyms 4 Kopia obrazu jądra (vmlinuz, zimage bzimage) 5 Lokalizacja modułów - można podawać za pomocą opsji -o
48 KSYMOOPS Wprowadzenie Printk() Oops Wynik działania wygląda następująco: >>EIP ; c c 3 <[ f a u l t y ] f a u l t y w r i t e +3/20> <===== Trace ; c e6 <sys write+d6/100> Trace ; c010b860 <system c a l l +34/38> Code ; c c 3 <[ f a u l t y ] f a u l t y w r i t e +3/20> < EIP >: Code ; c c 3 <[ f a u l t y ] f a u l t y w r i t e +3/20> <===== 0 : c movl $0x 0,0 x0 <===== Code ; c c 8 <[ f a u l t y ] f a u l t y w r i t e +8/20> 5 : Code ; c cd <[ f a u l t y ] f a u l t y w r i t e+d/20> a : 31 c 0 x o r l %eax,% eax Code ; c c f <[ f a u l t y ] f a u l t y w r i t e+f /20> c : 89 ec movl %ebp,% esp Code ; c d1 <[ f a u l t y ] f a u l t y w r i t e +11/20> e : 5d p o p l %ebp Code ; c d2 <[ f a u l t y ] f a u l t y w r i t e +12/20> f : c 3 r e t Code ; c d3 <[ f a u l t y ] f a u l t y w r i t e +13/20> 1 0 : 8d b l e a l 0 x 0(%e s i ),% e s i Code ; c d8 <[ f a u l t y ] f a u l t y w r i t e +18/20> 1 5 : 00
49 Printk() Oops SYSTEM HANGS Chociaż większość błędów w kodzie jądra kończy się komunikatami oops, czasami system się całkowicie zawiesza. Dzieje się tak na przykład, gdy system zacznie wykonywać niekończącą się pętlę. Wtedy może nie pomóc nawet magiczne CTRL-ALT-DEL. Są dwa sposoby radzenie sobie z zawieszaniem systemu: 1 uprzednio im zapobiegać 2 debuggować po fakcie
50 Printk() Oops SYSTEM HANGS Chociaż większość błędów w kodzie jądra kończy się komunikatami oops, czasami system się całkowicie zawiesza. Dzieje się tak na przykład, gdy system zacznie wykonywać niekończącą się pętlę. Wtedy może nie pomóc nawet magiczne CTRL-ALT-DEL. Są dwa sposoby radzenie sobie z zawieszaniem systemu: 1 uprzednio im zapobiegać 2 debuggować po fakcie
51 Printk() Oops SYSTEM HANGS Chociaż większość błędów w kodzie jądra kończy się komunikatami oops, czasami system się całkowicie zawiesza. Dzieje się tak na przykład, gdy system zacznie wykonywać niekończącą się pętlę. Wtedy może nie pomóc nawet magiczne CTRL-ALT-DEL. Są dwa sposoby radzenie sobie z zawieszaniem systemu: 1 uprzednio im zapobiegać 2 debuggować po fakcie
52 Printk() Oops SYSTEM HANGS Chociaż większość błędów w kodzie jądra kończy się komunikatami oops, czasami system się całkowicie zawiesza. Dzieje się tak na przykład, gdy system zacznie wykonywać niekończącą się pętlę. Wtedy może nie pomóc nawet magiczne CTRL-ALT-DEL. Są dwa sposoby radzenie sobie z zawieszaniem systemu: 1 uprzednio im zapobiegać 2 debuggować po fakcie
53 Uwagi ogólne Instalacja Korzystanie z KDB czym jest KDB? debugger dla Linuxa opartego na jądrze 2.{234} projekt Silicon Graphics
54 Krótko o łatach Wprowadzenie Uwagi ogólne Instalacja Korzystanie z KDB łata (patch) - plik tekstowy przechowujący różnice między dwiema wersjami kodu źródłowego Nakładanie łaty: 1 wybieramy argument parametru -p (liczba 0) - ile ukośnikow usunąć ze ścieżki dostępnej w łacie 2 porównane zostają katalogi plików - oryginalnego i zmodyfikowanego
55 Krótko o łatach - c.d. Wprowadzenie Uwagi ogólne Instalacja Korzystanie z KDB Przykladowy poczatkowy fragment pliku laty i f f g i t a/credits b/credits a/credits ,10 E : a j o s h s h e l l. u n i x b o x. com D: f b d e v h a c k i n g N: J e s p e r J u h l E : juhl lkml@ dif. dk D: V a r i o u s s m a l l j a n i t o r f i x e s, c l e a n u p s e t c. +E : j e s p e r. j u h g m a i l. com +D: V a r i o u s f i x e s, c l e a n u p s and minor f e a t u r e s.
56 Uwagi ogólne Instalacja Korzystanie z KDB Cechy i możliwości przede wszystkim: nie wymaga dodatkowej maszyny do debugowania jądra wbudowany w jądro - łata (ang. patch) na jądro zakładanie pułapek (ang. breakpoints) kontrola zawartości pamięci jądra i struktur danych podczas pracy procesu formatowanie oraz wyświetlanie zebranych informacji kontrola operacji jądra (w tym zatrzymanie przy konkretnej instrukcji, wykonywanie krok po kroku ) sprawdzanie stanu procesu bez zewnętrznego systemu ani portu kontrola wielu procesorów
57 Uwagi ogólne Instalacja Korzystanie z KDB Cechy i możliwości przede wszystkim: nie wymaga dodatkowej maszyny do debugowania jądra wbudowany w jądro - łata (ang. patch) na jądro zakładanie pułapek (ang. breakpoints) kontrola zawartości pamięci jądra i struktur danych podczas pracy procesu formatowanie oraz wyświetlanie zebranych informacji kontrola operacji jądra (w tym zatrzymanie przy konkretnej instrukcji, wykonywanie krok po kroku ) sprawdzanie stanu procesu bez zewnętrznego systemu ani portu kontrola wielu procesorów
58 Uwagi ogólne Instalacja Korzystanie z KDB Cechy i możliwości przede wszystkim: nie wymaga dodatkowej maszyny do debugowania jądra wbudowany w jądro - łata (ang. patch) na jądro zakładanie pułapek (ang. breakpoints) kontrola zawartości pamięci jądra i struktur danych podczas pracy procesu formatowanie oraz wyświetlanie zebranych informacji kontrola operacji jądra (w tym zatrzymanie przy konkretnej instrukcji, wykonywanie krok po kroku ) sprawdzanie stanu procesu bez zewnętrznego systemu ani portu kontrola wielu procesorów
59 Uwagi ogólne Instalacja Korzystanie z KDB Cechy i możliwości przede wszystkim: nie wymaga dodatkowej maszyny do debugowania jądra wbudowany w jądro - łata (ang. patch) na jądro zakładanie pułapek (ang. breakpoints) kontrola zawartości pamięci jądra i struktur danych podczas pracy procesu formatowanie oraz wyświetlanie zebranych informacji kontrola operacji jądra (w tym zatrzymanie przy konkretnej instrukcji, wykonywanie krok po kroku ) sprawdzanie stanu procesu bez zewnętrznego systemu ani portu kontrola wielu procesorów
60 Uwagi ogólne Instalacja Korzystanie z KDB Cechy i możliwości przede wszystkim: nie wymaga dodatkowej maszyny do debugowania jądra wbudowany w jądro - łata (ang. patch) na jądro zakładanie pułapek (ang. breakpoints) kontrola zawartości pamięci jądra i struktur danych podczas pracy procesu formatowanie oraz wyświetlanie zebranych informacji kontrola operacji jądra (w tym zatrzymanie przy konkretnej instrukcji, wykonywanie krok po kroku ) sprawdzanie stanu procesu bez zewnętrznego systemu ani portu kontrola wielu procesorów
61 Uwagi ogólne Instalacja Korzystanie z KDB Cechy i możliwości przede wszystkim: nie wymaga dodatkowej maszyny do debugowania jądra wbudowany w jądro - łata (ang. patch) na jądro zakładanie pułapek (ang. breakpoints) kontrola zawartości pamięci jądra i struktur danych podczas pracy procesu formatowanie oraz wyświetlanie zebranych informacji kontrola operacji jądra (w tym zatrzymanie przy konkretnej instrukcji, wykonywanie krok po kroku ) sprawdzanie stanu procesu bez zewnętrznego systemu ani portu kontrola wielu procesorów
62 Uwagi ogólne Instalacja Korzystanie z KDB Cechy i możliwości przede wszystkim: nie wymaga dodatkowej maszyny do debugowania jądra wbudowany w jądro - łata (ang. patch) na jądro zakładanie pułapek (ang. breakpoints) kontrola zawartości pamięci jądra i struktur danych podczas pracy procesu formatowanie oraz wyświetlanie zebranych informacji kontrola operacji jądra (w tym zatrzymanie przy konkretnej instrukcji, wykonywanie krok po kroku ) sprawdzanie stanu procesu bez zewnętrznego systemu ani portu kontrola wielu procesorów
63 Uwagi ogólne Instalacja Korzystanie z KDB Cechy i możliwości przede wszystkim: nie wymaga dodatkowej maszyny do debugowania jądra wbudowany w jądro - łata (ang. patch) na jądro zakładanie pułapek (ang. breakpoints) kontrola zawartości pamięci jądra i struktur danych podczas pracy procesu formatowanie oraz wyświetlanie zebranych informacji kontrola operacji jądra (w tym zatrzymanie przy konkretnej instrukcji, wykonywanie krok po kroku ) sprawdzanie stanu procesu bez zewnętrznego systemu ani portu kontrola wielu procesorów
64 Uwagi ogólne Instalacja Korzystanie z KDB Dygresja (praktyczna), czyli instalacja łaty na przykładzie KDB pobieramy plik ( rozpakowujemy plik do katalogu ze źródłami Linuksa nakładamy patch konfigurujemy i kompilujemy jądro (za chwilę więcej o opcjach konfiguracji) Oto najważniejsze kroki: $ cd l i n u x $ patch p1 < kdb xxx %nakladamy patch $ make menuconfig %i n t e r a k t y w n a k o n f i g u r a c j a j a d r a
65 Uwagi ogólne Instalacja Korzystanie z KDB A teraz wersja (głównie) obrazkowa
66 Uwagi ogólne Instalacja Korzystanie z KDB Instalujemy patch ogólny - common
67 Uwagi ogólne Instalacja Korzystanie z KDB Instalujemy patch dla odpowiedniej architektury - tu: i386
68 Uwagi ogólne Instalacja Korzystanie z KDB Wybrane opcje konfiguracji jądra CONFIG KDB Compile the kernel with frame pointers ustawia flagę CONFIG FRAME POINTER - sugerowana (choć używa dodatkowego rejestru oraz ma negatywny wpływ na szybkość generowania kodu jądra) KDB off by default ustawia flagę CONFIG KDB OFF, która domyślnie wyłącza KDB
69 Po wpisaniu make menuconfig... Uwagi ogólne Instalacja Korzystanie z KDB
70 Uwagi ogólne Instalacja Korzystanie z KDB... wybieramy odpowiednie opcje dla debugowania (nie zapominamy o opcjach dla systemów plików itp.)
71 Zatwierdzamy opcje konfiguracji... Uwagi ogólne Instalacja Korzystanie z KDB
72 ... i kompilujemy jądro Wprowadzenie Uwagi ogólne Instalacja Korzystanie z KDB
73 (co może trochę potrwać) Uwagi ogólne Instalacja Korzystanie z KDB
74 Uwagi ogólne Instalacja Korzystanie z KDB Na końcu używamy jeszcze make bzimage
75 Uwagi ogólne Instalacja Korzystanie z KDB Pozostało jeszcze kilka kroków dodanie obrazu jądra do odpowiedniego miejsca, np. /boot (plik z obrazem: bzimage; powinien - dla architektury i386 - być w katalogu {katalog ze źródłami}/arch/i386/boot/) ewentualna zmiana ustawień pliku bootloadera (lilo, grub)
76 Uwagi ogólne Instalacja Korzystanie z KDB Uruchamianie Jeśli flaga CONFIG KDB OFF nie jest aktywna, wówczas KDB jest domyślnie aktywne. Aby je deaktywować, należy przekazać flagę kdb=on do jądra podczas bootowania lub użyć polecenia (gdy system został załadowany): #echo 1 >/p r o c / s y s / k e r n e l / kdb Przywołania KDB mozna dokonać za pomocą: 1 klawisza PAUSE 2 kombinacji Ctrt-A 3 gdy KDB jest włączone, wówczas zostaje przywołane automatycznie w przypadku kernel panic
77 Uwagi ogólne Instalacja Korzystanie z KDB Wyświetlanie zawartości pamięci oraz jej modyfikacja wyświetlenie 15 linii pamięci począwszy od 0xc000000: [ 0 ] kdb> md 0 xc zmiana zawartości pamięci 0xc na 0x10: [ 0 ] kdb> mm 0xc x10
78 Uwagi ogólne Instalacja Korzystanie z KDB Wyświetlanie zawartości rejestrów oraz ich modyfikacja wyświetlenie zbioru rejestrów: [ 0 ] kdb> rd ustawienie zawartości rejestru ebx na 0x25: [ 0 ] kdb> rm %ebx 0 x 25
79 Ustawianie pułapek Wprowadzenie Uwagi ogólne Instalacja Korzystanie z KDB [ 1 ] kdb> bp s c u l l r e a d I n s t r u c t i o n ( i ) BP #0 a t 0 xc ( s c u l l r e a d ) i s enabled on cpu 1 [ 1 ] kdb> go
80 Uwagi ogólne Instalacja Korzystanie z KDB Więcej - przykładowe źródła /Documentation/kdb książka Linux Device Drivers - część o debuggowaniu przewodnik dla początkujących użytkowników
81 Wstęp KGBD Czym jest KGDB? patch do konkretnej wersji jądra wymagane są dwie maszyny: 1 target machine tu uruchamiamy jądro, które chcemy debuggować 2 development machine maszyna, z której debuggujemy przy użyciu gdb maszyny są połączone przez porty szeregowe debuggowanie odbywa się w gdb
82 Wstęp KGBD Czym jest KGDB? patch do konkretnej wersji jądra wymagane są dwie maszyny: 1 target machine tu uruchamiamy jądro, które chcemy debuggować 2 development machine maszyna, z której debuggujemy przy użyciu gdb maszyny są połączone przez porty szeregowe debuggowanie odbywa się w gdb
83 Wstęp KGBD Czym jest KGDB? patch do konkretnej wersji jądra wymagane są dwie maszyny: 1 target machine tu uruchamiamy jądro, które chcemy debuggować 2 development machine maszyna, z której debuggujemy przy użyciu gdb maszyny są połączone przez porty szeregowe debuggowanie odbywa się w gdb
84 Wstęp KGBD Czym jest KGDB? patch do konkretnej wersji jądra wymagane są dwie maszyny: 1 target machine tu uruchamiamy jądro, które chcemy debuggować 2 development machine maszyna, z której debuggujemy przy użyciu gdb maszyny są połączone przez porty szeregowe debuggowanie odbywa się w gdb
85 Wstęp KGBD Czym jest KGDB? patch do konkretnej wersji jądra wymagane są dwie maszyny: 1 target machine tu uruchamiamy jądro, które chcemy debuggować 2 development machine maszyna, z której debuggujemy przy użyciu gdb maszyny są połączone przez porty szeregowe debuggowanie odbywa się w gdb
86 Wstęp KGBD Czym jest KGDB? patch do konkretnej wersji jądra wymagane są dwie maszyny: 1 target machine tu uruchamiamy jądro, które chcemy debuggować 2 development machine maszyna, z której debuggujemy przy użyciu gdb maszyny są połączone przez porty szeregowe debuggowanie odbywa się w gdb
87 Wstęp KGBD Czym jest KGDB? patch do konkretnej wersji jądra wymagane są dwie maszyny: 1 target machine tu uruchamiamy jądro, które chcemy debuggować 2 development machine maszyna, z której debuggujemy przy użyciu gdb maszyny są połączone przez porty szeregowe debuggowanie odbywa się w gdb
88 Wstęp KGBD Czym jest KGDB? patch do konkretnej wersji jądra wymagane są dwie maszyny: 1 target machine tu uruchamiamy jądro, które chcemy debuggować 2 development machine maszyna, z której debuggujemy przy użyciu gdb maszyny są połączone przez porty szeregowe debuggowanie odbywa się w gdb
89 Wstęp KGBD Czym jest KGDB? patch do konkretnej wersji jądra wymagane są dwie maszyny: 1 target machine tu uruchamiamy jądro, które chcemy debuggować 2 development machine maszyna, z której debuggujemy przy użyciu gdb maszyny są połączone przez porty szeregowe debuggowanie odbywa się w gdb
90 Wstęp KGBD zalety: 1 śledzenie wykonania kodu jądra instrukcja po instrukcji (w C lub w assemblerze) 2 Breakpointy, Obserwowanie wartości zmiennych i rejestrów 3 Obsługa wątków 4 Debuggowanie modułów wady: 1 dwie maszyny i port szeregowy 2 kgdb działa tylko dla starszych wersji jądra
91 Wstęp KGBD Instalacja i uruchamianie: 1 instalacja patchy dla odpowiedniej wersji jądra 2 połączenie dwóch maszyn 3 support files dla gdb Szczegółowe informacje znajdują się w patchu w pliku: Documentation/i386/gdb-serial.txt
92 Wstęp KGBD Instalacja i uruchamianie: 1 instalacja patchy dla odpowiedniej wersji jądra 2 połączenie dwóch maszyn 3 support files dla gdb Szczegółowe informacje znajdują się w patchu w pliku: Documentation/i386/gdb-serial.txt
93 Wstęp KGBD Instalacja i uruchamianie: 1 instalacja patchy dla odpowiedniej wersji jądra 2 połączenie dwóch maszyn 3 support files dla gdb Szczegółowe informacje znajdują się w patchu w pliku: Documentation/i386/gdb-serial.txt
94 Wstęp KGBD Instalacja i uruchamianie: 1 instalacja patchy dla odpowiedniej wersji jądra 2 połączenie dwóch maszyn 3 support files dla gdb Szczegółowe informacje znajdują się w patchu w pliku: Documentation/i386/gdb-serial.txt
95 Wstęp KGBD Instalacja i uruchamianie: 1 instalacja patchy dla odpowiedniej wersji jądra 2 połączenie dwóch maszyn 3 support files dla gdb Szczegółowe informacje znajdują się w patchu w pliku: Documentation/i386/gdb-serial.txt
96 KGBD Wprowadzenie Wstęp
97 Wstęp KGBD źródła jądra ( - szczegolnie v2.6 dokumentacja do KGDB (kgdb.linsyssoft.com/downloads/kgdb 2/kgdb docu full 2.4.pdf.bz2) - do wersji 2.4 patche z KGDB (kgdb.linsyssoft.com/downloads.htm) - szczegolnie v2.4 starsze wersje KGDB ( - dla jąder 2.4 instalacja ( HOWTO/indexs09.html) - mało szczegółowa
98 Wstęp KGBD źródła jądra ( - szczegolnie v2.6 dokumentacja do KGDB (kgdb.linsyssoft.com/downloads/kgdb 2/kgdb docu full 2.4.pdf.bz2) - do wersji 2.4 patche z KGDB (kgdb.linsyssoft.com/downloads.htm) - szczegolnie v2.4 starsze wersje KGDB ( - dla jąder 2.4 instalacja ( HOWTO/indexs09.html) - mało szczegółowa
99 Wstęp KGBD źródła jądra ( - szczegolnie v2.6 dokumentacja do KGDB (kgdb.linsyssoft.com/downloads/kgdb 2/kgdb docu full 2.4.pdf.bz2) - do wersji 2.4 patche z KGDB (kgdb.linsyssoft.com/downloads.htm) - szczegolnie v2.4 starsze wersje KGDB ( - dla jąder 2.4 instalacja ( HOWTO/indexs09.html) - mało szczegółowa
100 Wstęp KGBD źródła jądra ( - szczegolnie v2.6 dokumentacja do KGDB (kgdb.linsyssoft.com/downloads/kgdb 2/kgdb docu full 2.4.pdf.bz2) - do wersji 2.4 patche z KGDB (kgdb.linsyssoft.com/downloads.htm) - szczegolnie v2.4 starsze wersje KGDB ( - dla jąder 2.4 instalacja ( HOWTO/indexs09.html) - mało szczegółowa
101 Wstęp KGBD źródła jądra ( - szczegolnie v2.6 dokumentacja do KGDB (kgdb.linsyssoft.com/downloads/kgdb 2/kgdb docu full 2.4.pdf.bz2) - do wersji 2.4 patche z KGDB (kgdb.linsyssoft.com/downloads.htm) - szczegolnie v2.4 starsze wersje KGDB ( - dla jąder 2.4 instalacja ( HOWTO/indexs09.html) - mało szczegółowa
102 Wstęp KGBD instalacja (oslab.info/index.php/misc/kgdb) - pod VMware gdb (safari.phptr.com/ /ch03#ch03) - poradnik gdbmod (kgdb.linsyssoft.com/downloads/gdbmod 2.4.bz2) - Zmodyfikowane gdb dające możliwość debugowania modułów sdebug ( modułów za pomocą KGDB
103 Wstęp KGBD instalacja (oslab.info/index.php/misc/kgdb) - pod VMware gdb (safari.phptr.com/ /ch03#ch03) - poradnik gdbmod (kgdb.linsyssoft.com/downloads/gdbmod 2.4.bz2) - Zmodyfikowane gdb dające możliwość debugowania modułów sdebug ( modułów za pomocą KGDB
104 Wstęp KGBD instalacja (oslab.info/index.php/misc/kgdb) - pod VMware gdb (safari.phptr.com/ /ch03#ch03) - poradnik gdbmod (kgdb.linsyssoft.com/downloads/gdbmod 2.4.bz2) - Zmodyfikowane gdb dające możliwość debugowania modułów sdebug ( modułów za pomocą KGDB
105 Wstęp KGBD instalacja (oslab.info/index.php/misc/kgdb) - pod VMware gdb (safari.phptr.com/ /ch03#ch03) - poradnik gdbmod (kgdb.linsyssoft.com/downloads/gdbmod 2.4.bz2) - Zmodyfikowane gdb dające możliwość debugowania modułów sdebug ( modułów za pomocą KGDB
106 UML w teorii UML = user mode linux.... czyli system uruchomiony w przestrzeni programów użytkownika jedna z metod wirtualizacji możliwość zagnieżdżania systemów dwa tryby działania: TT - Tracing Thread SKAS - Single Kernel Address Space jądra gospodarza i gościa może korzystać z systemu plików hosta, lub zawartego w pliku
107 UML - skąd go wziąć w wersjach jądra jako łatka w wersjach jądra >= jest włączony do drzewa jądra większość starszych jąder wymaga dodatkowych łatek.... np o czym nikt wcześniej nie pisał.... a na laby może się przydać ;)
108 UML w praktyce Wprowadzenie metoda prostsza: postępujemy zgodnie z instrukcjami ze strony i pobieramy gotowe jądro oraz system plików metoda trudniejsza: kompilujemy własne jądro budujemy własny system plików więcej na stronie UML a
109 Debugowanie jądra Pobieramy jądro $ wget f t p : / / f t p. k e r n e l. org /pub/ l i n u x / k e r n e l / v 2. 6 / l i n u x t a r. bz 2 $ wget h t t p : / / u s e r mode l i n u x. s o u r c e f o r g e. n e t / o l d / work / c u r r e n t / 2. 6 / / p a t c h e s / jmpbuf Rozpakowujemy $ t a r x j f l i n u x t a r. bz 2 $ cd linux $ patch p1 <.. / jmpbuf Konfigurujemy i kompilujemy $ make mrproper $ make menuconfig ARCH=um $ make l i n u x ARCH=um
110 Budowanie jądra i odpalamy $ l i n u x ubd0=r o o t f s mem=256m.. a gdy chcemy debugować w trybie SKAS $ gdb l i n u x ( gdb ) handle SIGSEGV pass nostop noprint ( gdb ) handle SIGUSR1 pass nostop noprint ( gdb ) run ubd0=root f s mem=256m
111 Debugowanie jądra problem interaktywności Odnajdujemy najniższy pid procesu uruchomionego przez nas jądra Przywracamy do życia gdb $ k i l l INT <nasz pid>
112 Debugowanie jądra moduły rozpoczynamy debugowanie jądra Dodajemy debugowanie modułu ( gdb ) b r e a k l i n k module ( gdb ) continue ( gdb ) p r i n t ( ( s t r u c t module ) mod) >module c o r e ( gdb ) add symbol f i l e SCIEZKA DO MODULU NA HOSCIE <wynik print> ( gdb ) break funkcja z modulu ( gdb ) continue
113 Bonus - prezentacja UML na jądrze na potrzeby labów
Odpluskwianie jądra Linuksa. Michał Brzozowski Krzysztof Korolczuk Marek Stępniowski
Odpluskwianie jądra Linuksa Michał Brzozowski Krzysztof Korolczuk Marek Stępniowski 'Use the Source, Luke, use the Source. Be one with the code.'. Think of Luke Skywalker discarding the automatic firing
Programowanie Systemów Wbudowanych
Programowanie Systemów Wbudowanych Debugowanie z GDB Iwona Kochańska Gdansk University of Technology GNU debugger Identyfikacja i naprawianie błędów to część procesu wytwarzania oprogramowania Techniki
U M L. System operacyjny Linux zagnieżdżony w zewnętrznym systemie operacyjnym (Linux)
http://user-mode-linux.sourceforge.net/ System operacyjny Linux zagnieżdżony w zewnętrznym systemie operacyjnym (Linux) Autor: Jeff Dike Koncepcja powstała w 1999 r. Początkowo jako patch do jądra 2.0
Łukasz Kajda - funkcja printk - demony klogd i syslogd - polecenia strace i ltrace Arkadiusz Firus - kdb - kgdb Marcin Jałmużna - uml Krzysztof
Odpluskwianie jądra Linuksa Autorzy prezentacji Łukasz Kajda - funkcja printk - demony klogd i syslogd - polecenia strace i ltrace Arkadiusz Firus - kdb - kgdb Marcin Jałmużna - uml Krzysztof Dębski -
Odpluskwianie jądra Linuksa
Odpluskwianie jądra Linuksa 21 listopada 2007 Odpluskwianie jadra Linuksa Spis treści Podstawy debugowania jądra Omówienie KDB, KGDB Odpluskwianie jadra Linuksa Wstęp Problemy Pisanie programów nie jest
Programowanie proceduralne INP001210WL rok akademicki 2017/18 semestr letni. Wykład 7. Karol Tarnowski A-1 p.
Programowanie proceduralne INP001210WL rok akademicki 2017/18 semestr letni Wykład 7 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Konfiguracja debuggera Wstrzymywanie działania
ZADANIE.02 Podstawy konfiguracji (interfejsy) Zarządzanie konfiguracjami 1,5h
Imię Nazwisko ZADANIE.02 Podstawy konfiguracji (interfejsy) Zarządzanie konfiguracjami 1,5h 1. Zbudować sieć laboratoryjną 2. Podstawowe informacje dotyczące obsługi systemu operacyjnego (na przykładzie
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 8. Karol Tarnowski A-1 p.
Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni Wykład 8 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Biblioteka GSL Na podstawie: https://www.gnu.org/software/gsl/doc/html/index.html
Systemy operacyjne i sieci komputerowe. 1 SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Etapy uruchamiania systemu
Systemy operacyjne i sieci komputerowe. 1 SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE Etapy uruchamiania systemu 010 2 Systemy operacyjne i sieci komputerowe. Część 010. I. Etapy uruchamiania systemu Windows
Tworzenie oprogramowania
Tworzenie oprogramowania dr inż. Krzysztof Konopko e-mail: k.konopko@pb.edu.pl 1 Tworzenie oprogramowania dla systemów wbudowanych Program wykładu: Tworzenie aplikacji na systemie wbudowanym. Konfiguracja
Visual Basic Debugging and Error Handling
Visual Basic Debugging and Error Handling Typy błędów 1. Compile-Time, (wykrywane w czasie kompilacji np. błąd w składni) 2. Run-Time, (pojawiające się podczas wykonywania programu, np. zły typ danych
1.Wstęp. 2.Generowanie systemu w EDK
1.Wstęp Celem niniejszego ćwiczenia jest zapoznanie z możliwościami debuggowania kodu na platformie MicroBlaze oraz zapoznanie ze środowiskiem wspomagającym prace programisty Xilinx Platform SDK (Eclipse).
C++ - [1-3] Debugowanie w Qt Creator
Slajd 1 z 10 C++ - [1-3] Debugowanie w Qt Creator Nysa 2004-2013. Autor: Wojciech Galiński. wersja dnia 15 maja 2013 r. Slajd 2 z 10 Pojęcia związane z debugowaniem DEBUGOWANIE (z ang. debugging odrobaczanie)
Konfiguracja vsftpd ( Very Secure FTP Server )
Konfiguracja vsftpd ( Very Secure FTP Server ) Jest to prawdopodobnie najbezpieczniejszy i najszybszy UNIX owy serwer FTP. Jego zaletami są m.in. prostota konfiguracji, bezpieczeństwo i szybkość (transfer
GRUB (GRand Unified Bootloader) - jest bootloaderem instalowanym standardowo w Ubuntu, potrafiącym obsłużyć kilka systemów jednocześnie (Multiboot).
GRUB (GRand Unified Bootloader) - jest bootloaderem instalowanym standardowo w Ubuntu, potrafiącym obsłużyć kilka systemów jednocześnie (Multiboot). GRUB ładuje system operacyjny do pamięci przekazuje
Współpraca z platformą dokumentacja techniczna
Współpraca z platformą Emp@tia dokumentacja techniczna INFO-R Spółka Jawna - 2016 43-430 Pogórze, ul. Baziowa 29, tel. (33) 479 93 29, (33) 479 93 89 fax (33) 853 04 06 e-mail: admin@ops.strefa.pl Strona1
Programowanie Systemów Czasu Rzeczywistego
Programowanie Systemów Czasu Rzeczywistego Laboratorium Wprowadzenie Mariusz RUDNICKI mariusz.rudnicki@eti.pg.gda.pl 2016 Spis treści Przygotowanie platform docelowej.... 3 Przygotowanie środowiska programistycznego
Wprowadzenie do obsługi systemu IOS na przykładzie Routera Tryby poleceń Użytkownika (user mode) Router> Przejście do trybu: Dostępny bezpośrednio po podłączeniu konsoli. Opuszczenie trybu: Polecenia:
Instrukcja obsługi modułu Clickshop w Systemie FLASHCOM FIS.
Instrukcja obsługi modułu Clickshop w Systemie FLASHCOM FIS. 1. Oznaczenie danych do wysyłki. Podczas pierwszej wysyłki do sklepu internetowego jak i podczas późniejszych synchronizacji, system FIS wysyła:
Diagnostyka pamięci RAM
Diagnostyka pamięci RAM 1 (Pobrane z slow7.pl) Uszkodzenie pamięci RAM jest jednym z najczęściej występujących problemów związanych z niestabilnym działaniem komputera. Efektem uszkodzenia kości RAM są
WYKONYWANIE ORAZ PRZYWRACANIE KOPII KONFIGURACJI ZA POMOCĄ INTERFEJSU 20-HIM-A6 / 20-HIM-C6S W PRZEMIENNIKACH SERII POWERFLEX 750
WYKONYWANIE ORAZ PRZYWRACANIE KOPII KONFIGURACJI ZA POMOCĄ INTERFEJSU 20-HIM-A6 / 20-HIM-C6S W PRZEMIENNIKACH SERII POWERFLEX 750 Pamięć interfejsu 20-HIM-A6 / 20-HIM-C6S może pomieścić do 3 plików konfiguracyjnych
4 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK MP.01 Rok akad. 2011/2012 2 / 24
Wymagania proceduralnych języków wysokiego poziomu ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH modele programowe procesorów ASK MP.01 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad.
1. Tworzenie nowego projektu.
Załącznik do Instrukcji 1. Tworzenie nowego projektu. Wybieramy opcję z menu głównego New->QNX C Project. Wprowadzamy nazwę przechodzimy do następnego kroku NEXT. Wybieramy platformę docelową oraz warianty
MentorGraphics ModelSim
MentorGraphics ModelSim 1. Konfiguracja programu Wszelkie zmiany parametrów systemu symulacji dokonywane są w menu Tools -> Edit Preferences... Wyniki ustawień należy zapisać w skrypcie startowym systemu
VMware, QEMU, UML. oraz inne wirtualne maszyny. Piotr Findeisen Filip Grządkowski Piotr Kuśka Krzysztof Mroczek
VMware, QEMU, UML oraz inne wirtualne maszyny Piotr Findeisen Filip Grządkowski Piotr Kuśka Krzysztof Mroczek Wirtualizacja - technika ukrywania fizycznej charakterystyki zasobów przed systemami, aplikacjami
SysLoger. Instrukcja obsługi. maj 2018 dla wersji aplikacji (wersja dokumentu 2.5)
SysLoger Instrukcja obsługi maj 2018 dla wersji aplikacji 2.1.0.1 (wersja dokumentu 2.5) Spis treści: Wprowadzenie str. 3 Funkcjonalność str. 5 Wymagania str. 9 Instalacja, inicjacja wersji str. 10 instalacja
Ćwiczenie Nr 7 Instalacja oraz konfiguracja wskazanego systemu operacyjnego
Ćwiczenie Nr 7 Instalacja oraz konfiguracja wskazanego systemu operacyjnego Cel ćwiczenia: Celem zajęć jest zdobycie doświadczenia i umiejętności instalacji systemu operacyjnego z rodziny Unix bez wykorzystania
Struktury systemów operacyjnych
Struktury systemów operacyjnych Jan Tuziemski Część slajdów to zmodyfiowane slajdy ze strony os-booi.com copyright Silberschatz, Galvin and Gagne, 2013 Cele wykładu 1. Opis usług dostarczanych przez OS
Zawartość. Wstęp. Moduł Rozbiórki. Wstęp Instalacja Konfiguracja Uruchomienie i praca z raportem... 6
Zawartość Wstęp... 1 Instalacja... 2 Konfiguracja... 2 Uruchomienie i praca z raportem... 6 Wstęp Rozwiązanie przygotowane z myślą o użytkownikach którzy potrzebują narzędzie do podziału, rozkładu, rozbiórki
Programowanie Niskopoziomowe
Programowanie Niskopoziomowe Wykład 8: Procedury Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Wstęp Linkowanie z bibliotekami zewnętrznymi Operacje na stosie
Wprowadzenie do obsługi systemu IOS na przykładzie Routera
Wprowadzenie do obsługi systemu IOS na przykładzie Routera Tryby poleceń Użytkownika (user mode) Router> Przejście do trybu: Dostępny bezpośrednio po podłączeniu konsoli. Opuszczenie trybu: Polecenia:
Współpraca z platformą Emp@tia. dokumentacja techniczna
Współpraca z platformą Emp@tia dokumentacja techniczna INFO-R Spółka Jawna - 2013 43-430 Pogórze, ul. Baziowa 29, tel. (33) 479 93 29, (33) 479 93 89 fax (33) 853 04 06 e-mail: admin@ops.strefa.pl Strona1
Archiwizacja baz MSSQL /BKP_SQL/ opis oprogramowania
Archiwizacja baz MSSQL /BKP_SQL/ opis oprogramowania Kraków 2010 Przeznaczenie programu. Program BKP_SQL powstał z myślą ułatwienia procesy archiwizacji baz danych MSSQL. Program umożliwia seryjne wykonanie
Wstęp do Informatyki i Programowania Laboratorium: Lista 0 Środowisko programowania
Wstęp do Informatyki i Programowania Laboratorium: Lista 0 Środowisko programowania Przemysław Kobylański Wprowadzenie Każdy program w C musi zawierać przynajmniej funkcję o nazwie main(): Aby możliwe
SYSTEMY OPERACYJNE I laboratorium 3 (Informatyka stacjonarne 2 rok, semestr zimowy)
Procesy i shell. Polecenia ps, sleep, exit, jobs, bg, fg, top, kill, bash, tcsh, which, type, whereis, touch. Metaznak & i >>. Dowiązania miękkie i twarde. Proces jest programem, który jest wykonywany
Adam Kotynia, Łukasz Kowalczyk
Adam Kotynia, Łukasz Kowalczyk Dynamiczna alokacja pamięci Alokacja pamięci oraz dezalokacja pamięci jest to odpowiednio przydział i zwolnienie ciągłego obszaru pamięci. Po uruchomieniu, proces (program)
Instrukcja użytkownika ARSoft-WZ1
05-090 Raszyn, ul Gałczyńskiego 6 tel (+48) 22 101-27-31, 22 853-48-56 automatyka@apar.pl www.apar.pl Instrukcja użytkownika ARSoft-WZ1 wersja 3.x 1. Opis Aplikacja ARSOFT-WZ1 umożliwia konfigurację i
Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.
Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych. 1. Przygotowanie środowiska programistycznego. Zajęcia będą
Najczęściej występujące problemy z instalacją i konfiguracją i ich rozwiązania.
Najczęściej występujące problemy z instalacją i konfiguracją i ich rozwiązania. Q. Jak uruchomić instalator? A. Trzeba nadać instalatorowi atrybut 'wykonywalny'. Można to zrobić wydając polecenie `chmod
ODCZYT PRZEZ ZŁĄCZE OBD
ODCZYT PRZEZ ZŁĄCZE OBD Zlokalizuj złącze diagnostyczne OBD pojazdu i podepnij właściwą wtyczkę dołączoną do zestawu New Genius: w menu głównym, wybierz WORK Vehicles Wybierz PRODUCENTA MODEL TYP Aby odnaleźć
1 Moduł Inteligentnego Głośnika
1 Moduł Inteligentnego Głośnika Moduł Inteligentnego Głośnika zapewnia obsługę urządzenia fizycznego odtwarzającego komunikaty dźwiękowe. Dzięki niemu możliwa jest konfiguracja tego elementu Systemu oraz
1) Czym jest architektura systemu Windows 7 i jak się ją tworzy? 2) Jakie są poszczególne etapy uruchomienia systemu Windows 7?
Temat. Architektura systemu Windows 7. 1) Czym jest architektura systemu Windows 7 i jak się ją tworzy? 2) Jakie są poszczególne etapy uruchomienia systemu Windows 7? 3) Do czego służy narzędzie BCD. Edit?
1 Moduł Inteligentnego Głośnika 3
Spis treści 1 Moduł Inteligentnego Głośnika 3 1.1 Konfigurowanie Modułu Inteligentnego Głośnika........... 3 1.1.1 Lista elementów Modułu Inteligentnego Głośnika....... 3 1.1.2 Konfigurowanie elementu
Procedura rozbudowy macierzy o 2 x HDD 2TB i migracji systemu OPEN-E z USB na LUN Przygotowana na zlecenie COMARCH s.a. przez NTT System s.a.
Przed rozpoczęciem operacji rozbudowy, konieczne jest potwierdzenie przez lokalnego administratora: - wykonania kopii bezpieczeństwa danych znajdujących się na macierzy - możliwość wyłączenia macierzy
Optymalizacja programów Open Source. Profilery wysokiego poziomu część 1. Krzysztof Lichota
Optymalizacja programów Open Source Profilery wysokiego poziomu część 1 Krzysztof Lichota lichota@mimuw.edu.pl strace strace Wypisuje wywołania funkcji systemowych wraz z najważniejszymi parametrami Zasada
Tworzenie połączenia szerokopasmowego /PPPoE/ dla sieci SOLARNET w systemie Linux
Tworzenie połączenia szerokopasmowego /PPPoE/ dla sieci SOLARNET w systemie Linux UWAGA: w przypadku kart ralink zamiast wlan0 stosujemy nazwę ra0!! Potrzebne programy: rp-pppoe-3.7 wireless_tools.27 sterowniki
MikroTik Serwer OpenVPN
MikroTik Serwer OpenVPN Generowanie certyfikatów na systemie Debian. Instalujemy OpenVPN, następnie przechodzimy do katalogu ze skryptami: cd /usr/share/openvpn/easyrsa edytujemy plik vars ustawiając kraj,
Tomasz Greszata - Koszalin
T: Wirtualizacja systemu Linux Ubuntu w maszynie wirtualnej VirtualBox. Zadanie1. Odszukaj w serwisie internetowym dobreprogramy.pl informacje na temat programu Oracle VM VirtualBox. VirtualBox to oprogramowanie
Procesy pojęcia podstawowe. 1.1 Jak kod źródłowy przekształca się w proces
Procesy pojęcia podstawowe 1 1.1 Jak kod źródłowy przekształca się w proces W języku wysokiego poziomu tworzy się tak zwany kod źródłowy który po zapisaniu będzie plikiem z programem źródłowym. Plik źródłowy
Automatyzacja i robotyzacja procesów technologicznych
Automatyzacja i robotyzacja procesów technologicznych Obsługa grawerki Laser 500 i programu LaserCut 5.3 Dominik Rzepka, dominik.rzepka@agh.edu.pl Celem projektu jest wykonanie grawerunku na pleksi oraz
Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna
Język JAVA podstawy wykład 1, część 2 1 Język JAVA podstawy Plan wykładu: 1. Krótka historia Javy 2. Jak przygotować sobie środowisko programistyczne 3. Opis środowiska JDK 4. Tworzenie programu krok po
Wykaz zmian w programie SysLoger
Wykaz zmian w programie SysLoger Pierwsza wersja programu 1.0.0.1 powstała we wrześniu 2011. Funkcjonalność pierwszej wersji programu: 1. Zapis logów do pliku tekstowego, 2. Powiadamianie e-mail tylko
Ewidencja Wyposażenia PL+
Ewidencja Wyposażenia PL+ Jak poprawnie skonfigurować uprawnienia systemowe Spis treści: 1. Wstęp 2. Systemy: Windows Vista,, 8, 8.1, 10... 2.1. Folder z bazą danych... 2.2. Folder z konfiguracją programu...
SystimPlus. Dokumentacja (FAQ) dla wersji: v1.14.05.12
SystimPlus Dokumentacja (FAQ) dla wersji: v1.14.05.12 Spis treści 1.Co to jest SystimPlus?... 1 2.Instalacja i wymagania... 1 3.Jakie drukarki fiskalne obsługuje SystimPlus?... 3 4.Jak połączyć się z drukarką
Instrukcja instalacji i obsługi modemu ED77 pod systemem operacyjnym Windows 98 SE (wydanie drugie)
Instrukcja instalacji i obsługi modemu ED77 pod systemem operacyjnym Windows 98 SE (wydanie drugie) UWAGA Podstawowym wymaganiem dla uruchomienia modemu ED77 jest komputer klasy PC z portem USB 1.1 Instalacja
1. Opis. 2. Wymagania sprzętowe:
1. Opis Aplikacja ARSOFT-WZ2 umożliwia konfigurację, wizualizację i rejestrację danych pomiarowych urządzeń produkcji APAR wyposażonych w interfejs komunikacyjny RS232/485 oraz protokół MODBUS-RTU. Aktualny
Laboratorium Informatyka (I) AiR Ćwiczenia z debugowania
Laboratorium Informatyka (I) AiR Ćwiczenia z debugowania Krzysztof Kluza, Janusz Miller 1 Debugowanie Debugowanie, czy też po polsku odpluskiwanie, to proces polegający na kontrolowanym wykonaniu programu
Instrukcja instalacji aplikacji Comarch Smart Card ToolBox
Instrukcja instalacji aplikacji Comarch Smart Card ToolBox dla urządzeń kryptograficznych Bankowość Internetowa R-Online Biznes Spis treści: 1. Wstęp...2 2. Instalacja Comarch Smart Card ToolBox w systemie
Kompilacja jądra systemu Linux
Instytut Teleinformatyki Wydział Inżynierii Elektrycznej i Komputerowej Politechnika Krakowska Laboratorium Administrowania Systemami Komputerowymi Kompilacja jądra systemu Linux ćwiczenie numer: 2 2 Spis
Analiza malware Remote Administration Tool (RAT) DarkComet BeSTi@
Analiza malware Remote Administration Tool (RAT) DarkComet BeSTi@ 24 marzec, 2014 Wstęp Tydzień temu do wielu skrzynek pocztowych w Polsce trafił email z linkiem do pliku podszywającego się pod nową aktualizację
OPTIMA PC v2.2.1. Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA 255 2011 ELFON. Instrukcja obsługi. Rev 1
OPTIMA PC v2.2.1 Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA 255 Instrukcja obsługi Rev 1 2011 ELFON Wprowadzenie OPTIMA PC jest programem, który w wygodny sposób umożliwia konfigurację
Computer Setup Instrukcja obsługi
Computer Setup Instrukcja obsługi Copyright 2007 Hewlett-Packard Development Company, L.P. Windows jest zastrzeżonym znakiem towarowym firmy Microsoft Corporation, zarejestrowanym w USA. Informacje zawarte
IdyllaOS. Prosty, alternatywny system operacyjny. www.idyllaos.org. Autor: Grzegorz Gliński. Kontakt: milyges@gmail.com
IdyllaOS www.idyllaos.org Prosty, alternatywny system operacyjny Autor: Grzegorz Gliński Kontakt: milyges@gmail.com Co to jest IdyllaOS? IdyllaOS jest to mały, prosty, uniksopodobny, wielozadaniowy oraz
Zadania: 1. Funkcja przeliczająca F na C: float FtoC(float f){ return (f 32.0) * 5.0 / 9.0; }
Zadania: 1. Funkcja przeliczająca F na C: float FtoC(float f){ return (f 32.0) * 5.0 / 9.0; 2. Utworzyć dodatkową funkcję, która przelicza F na K, na bazie poprzedniej F to C (z poprzednich zajęć), wg
Wprowadzenie do środowiska Qt Creator
1.Instalacja środowiska Qt Creator Qt Creator jest wygodnym środowiskiem programistycznym przeznaczonym do tworzenia projektów, czyli aplikacji zarówno konsolowych, jak i okienkowych z wykorzystaniem biblioteki
Programowanie w Javie
Programowanie w Javie Andrzej Czajkowski Lista nr 0 Debugger w Javie Celem ćwiczenia jest poznanie podstawowych funkcji narzędzia debugera (odpluskwiacz) w środowisku Eclipse. Po ukończeniu ćwiczenia student
Wykaz zmian w programie SysLoger
Wykaz zmian w programie SysLoger Pierwsza wersja programu 1.0.0.1 powstała we wrześniu 2011. Funkcjonalność pierwszej wersji programu: 1. Zapis logów do pliku tekstowego, 2. Powiadamianie e-mail tylko
MODUŁ INTEGRUJĄCY ELEKTRONICZNEGO NADAWCĘ Z WF-MAG SPIS TREŚCI
MODUŁ INTEGRUJĄCY ELEKTRONICZNEGO NADAWCĘ Z WF-MAG SPIS TREŚCI Instalacja modułu spedycyjnego 2-4 Konfiguracja i opis ustawień w module Poczta Polska.5-12 Zarządzanie zbiorami 13 Przygotowanie przesyłki.14-18
Instrukcja użytkownika ARsoft-CFG WZ1 4.0
05-090 Raszyn, ul Gałczyńskiego 6 tel. (+48) 22 101-27-31, 22 853-48-56 automatyka@apar.pl www.apar.pl Instrukcja użytkownika ARsoft-CFG WZ1 4.0 wersja 4.0 www.apar.pl 1 1. Opis Aplikacja ARsoft-CFG umożliwia
Konfiguracja pakietu CrossStudio for MSP430 2.0.
Konfiguracja pakietu CrossStudio for MSP430 2.0. 1. Przed rozpoczęciem pracy przeczytaj całego manuala. 2. Gratulujemy wyboru modułu MMmsp430x1xxx. W celu rozpoczęcia pracy należy pobrać 30-dniową wersję
Materiały pomocnicze do laboratorium z Architektury Komputerów II.
Materiały pomocnicze do laboratorium z Architektury Komputerów II. Konfiguracja wirtualnej maszyny PC 1. Krótka charakterystyka programu Microsoft Virtual PC. Microsoft Virtual PC jest emulatorem komputera
epuap Archiwizacja w Osobistym Składzie Dokumentów
epuap Archiwizacja w Osobistym Składzie Dokumentów Projekt współfinansowany ze środków Europejskiego Funduszu Rozwoju Regionalnego w ramach Programu Operacyjnego Innowacyjna Gospodarka SPIS TREŚCI SPIS
CPU. Architektura FLAGS Bit: dr Paweł Kowalczyk; DPTNS, KFCS UŁ. SI 16 bit. 16 bit. 16 bit.
Architektura 8086 8086 posiada 4 rejestry ogólnego użytku AX, BX, CX, DX, 2 rejestry indeksowe SI, DI, 3 rejestry wskaźnikowe SP, BP, IP, 4 rejestry segmentowe CS, DS, SS i ES oraz rejestr flag FLAG AH
Program RMUA. Instrukcja konfiguracji i pracy w programie. (Wersja 2)
Program RMUA Instrukcja konfiguracji i pracy w programie (Wersja 2) 1 Wstęp Program RMUA powstał w związku z obowiązkiem przekazywania ubezpieczonym informacji rocznej zwanej wcześniej RMUA. Aplikacja
Instalacja programu Warsztat 3 w sieci
Instalacja programu Warsztat 3 w sieci (proszę uważnie przeczytać do końca) Spis treści 1 Przed instalacją...2 2 Przeprowadzanie po raz pierwszy instalacji sieciowej...3 2.1 Dane umieszczone na jednej
K. Konopko; Toolchain. Jądro Linuksa. dr inż. Krzysztof Konopko
Jądro Linuksa dr inż. Krzysztof Konopko e-mail: k.konopko@pb.edu.pl 1 Jądro Linuksa Program wykładu: Właściwości jądra Linuksa. Pliki źródłowe jądra. Konfiguracja jądra. Kompilacja i kompilacja skrośna
S P I S T R E Ś C I. Instrukcja obsługi
S P I S T R E Ś C I Instrukcja obsługi 1. Podstawowe informacje o programie.................................................................................... 2 2. Instalacja programu.....................................................................................................
Informatyka I : Tworzenie projektu
Tworzenie nowego projektu w programie Microsoft Visual Studio 2013 Instrukcja opisuje w jaki sposób stworzyć projekt wykorzystujący bibliotekę winbgi2 w programie Microsoft Visual Studio 2013. 1. Otwórz
Rysunek 178. Programowanie monitorów KDS
9.3. KDSMOBILE KDSMobile to wersja KDS przeznaczona do wyświetlania zamówień na urządzeniach z systemem Android. Do działania potrzebuje urządzenia z systemem Android w wersji co najmniej 4.0. Wykorzystuje
INSTRUKCJE WIKAMP Dotyczy wersji systemu z dnia
INSTRUKCJE WIKAMP Dotyczy wersji systemu z dnia 22.04.2016 Spis treści: Jak zmienić hasło?... 1 Jak zmodyfikować profil użytkownika?... 5 Jak zmienić hasło? 1 S t r o n a Hasło umożliwia zalogowanie się
Linux: Procesy. Systemy Operacyjne. Mateusz Hołenko. 26 marca 2013
Linux: Procesy Systemy Operacyjne Mateusz Hołenko 26 marca 2013 Plan zajęć Co to jest sygnał? Polecenia systemowe Sygnały Zadania Mateusz Hołenko Linux: Procesy [2/18] Co to jest proces? Co to jest proces?
Instrukcja do laboratorium Systemów Operacyjnych. (semestr drugi)
Instrukcja do laboratorium Systemów Operacyjnych (semestr drugi) Ćwiczenie drugie (jedne zajęcia) Temat: Procesy i sygnały w Linuksie. Opracowanie: mgr in ż. Arkadiusz Chrobot Wprowadzenie 1. Budowa procesu
Rysunek 178. Programowanie monitorów KDS
9.3. GASTRO KDS Gastro KDS to wersja KDS przeznaczona do wyświetlania zamówień na urządzeniach z systemem Android. Do działania potrzebuje urządzenia z systemem Android w wersji co najmniej 4.0. Wykorzystuje
Przywracanie parametrów domyślnych. Przycisnąć przycisk STOP przez 5 sekund. Wyświetlanie naprzemienne Numer parametru Wartość parametru
Zadanie 1 Przywracanie parametrów domyślnych. Przycisnąć przycisk STOP przez 5 sekund. 5 Sekund = nie GOTOWY Wyświetlanie naprzemienne Numer parametru Wartość parametru 1 1 2009 Eaton Corporation. All
jest dostępne na różne systemy operacyjne. Niniejsza instrukcja opisuje podstawowe operacje i opcje niezbędne do rozpoczęcia pracy w tym programie.
OmegaT to darmowe narzędzie CAT wykonane w technologii Java, dzięki czemu jest dostępne na różne systemy operacyjne. Niniejsza instrukcja opisuje podstawowe operacje i opcje niezbędne do rozpoczęcia pracy
Za pomocą niniejszej instrukcji baza programu MAK zostanie przygotowania do eksportu na METALIB.
Za pomocą niniejszej instrukcji baza programu MAK zostanie przygotowania do eksportu na METALIB. Przed przystąpieniem do modyfikacji należy koniecznie wykonać kopię zapasową bazy, by w razie nieprzewidzianych
Klient poczty elektronicznej - Thunderbird
Klient poczty elektronicznej - Thunderbird Wstęp Wstęp Klient poczty elektronicznej, to program który umożliwia korzystanie z poczty bez konieczności logowania się na stronie internetowej. Za jego pomocą
Instalacja oprogramowania KISSsoft 03/2017
Instalacja oprogramowania KISSsoft 03/2017 Spis treści 1. Instalacja oprogramowania... 2 1.1. Aktywacja wersji testowej... 2 1.1.1. Przykład 1 - Activate online with a license code... 2 1.1.2. Przykład
Syslog. Dziennik systemowy
Syslog Dziennik systemowy System rejestrujący zdarzenia - syslog Jądro systemu, usługi systemowe i różne aplikacje zapisują informacje o swoim działaniu w dziennikach systemowych (logach). Dlatego pierwszym
Acronis Universal Restore
Acronis Universal Restore Update 4 PODRĘCZNIK UŻYTKOWNIKA Spis treści 1 Czym jest narzędzie Acronis Universal Restore...3 2 Instalowanie narzędzia Acronis Universal Restore...3 3 Tworzenie nośnika startowego...3
Instalacja i konfiguracja modemu. Huawei E1550
Instalacja i konfiguracja modemu Huawei E1550 1.Wkładamy modem do portu USB. 2.Modem samoczynnie się instaluje Całość trwa około 3 minut w zależności od komputera. Przystępujemy do instalacji oprogramowania.
Sposoby wykrywania i usuwania błędów. Tomasz Borzyszkowski
Sposoby wykrywania i usuwania błędów Tomasz Borzyszkowski Mylić się jest rzeczą ludzką Typy błędów: błędy specyfikacji: źle określone wymagania błędy projektowe: nieodpowiednie struktury danych i algorytmy
SPIS TREŚCI: KARTY GRAFICZNE... 15
SPIS TREŚCI: Od Autora... 13 KARTY GRAFICZNE... 15 PRZEGLĄDANIE GRAFIKI... 17 Nowe formaty danych... 17 Program CyberView... 18 Konfiguracja za pomocą parametrów ikony... 21 Ustawianie parametrów ekranu
VinCent Administrator
VinCent Administrator Moduł Zarządzania podatnikami Krótka instrukcja obsługi ver. 1.01 Zielona Góra, grudzień 2005 1. Przeznaczenie programu Program VinCent Administrator przeznaczony jest dla administratorów
Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione
Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf Materiały poprawione Rozwiązanie zadania w NetBeans IDE 7.4: Jarosław Ksybek, Adam Miazio Celem ćwiczenia jest przygotowanie prostej aplikacji
Zadanie1. Wykorzystując serwis internetowy Wikipedii wyjaśnij następujące pojęcia: wirtualizacja, VirtualBox, Vmware, KVM, Virtual PC, Hyper-V.
T: Wirtualizacja instalacji serwera Windows. Zadanie1. Wykorzystując serwis internetowy Wikipedii wyjaśnij następujące pojęcia: wirtualizacja, VirtualBox, Vmware, KVM, Virtual PC, Hyper-V. VirtualBox to
Sieciowa instalacja Sekafi 3 SQL
Sieciowa instalacja Sekafi 3 SQL Niniejsza instrukcja opisuje instalację Sekafi 3 SQL w wersji sieciowej, z zewnętrznym serwerem bazy danych. Jeśli wymagana jest praca jednostanowiskowa, należy postępować
Instalacja sieciowa Autodesk AutoCAD oraz wertykali
Instalacja sieciowa Autodesk AutoCAD oraz wertykali Łukasz Kuras Licencja sieciowa w przypadku produktów Autodesk rozdzielana jest za pomocą odpowiedniego oprogramowania zwanego Menedżerem licencji sieciowej.
Podręcznik użytkownika
Podręcznik użytkownika Moduł kliencki Kodak Asset Management Software Stan i ustawienia zasobów... 1 Menu Stan zasobów... 2 Menu Ustawienia zasobów... 3 Obsługa alertów... 7 Komunikaty zarządzania zasobami...