Automatyczne testowanie jądra Linuksa
|
|
- Michalina Piasecka
- 7 lat temu
- Przeglądów:
Transkrypt
1 Szymon Giżecki Chu Hong Hai Mateusz Kopeć Automatyczne testowanie jądra Linuksa Systemy Operacyjne Projekt studencki
2 Plan prezentacji...czyli o czym będziemy mówili: Metodologie testowania jądra Linuksa Testy poprawnościowe Testy wydajnościowe Mechanizmy testowania Fault Injection Zestawy testów Linux Test Project gcov i pokrycie kodu jądra testami Tracing Analiza procesu bootowania - Bootchart 2
3 Testy poprawnościowe Statyczna analiza kodu Przygotowanie testów Przeprowadzenie testów 3
4 Statyczna analiza kodu Idea: szukanie błędów przed budowaniem aplikacji Weryfikacja modelowa (model checking) Analiza przepływu danych (data-flow analysis) Abstract interpretation Asercje Semantyka Narzędzia: Sparse Cppcheck Coverity Prevent 4
5 Wybór zestawów testowych Obciążenie głównych zasobów Pokrycie dużej części kodu Automatyzacja Publikacja wyników 5
6 Ocena wykorzystania zasobów CPU Pamięć I/O Networking Narzędzia: top, sar i iostat (iostat -x 1) 6
7 Analiza pokrycia kodu jądra gcov lcov 7
8 Ocena końcowego testu Przed przeprowadzeniem testów: Uruchomienie wybranego zestawu na stabilnej wersji jądra Wykrycie konfliktów między testami Usunięcie Zbieranie statystyk narzędziem sar Punkt odniesienia dla przyszłych prawdziwych testów Bardzo ważne pytanie: skąd wziąć testy? Odpowiedź: LTP 8
9 Przeprowadzenie testu Za miarę stabilności i niezawodności systemu uznajemy jego czas ciągłego i bezawaryjnego działania. W związku z tym testy są uruchomione i działają bez przerwy przez długi okres czasu (30, 60, 90 dni). Przed testem właściwym często jest uruchomiony 24-godzinny test wstępny w celu sprawdzenia poprawności konfiguracji systemu. Podczas testowania odpowiednie narzędzia bez przerwy zbierają statystyki dotyczące systemu. Aby ustawić cykliczne zapisywanie danych statystycznych można używać narzędzia cron. 9
10 Testy wydajnościowe Co mierzymy Narzędzia 10
11 Co mierzymy Określenie miary np. ilość wysłanych wiadomości na sekundę Dobór odpowiednich benchmarków Tworzenie dokumentacji Wybór danych, które będą zbierane Zanim uruchomimy testy musimy odpowiednio dostosować sprzęt i oprogramowanie. 11
12 Narzędzia Wirtualny system plików /proc Lockmeter (SGI) Kernprof (SGI) Trace facility (IBM) sstat schedret acgparse 12
13 Narzędzia komercyjne 13
14 Mechanizmy testowania Fault Injection Czym jest mechanizm fault injection Rodzaje fault injection A jak to się robi w Unix'ie? Wparcie w Kernel u FERRARI A Flexible Software-Based Fault and Error Injection System 14
15 Linux Test Project Linus's Law (according to Eric S. Raymond) Given enough eyeballs, all bugs are shallow" Projekt założony w roku 2000 przez konsorcjum SGI (Silicon Graphics) Pierwszy zunifikowane podejście do testowania jądra linuxa Utrzymywany jako projekt OpenSource Na dzień dzisiejszy największy projekt testujący jądro 15
16 Linux Test Project Napisany głównie w C (~94.5%), pozostałe części Perl (~0.5%) oraz Shell (~5%) Ponad 3000 testów Kto i kiedy powinien używać Środowisko Zanim uruchomimy LTP 16
17 LTP rodzaje testów - Unit testing - Integration testing - System testing - Regression testing - Stress testing - Nie ma compilation ani performance 17
18 LTP zbiór testowanych właściwości Przejrzysta struktura LTP testuje: Zarządzanie pamięcią, Scheduler, Wątki jądra, System plików, LVM, EVMS, Kompresje, /proc, Zdalne polecenia, Sockets, NFS, NIS, IP/V6, Sieć (Ethernet i Wireless), FDDI, ATM, Napędy (CDROM, DVD, FDD, a nawet Tape), IDE, Sterowniki SCSI / RAID 18
19 LTP jak to działa? 19
20 LTP Zbieranie danych Podejścia do zbierania danych Podział ze względu na logikę i funkcjonalności. Łatwe do zdefiniowania relacje Drzewo Pół-automatyzacja Dane jako kod ASCII 20
21 LTP Processing danych Przetwarzanie danych Raw test data + coverage data + raw coverage data W wyniku dokument HTML, zawierający: Części kernela, na które test miał wpływ Części kernela z powiązanego podsystemu, na które test nie miał wpływu Częstotliwość i liczba uruchomionych linii kodu 21
22 LTP rozwój 1 LTP 2002 LTP Marzec
23 LTP rozwój 2 Przyrost pomiędzy grudniem 2007 a marcem
24 LTP Tworzenie własnych testów Napisane w C - macra TEST() i zmienne TEST_RETURN TEST_ERRNO Nie powinien wymagać żadnej pre-konfiguracji 24
25 LTP Tworzenie własnych testów Bardzo przydatna funkcja parse_opts #include "test.h" #include "usctest.h" char *parse_opts(int argc, char *argv[], option_t option_array[], void (*user_help_func)()); typedef struct { char *option; int *flag; char **arg; } option_t; 25
26 LTP Przykładowe wyjście 1 26
27 LTP Przykładowe wyjście 2 27
28 LTP co dalej? Dodanie wsparcia dla różnych języków Dodanie nowych obszarów, np. zarządzania mocą, KDUMP, kontrolerów Nowe techniki raportowania, np. XML Dodanie benchmarków Oczywiście rozwój testów, w szczególności duży nacisk kładziony na functional i regression testing. 28
29 Jeśli nie LTP, to: Linux Benchmark Suite Czego nie ma w LTP: Kernel Lockmetering Kernel Profiling UnixBench Wysokopoziomowy zbiór benchmarków integrujący testy CPU i I/O, oraz zachowanie systemu pod zróżnicowanym obciążeniem SPEC CPU2000 Benchmark testujący surowe CPU oraz kompilację 29
30 Jeśli nie LTP, to: HINT HINT ( (Hierarchical INTegration) Benchmark, używający świeżego podejścia QUIPS (QUality Improvement Per Second). HINT odzwierciedla zmiany prędkości działanie maszyny w miarę wzrastania uptime'u. Bardzo łatwo skalowalny i dostępny na wiele architektur 30
31 Jeśli nie LTP, to: HINT 31
32 GCOV i pokrycie kodu jądra testami Czym jest COV? Sprawdzenie stopnia przetestowania kodu White box testing Jedna z pierwszych technik Kryteria pokrycia: Pokrycie funkcji Pokrycie instrukcji (statement coverage) Pokrycie decyzji/rozgałęzień (decision/branch coverage) Pokrycie warunków (condition coverage) Pokrycie ścieżek (path coverage) Pokrycie wejścia/wyjścia (entry/exit coverage) 32
33 GCOV i pokrycie kodu jądra testami Istnieją zależności między kryteriami Niektóre aplikacje potrzebują 100% pokrycia Niemniej jednak, na ogół jest to niemożliwe Problemy z pełnym pokryciem: Duża ilość ścieżek Nieskończona ilość ścieżek Ścieżki niewykonywalne przy żadnym wejściu problem stopu Techniki radzenia sobie z tym: Grupowanie ścieżek w klasy 33
34 GCOV i pokrycie kodu jądra testami Pokrycie testami kodu jądra czemu tak potrzebne? Intensywne użycie zasobów nie zawsze implikuje intensywne użycie kodu jądra. Użyteczne narzędzia: gcov lcov Jak używamy? Sekwencyjnie! 34
35 GCOV i pokrycie kodu jądra testami gcov przykładowe wyjście 35
36 GCOV i pokrycie kodu jądra testami lcov przykładowe wyjście 36
37 GCOV i pokrycie kodu jądra testami lcov przykładowe wyjście (szczegółowe) 37
38 Tracing Czym jest tracing? Logging vs. tracing 38
39 Tracing Najważniejsze cechy narzędzia do trace'u: Zajrzenie w głąb działającego systemu Wyszukiwanie wąskich gardeł systemu Śledzenie wykonań procesów i środowiska, w którym się wykonują Tryb flight-recorder (coś jak czarna skrzynka samolotu) Możliwość zaglądania w przestrzeń użytkownika i jądra Przykładowe narzędzia: SystemTap Dtrace for Linux Kprobes LTTng i LLTV 39
40 Tracing SystemTap przykład 40
41 Przykładowe testy jądra - Bootchart Bootchart narzędzie do analizy procesu ładowania systemu operacyjnego Linux Powstał jako odpowiedź na wyzwanie postawione przez Owena Taylora: Wyzwaniem jest stworzenie aplikacji ukazującej na jednym rysunku, co dzieje się podczas bootowania systemu i wskazanie szans na optymalizację tego procesu, poprzez ukazanie jak bardzo rzeczywiste bootowanie odbiega od idealnego, w którym nieustannie występuje 100% zapotrzebowanie na procesor i dostęp do dysku. 41
42 Przykładowe testy jądra - Bootchart Jak to działa? Uruchamia /sbin/bootchartrd zamiast /sbin/init Bootchart od razu uruchamia /sbin/init, ale sam zaczyna zbierać statystyki do tymczasowego systemu plików (tmpfs) Skąd dane? /proc/stat /proc/diskstats /proc/[pid]/stat Warunek zakończenia działania pojawienie się jednego z wyróżnionych procesów Domyślne zbieranie statystyk co 0.2 sekundy Możliwość użycia process accounting 42
43 Przykładowe testy jądra - Bootchart Wizualizacja Za pomocą aplikacji java lub formularza na stronie internetowej Konieczność uproszczenia wykresu: Łączenie podobnych procesów w jedną grupę procesów Usuwanie krótko żyjących i bezczynnych procesów Graficzny sposób przedstawiania wyników (PNG, SVG, EPS) 43
44 Przykładowe testy jądra - Bootchart Przykład Fedora Core 3 44
45 Przykładowe testy jądra - Bootchart 45
46 Przykładowe testy jądra - Bootchart 46
47 Przykładowe testy jądra - Bootchart 47
48 Przykładowe testy jądra - Bootchart 48
49 Przykładowe testy jądra - LKP Linux Kernel Performance Project projekt mający na celu zwiększenie wydajności systemów Linux Częste testy wydajnościowe na tym samym sprzęcie różnych wersji jądra Linuxa Wydawałoby się, że każda kolejna wersja jądra powinna być lepsza od poprzedniej :) Spójrzmy zatem na przykładowe wyniki... 49
50 Przykładowe testy jądra VolanoMark 50
51 Przykładowe testy jądra Netperf tcp TCP-S-112k test strumienia TCP z 112KB socket buffers i wiadmościami 4KB TCP-S-64k test strumienia TCP z 64KB socket buffers i wiadmościami 4KB TCP-RR-1 test TCP Request/Response z 1 byte'owymi zapytaniami i odpowiedziami 51
52 Przykładowe testy jądra Netperf udp UDP-RR-1 test UDP Request/Response z 1 byte'owymi zapytaniami i odpowiedziami UDP-RR-516 test UDP Request/Response z 516 byte'owymi zapytaniami I 4 byte'owymi odpowiedziami UDP-U-4k test UDP Unidirectional z 64KB socket buffers i 4KB wiadomościami UDP-U-1k test UDP Unidirectional z 64KB socket buffers i 1KB wiadomościami 52
53 Przykładowe testy jądra Mmbench 53
54 Przykładowe testy jądra Fileio 54
55 Przykładowe testy jądra Iozone 50% obciążenie pamięci 55
56 Przykładowe testy jądra Iozone 120% obciążenie pamięci 56
57 Przykładowe testy jądra Tiobench różne operacje, algorytm cfq 57
58 Przykładowe testy jądra Tiobench różne operacje, algorytm noop 58
59 Przykładowe testy jądra Tiobench random read, różne algorytmy 59
Automatyczne testowanie jądra Linuksa notatki
Szymon Giżecki Chu Hong Hai Mateusz Kopeć Automatyczne testowanie jądra Linuksa notatki Metodologie przygotowywania i przeprowadzania testów poprawnościowych Statyczna analiza kodu Idea Zanim przejdziemy
Automatyczne testowanie jądra Linuksa
Automatyczne testowanie jądra Linuksa Krzysztof Skrzypczyński Marcin Mieteń Automatyzacja testów W kontekście testowania jądra linuxa tworzy się skrypty i programy sprawdzające działanie odpowiednich części
Testowanie Jądra Linuxa
Testowanie Jądra Linuxa "Given enough eyeballs, all bugs are shallow" Eric Raymond Tylko skąd wziąć te przyglądające się oczy? Michał Grabowski Piotr Szczepański Paweł Zuzelski W temacie: Wprowadzenie
Testowanie jądra Linuksa. Michał Pilipczuk Michał Świtakowski Piotr Wojnarowski
Testowanie jądra Linuksa Michał Pilipczuk Michał Świtakowski Piotr Wojnarowski Agenda Metodyka testów jądra Środowiska i narzędzia używane w praktyce Pokrycie kodu Prezentacja testów na żywo Kiedy Tux
GNU GProf i GCov. przygotował: Krzysztof Jurczuk Politechnika Białostocka Wydział Informatyki Katedra Oprogramowania ul. Wiejska 45A Białystok
GNU GProf i GCov przygotował: Krzysztof Jurczuk Politechnika Białostocka Wydział Informatyki Katedra Oprogramowania ul. Wiejska 45A 15-351 Białystok Streszczenie: Dokument zawiera podstawowe informacje
Testowanie oprogramowania. Piotr Ciskowski
Testowanie oprogramowania Piotr Ciskowski TESTOWANIE testowanie o proces eksperymentalnego badania programu lub jego komponentu o próbne wykonanie w znanych warunkach o rejestrowanie wyników o ocena właściwości
Testowanie oprogramowania. Testowanie oprogramowania 1/34
Testowanie oprogramowania Testowanie oprogramowania 1/34 Testowanie oprogramowania 2/34 Cele testowania testowanie polega na uruchamianiu oprogramowania w celu wykrycia błędów, dobry test to taki, który
Plan testów do Internetowego Serwisu Oferowania i Wyszukiwania Usług Transportowych
Plan testów do Internetowego Serwisu Oferowania i Wyszukiwania Usług Transportowych Michał Lewowski, Piotr Skowron, Michał Matczuk, Piotr Wygocki 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 3 1.1 Cel..........................................
Optymalizacja programów Open Source. Profilery wysokiego poziomu część 2. Krzysztof Lichota
Optymalizacja programów Open Source Profilery wysokiego poziomu część 2 Krzysztof Lichota lichota@mimuw.edu.pl gprof gprof Pomiar działa na zasadzie instrumentacji kompilowanego kodu (wejścia i wyjścia
System komputerowy. System komputerowy
System komputerowy System komputerowy System komputerowy układ współdziałających ze sobą (według pewnych zasad) dwóch składowych: sprzętu komputerowego (hardware) oraz oprogramowania (software) po to,
Instalacja SQL Server Express. Logowanie na stronie Microsoftu
Instalacja SQL Server Express Logowanie na stronie Microsoftu Wybór wersji do pobrania Pobieranie startuje, przechodzimy do strony z poradami. Wypakowujemy pobrany plik. Otwiera się okno instalacji. Wybieramy
Strojenie systemu Linux pod k¹tem serwera bazy danych Oracle 9i
VI Seminarium PLOUG Warszawa Styczeñ 2003 Strojenie systemu Linux pod k¹tem serwera bazy danych Oracle 9i Marcin Przepiórowski Strojenie systemu Linux pod kątem serwera bazy danych Oracle 9i 7 1. Wstęp
IO - Plan testów. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006
IO - Plan testów M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak 5 czerwca 2006 1 SPIS TREŚCI 2 Spis treści 1 Historia zmian 3 2 Zakres testów 3 2.1 Integration testing - Testy spójnosci.............. 3 2.2
Testowanie według modelu (MBT) Stowarzyszenie Inżynierii Wymagań wymagania.org.pl
Testowanie według modelu (MBT) Bogdan Bereza, Victo MBT testowanie z modelu wersja 2.1 A 1 (48) Pozdrawiam Best regards Med vänliga hälsningar Bogdan Bereza bogdan.bereza@victo.eu +48 519 152 106 Skype:
Systemy operacyjne III
Systemy operacyjne III Jan Kazimirski 1 Opis zajęć Prezentacja budowy i zasad działania współczesnego systemu operacyjnego Prezentacja podstawowych elementów systemów operacyjnych i zasad ich implementacji
Piotr Dwieczkowski. Code coverage. Mierzenie pokrycia kodu, teoria oraz praktyka w C/C++
Piotr Dwieczkowski Code coverage Mierzenie pokrycia kodu, teoria oraz praktyka w C/C++ Plan Co to jest pokrycie kodu? Możliwe sposoby wykorzystania Rodzaje statystyk Wady i zalety mierzenia porycia kodu
Automatyzacja testowania oprogramowania. Automatyzacja testowania oprogramowania 1/36
Automatyzacja testowania oprogramowania Automatyzacja testowania oprogramowania 1/36 Automatyzacja testowania oprogramowania 2/36 Potrzeba szybkich rozwiązań Testowanie oprogramowania powinno być: efektywne
Szkolenie: Testowanie wydajności (Performance Testing)
Szkolenie: Testowanie wydajności (Performance Testing) Testy niefunkcjonalne aplikacji to nieodłączna część pracy dobrego testera. Do tego typu testów zaliczamy między innymi taką właściwość systemu jak
WYKŁAD 3 Jądro systemu i procesy. Marcin Tomana Wyższa Szkoła Informatyki i Zarządzania
SYSTEMY OPERACYJNE WYKŁAD 3 Jądro systemu i procesy Marcin Tomana Wyższa Szkoła Informatyki i Zarządzania Program wykładu 2 Jądro systemu Możliwości procesorów Działanie procesów i wątków Zarządzanie procesami
Monitorowanie wydajność w bazie Oracle11g
Monitorowanie wydajność w bazie Oracle11g Wstęp Monitorowanie wydajności bazy danych, a także aplikowanie aktualizacji to jedne z ważniejszych zadań administratora bazy danych. Wpływ na wydajność może
Wydajny Linux. Jakub Woźniak KN Sieci Komputerowych i Systemów Rozproszonych Tenesys
Wydajny Linux Jakub Woźniak KN Sieci Komputerowych i Systemów Rozproszonych Tenesys Po co analizować wydajność? redukcja kosztów, poznanie limitów systemu operacyjnego, eliminacja wąskich gardeł. Jak system
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
Testowanie oprogramowania w środowisku IBM Rational Software Architect
Testowanie oprogramowania w środowisku IBM Rational Software Architect Software Development 2008 Michał Wolski m.wolski@modesto.pl szkolenia: inżynierii oprogramowania zarządzania projektami usługi doradcze
Analizator wydajności AMD CodeAnalyst
Analizator wydajności AMD CodeAnalyst Dostępny bezpłatnie dla Windows i Linux (różne funkcjonalności w obu systemach) Pozwala na 4 tryby pracy - profilowania: Bazujące na upływie czasu próbkowanie aplikacji
Wstęp do testowania : Szymon Ramczykowski 29.04.2014
Wstęp do testowania Presented by: Szymon Ramczykowski Date: 29.04.2014 Kainos 10-Jun-14 Gdzie jesteśmy Co robimy Branże Technologie Kainos w Gdańsku Ponad 100 osób zatrudnionych Wiele ciekawych projektów
Prezentacja systemu RTLinux
Prezentacja systemu RTLinux Podstawowe założenia RTLinux jest system o twardych ograniczeniach czasowych (hard real-time). Inspiracją dla twórców RTLinux a była architektura systemu MERT. W zamierzeniach
Konsolidacja i wirtualizacja na platformie IBM Power: najlepszą metodą obniżenia kosztów IT
Konsolidacja i wirtualizacja na platformie IBM Power: najlepszą metodą obniżenia kosztów IT Łukasz Turek Client Technical Specialist, Power Systems Lukasz.Turek@pl.ibm.com +48 723 70 3438 Agenda Nowości
Praca dyplomowa. Program do monitorowania i diagnostyki działania sieci CAN. Temat pracy: Temat Gdańsk Autor: Łukasz Olejarz
Temat Gdańsk 30.06.2006 1 Praca dyplomowa Temat pracy: Program do monitorowania i diagnostyki działania sieci CAN. Autor: Łukasz Olejarz Opiekun: dr inż. M. Porzeziński Recenzent: dr inż. J. Zawalich Gdańsk
Acceptance Test Driven Development wspierane przez narzędzie ROBOT Framework. Edyta Tomalik Grzegorz Ziemiecki
Acceptance Test Driven Development wspierane przez narzędzie ROBOT Framework Edyta Tomalik Grzegorz Ziemiecki 1 Nokia Siemens Networks 2013 Tradycyjne podejście analityk programista tester implementacja
Testing hardware Paweł Noga 18.11.2015
Testing hardware Paweł Noga 18.11.2015 Agenda Wstęp co testujemy? Współpraca z klientem zapewnijcie mi jakość Laboratorium testów Case study mierzenie transferów sieciowych Ciekawe błędy i problemy Wnioski
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
Spis treści. Wstęp... 10
Spis treści Wstęp... 10 1. Yocto... 25 1.1. Podstawowe komponenty... 26 1.2. Metadane... 26 1.3. Przygotowanie systemu... 28 1.4. Rozpoczęcie pracy z Yocto... 29 1.4.1. Konfiguracja GIT... 29 1.4.2. fsl-community-bsp-platform...
Technologia informacyjna. Urządzenia techniki komputerowej
Technologia informacyjna Urządzenia techniki komputerowej System komputerowy = hardware (sprzęt) + software (oprogramowanie) Sprzęt komputerowy (ang. hardware) zasoby o specyficznej strukturze i organizacji
Biorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:
Egzaminy na plus Stres na minus! Zdawaj bezpłatne egzaminy Microsoft, Linux, C++ z nami i zadbaj o swoją karierę. Oferujemy Ci pierwsze certyfikaty zawodowe w Twojej przyszłej karierze, które idealnie
Parametry wydajnościowe systemów internetowych. Tomasz Rak, KIA
Parametry wydajnościowe systemów internetowych Tomasz Rak, KIA 1 Agenda ISIROSO System internetowy (rodzaje badań, konstrukcja) Parametry wydajnościowe Testy środowiska eksperymentalnego Podsumowanie i
Systemy operacyjne i sieci komputerowe Szymon Wilk System operacyjny 1
i sieci komputerowe Szymon Wilk System operacyjny 1 1. System operacyjny (ang. OS Operating System) to oprogramowanie nadzorujące pracę komputera. Programy, które uruchamia użytkownik na komputerze z systemem
2009-03-21. Paweł Skrobanek. C-3, pok. 321 e-mail: pawel.skrobanek@pwr.wroc.pl pawel.skrobanek.staff.iiar.pwr.wroc.pl
Wrocław 2007-09 SYSTEMY OPERACYJNE WPROWADZENIE Paweł Skrobanek C-3, pok. 321 e-mail: pawel.skrobanek@pwr.wroc.pl pawel.skrobanek.staff.iiar.pwr.wroc.pl 1 PLAN: 1. Komputer (przypomnienie) 2. System operacyjny
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
Testowanie jądra Linuxa
Testowanie jądra Linuxa... czyli czegoś, co nigdy nie miało być testowane. Given enough eyeballs, all bugs are shallow Linus Law, wg Eric'a S. Raymond'a Marita Nowotka, Marek Marczykowski, Filip Wolski,
Win Admin Replikator Instrukcja Obsługi
Win Admin Replikator Instrukcja Obsługi Monitoring Kopie danych (backup) E-mail Harmonogram lokalne i zewnętrzne repozytorium Logi Pamięć Procesor HDD Administracja sprzętem i oprogramowaniem (automatyzacja
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE WINDOWS 1 SO i SK/WIN 007 Tryb rzeczywisty i chroniony procesora 2 SO i SK/WIN Wszystkie 32-bitowe procesory (386 i nowsze) mogą pracować w kilku trybach. Tryby pracy
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
Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1
Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1 Metodologia programowania równoległego Przykłady podziałów zadania na podzadania: Podział ze względu na funkcje (functional
<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0>
Wersja [Uwaga: Niniejszy wzór dostarczony jest w celu użytkowania z Unified Process for EDUcation. Tekst zawarty w nawiasach kwadratowych i napisany błękitną kursywą
Elastyczna sieć dla rozwiązań Cloud Open vswitch
Elastyczna sieć dla rozwiązań Cloud Open vswitch Dariusz Puchalak 19+ lat Linux/Unix Sysadmin 7+ lat trener 6+ m-cy w OSEC OSEC 6+ lat na rynku doświadczona kadra (ACNI, RHCA) specjalizacja open-source
Testy automatyczne. Korzystające z junit
Testy automatyczne Korzystające z junit Cytaty Kiedy zawiesza się program konkurencji, to jest awaria. Kiedy zawiesza się własny program, to jest drobiazg. Często po awarii pojawia się komunikat typu ID
Tester oprogramowania 2014/15 Tematy prac dyplomowych
Tester oprogramowania 2014/15 Tematy prac dyplomowych 1. Projekt i wykonanie automatycznych testów funkcjonalnych wg filozofii BDD za pomocą dowolnego narzędzia Jak w praktyce stosować Behaviour Driven
Wykaz zmian w programie WinAdmin Replikator
Wykaz zmian w programie WinAdmin Replikator Pierwsza wersja programu 1.0.0.1 powstała w czerwcu 2010. kod źródłowy programu zawiera ponad 6 900 wierszy. Modyfikacje/zmiany w wersji 1.0.4.0 (październik
Systemy operacyjne. System operacyjny Linux - wstęp. Anna Wojak
Systemy operacyjne System operacyjny Linux - wstęp Anna Wojak 1 1 Wstęp Linux jest systemem z rodziny Unix. Pierwsza wersja systemu została opracowana w 1969 roku przez K.Thompsona i D.Ritchie Jest to
Całościowe podejście do testowania automatycznego dla programistów. (TDD, BDD, Spec. by Example, wzorce, narzędzia)
Program szkolenia: Całościowe podejście do testowania automatycznego dla programistów Ruby (TDD, BDD, Spec. by Example, wzorce, narzędzia) Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania:
Systemy operacyjne II
Systemy operacyjne II Wojciech Kwedlo Wydział Informatyki PB, p. 205 wkwedlo@ii.pb.bialystok.pl aragorn.pb.bialystok.pl/~wkwedlo Pracownia specjalistyczna: Wojciech Kwedlo Krzysztof Bandurski Wojciech
INŻYNIERIA OPROGRAMOWANIA TESTOWANIE SYSTEMOWE
INŻYNIERIA OPROGRAMOWANIA TESTOWANIE SYSTEMOWE Ważne pojęcia (I) Warunek testowy (test condition) to element lub zdarzenie modułu lub systemu, który może być zweryfikowany przez jeden lub więcej przypadków
CONFidence 13/05/2006. Jarosław Sajko, PCSS Jaroslaw.sajko@man.poznan.pl
IPTables Hacking CONFidence 13/05/2006 Jarosław Sajko, PCSS Jaroslaw.sajko@man.poznan.pl 1 Zamiast planu 2 ZB PCSS Praca operacyjna w ramach ogólnopolskiej szerokopasmowej sieci PIONIER oraz zasobów Centrum
IO - Plan wdrożenia. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006
IO - Plan wdrożenia M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 3 1.1 Cel.......................................... 3 1.2 Zakres........................................
Win Admin Replikator Instrukcja Obsługi
Win Admin Replikator Instrukcja Obsługi Monitoring Kopie danych (backup) E-mail Harmonogram lokalne i zewnętrzne repozytorium Logi Pamięć Procesor HDD Administracja sprzętem i oprogramowaniem (automatyzacja
Dział Dopuszczający Dostateczny Dobry Bardzo dobry Celujący
Przedmiotowy system oceniania Zawód: Technik Informatyk Nr programu: 312[ 01] /T,SP/MENiS/ 2004.06.14 Przedmiot: Systemy Operacyjne i Sieci Komputerowe Klasa: pierwsza Dział Dopuszczający Dostateczny Dobry
BIOS i BIOS SETUP. Wykład multimedialny Urządzenia techniki komputerowej
BIOS i BIOS SETUP Wykład multimedialny Urządzenia techniki komputerowej 1 BIOS - definicja BIOS (ang. Basic Input/Output System - podstawowy system wejścia-wyjścia) to zapisany w pamięci stałej, inny dla
Plan testów. Robert Dyczkowski, Piotr Findeisen, Filip Grzdkowski. 4 czerwca 2006
Robert Dyczkowski, Piotr Findeisen, Filip Grzdkowski 4 czerwca 2006 1 Spis treści 1 Wprowadzenie 3 1.1 Cel dokumentu................................... 3 1.2 Oczekiwania....................................
Automatyczne generowanie testów z modeli. Bogdan Bereza Automatyczne generowanie testów z modeli
Automatyczne generowanie testów z modeli Numer: 1 (33) Rozkmina: Projektowanie testów na podstawie modeli (potem można je wykonywać ręcznie, lub automatycznie zwykle chce się automatycznie) A ja mówię
Załącznik 1 instrukcje instalacji
Załącznik 1 instrukcje instalacji W poniższym załączniku przedstawione zostaną instrukcje instalacji programów wykorzystanych w trakcie tworzenia aplikacji. Poniższa lista przedstawia spis zamieszczonych
Jak patrzymy na testy czyli Jak punkt widzenia zależy od punktu siedzenia. Click Piotr Kałuski to edit Master subtitle style
Jak patrzymy na testy czyli Jak punkt widzenia zależy od punktu siedzenia Click Piotr Kałuski to edit Master subtitle style Punkty widzenia Zespół Testów Manager Projektu Użytkownik końcowy Zespół Testów
Jak efektywnie wykrywać podatności bezpieczeństwa w aplikacjach? OWASP 19.11.2014. The OWASP Foundation http://www.owasp.org
Jak efektywnie wykrywać podatności bezpieczeństwa w aplikacjach? dr inż. Jakub Botwicz CISSP, ECSA, GWAPT 19.11.2014 jakub.botwicz@gmail.com Copyright The Foundation Permission is granted to copy, distribute
Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne
Jarosław Kuchta Internetowe Usługi Informacyjne Komponenty IIS HTTP.SYS serwer HTTP zarządzanie połączeniami TCP/IP buforowanie odpowiedzi obsługa QoS (Quality of Service) obsługa plików dziennika IIS
System zarządzający grami programistycznymi Meridius
System zarządzający grami programistycznymi Meridius Instytut Informatyki, Uniwersytet Wrocławski 20 września 2011 Promotor: prof. Krzysztof Loryś Gry komputerowe a programistyczne Gry komputerowe Z punktu
Raport Hurtownie Danych
Raport Hurtownie Danych Algorytm Apriori na indeksie bitmapowym oraz OpenCL Mikołaj Dobski, Mateusz Jarus, Piotr Jessa, Jarosław Szymczak Cel projektu: Implementacja algorytmu Apriori oraz jego optymalizacja.
1. Podstawy...P Polecenia podstawowe...p... 18
Spis treści Wstęp...P... 5 1. Podstawy...P... 7 Wersje systemu MS-DOS 8 Windows NT: konsola czy DOS? 9 Jak uruchomić system MS-DOS 10 Szybkie uruchamianie 13 Okno a pełny ekran 14 Windows 2000/XP a pełnoekranowe
SYSTEMY OPERACYJNE. kik.pcz.czest.pl/so. (C) KIK PCz 2009. Materiały pomocnicze 1 PROWADZI: PODSTAWOWA LITERATURA: ZAJĘCIA: STRONA
SYSTEMY OPERACYJNE PROWADZI: dr inż. Jarosław Bilski Katedra Inżynierii Komputerowej Politechnika Częstochowska Wykład dla kierunku Informatyka 2 ZAJĘCIA: Obowiązkowe Wykład Laboratorium 2 godziny tygodniowo
Uniwersytet Mikołaja Kopernika w Toruniu. Profilowanie ruchu sieciowego w systemie GNU/Linux
Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki Wydział Fizyki, Astronomii i Informatyki Stosowanej Michał Ferliński Nr albumu: 187386 Praca magisterska na kierunku Informatyka
Warstwy systemu Windows 2000
Warstwy systemu Windows 2000 Tryb użytkownika (User Mode) Tryb jądra (Kernel Mode) Tryb użytkownika (User Mode) Zarządzanie pamięcią wirtualną Cechy charakterystyczne systemu Windows XP: system bardzo
Inżynieria oprogramowania- Grupa dra inż. Leszka Grocholskiego II UWr 2009/2010. Aleksandra Kloc, Adam Grycner, Mateusz Łyczek. Wasza-fota.
Inżynieria oprogramowania- Grupa dra inż. Leszka Grocholskiego II UWr 2009/2010 Aleksandra Kloc, Adam Grycner, Mateusz Łyczek Wasza-fota.pl Projekt struktury systemu Historia zmian tego dokumentu Data
Program szkolenia: Continuous Integration i Git
Program szkolenia: Continuous Integration i Git Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Continuous Integration i Git tools-git-ci Narzędzia developerzy testerzy 2 dni 50%
Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Linux.
Kod szkolenia: Tytuł szkolenia: PS/LINUX Programowanie systemowe w Linux Dni: 5 Opis: Adresaci szkolenia Szkolenie adresowane jest do programistów tworzących aplikacje w systemie Linux, którzy chcą poznać
SYSTEMY CZASU RZECZYWISTEGO STEROWNIK WIND. Dokumentacja projektu. Danilo Lakovic. Joanna Duda. Piotr Leżoń. Mateusz Pytel
SYSTEMY CZASU RZECZYWISTEGO STEROWNIK WIND Dokumentacja projektu Danilo Lakovic Joanna Duda Piotr Leżoń Mateusz Pytel 1. Wstęp 1.1. Cel dokumentu Poniższy dokument ma na celu przybliżenie użytkownikowi
Testowanie. Ryszard Beczek & Piotr Miłkowski 1 04/11/07
Testowanie Ryszard Beczek & Piotr Miłkowski 1 O czym to będzie? Trzy słowa o testowaniu TDD JUnit TestNG JMeter Yawet Squish/Java 2 Jak testujemy? Zwykle aplikacje testujemy ręcznie Testy przeprowadzamy
Marek Parfieniuk, Tomasz Łukaszuk, Tomasz Grześ. Symulator zawodnej sieci IP do badania aplikacji multimedialnych i peer-to-peer
Marek Parfieniuk, Tomasz Łukaszuk, Tomasz Grześ Symulator zawodnej sieci IP do badania aplikacji multimedialnych i peer-to-peer Plan prezentacji 1. Cel projektu 2. Cechy systemu 3. Budowa systemu: Agent
Programowanie w Ruby
Programowanie w Ruby Wykład 13 Marcin Młotkowski 16 stycznia 2013 Plan wykładu Testowanie aplikacji w Ruby on Rails Testowanie modeli Testy funkcjonalne: testowanie kontrolerów Testy integracyjne Testowanie
Programowanie obiektowe
Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć
Administracja i programowanie pod Microsoft SQL Server 2000
Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 9 Optymalizacja zapytań Pobieranie planu wykonania Indeksy i wydajność - 1 - Zadania optymalizatora
SYSTEMY OPERACYJNE SYLABUS A. Informacje ogólne
SYSTEMY OPERACYJNE SYLABUS A. Informacje ogólne Elementy składowe sylabusu Nazwa jednostki prowadzącej kierunek Nazwa kierunku studiów Poziom kształcenia Profil studiów Forma studiów Rodzaj przedmiotu
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ą
Działanie systemu operacyjnego
Działanie systemu operacyjnego Budowa systemu komputerowego Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej Pamięć
ANGULARJS TWORZENIE APLIKACJI INTERNETOWYCH
ANGULARJS TWORZENIE APLIKACJI INTERNETOWYCH szkolenie dla webdeveloperów ze znajomością przynajmniej podstaw HTML i JavaScript INFORMACJE PODSTAWOWE AngularJS to framework JavaScript stworzony przez inżynierów
Analiza ilościowa w przetwarzaniu równoległym
Komputery i Systemy Równoległe Jędrzej Ułasiewicz 1 Analiza ilościowa w przetwarzaniu równoległym 10. Analiza ilościowa w przetwarzaniu równoległym...2 10.1 Kryteria efektywności przetwarzania równoległego...2
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
Optymalizacja Automatycznych Testów Regresywnych
Optymalizacja Automatycznych Testów Regresywnych W Organizacji Transformującej do Agile Adam Marciszewski adam.marciszewski@tieto.com Agenda Kontekst projektu Typowe podejście Wyzwania Cel Założenia Opis
Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, 15.10.2012 r.
Załącznik nr 1. Specyfikacja techniczna portalu internetowego Łódź, 15.10.2012 r. Stworzenie platformy internetowej na potrzeby projektu. 1 Wykonanie portalu internetowego na potrzeby e-usługi, obejmującego
Overlord - Plan testów
Overlord - Plan testów Jakub Gołębiowski Adam Kawa Piotr Krewski Tomasz Weksej 5 czerwca 2006 Spis treści 1 Wprowadzenie 2 1.1 Cel tego dokumentu................................. 2 1.2 Cele systemu testów................................
Opracował: Jan Front
Opracował: Jan Front Sterownik PLC PLC (Programowalny Sterownik Logiczny) (ang. Programmable Logic Controller) mikroprocesorowe urządzenie sterujące układami automatyki. PLC wykonuje w sposób cykliczny
Opis Przedmiotu Zamówienia na przeprowadzenie testów bezpieczeństwa systemu wspomagania nadzoru archiwalnego e-nadzór
S t r o n a ǀ 1 z 5 Załącznik nr 1 do zapytania ofertowego Opis Przedmiotu Zamówienia na przeprowadzenie testów bezpieczeństwa systemu wspomagania nadzoru archiwalnego e-nadzór I. Definicje. 1. Dostawca
Systemy operacyjne oparte na mikrojądrze na przykładzie Minix3. Maciej Łaszcz, Wojciech Łowiec, Patryk Spanily 2 XII 2008
Systemy operacyjne oparte na mikrojądrze na przykładzie Minix3. Maciej Łaszcz, Wojciech Łowiec, Patryk Spanily 2 XII 2008 Systemy oparte na mikrojądrze Jądro systemu jest bardzo małe Architektura mocno
Programowanie procesorów graficznych NVIDIA (rdzenie CUDA) Wykład nr 1
Programowanie procesorów graficznych NVIDIA (rdzenie CUDA) Wykład nr 1 Wprowadzenie Procesory graficzne GPU (Graphics Processing Units) stosowane są w kartach graficznych do przetwarzania grafiki komputerowej
Nowe spojrzenie na systemy monitoringu i sterowania sieciami ciepłowniczymi
Nowe spojrzenie na systemy monitoringu i sterowania sieciami ciepłowniczymi Leszek Jabłoński Cele optymalizacja pracy sieci ciepłowniczej zwiększenie efektywności energetycznej większe bezpieczeństwo dostaw
VMware vsphere: Automation Fast Track
Kod szkolenia: Tytuł szkolenia: HK989S VMware vsphere: Automation Fast Track Dni: 5 Opis: Adresaci szkolenia Kurs jest przeznaczony dla: Cel szkolenia Administratorów systemowych Inżynierów systemowych
MESco. Testy skalowalności obliczeń mechanicznych w oparciu o licencje HPC oraz kartę GPU nvidia Tesla c2075. Stanisław Wowra
MESco Testy skalowalności obliczeń mechanicznych w oparciu o licencje HPC oraz kartę GPU nvidia Tesla c2075 Stanisław Wowra swowra@mesco.com.pl Lider w dziedzinie symulacji na rynku od 1994 roku. MESco
Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.
GRZEGORZ FURDYNA Krótka Historia Co to jest NetBeans? Historia Wersje NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły NetBeans Profiler Narzędzie do projektowania GUI Edytor NetBeans
SYSTEM OPERACYJNY. Monika Słomian
SYSTEM OPERACYJNY Monika Słomian CEL znam podstawowe zadania systemu operacyjnego porządkuję pliki i foldery KRYTERIA rozumiem zadania systemu operacyjnego potrafię wymienić przykładowe systemy operacyjne
Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki. Paweł Parys. Nr albumu: 209216. Aukcjomat
Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki Paweł Parys Nr albumu: 209216 Aukcjomat Praca licencjacka na kierunku INFORMATYKA w zakresie INFORMATYKA Praca wykonana pod kierunkiem
Java jako język programowania
Java jako język programowania Interpretowany programy wykonują się na wirtualnej maszynie (JVM Java Virtual Machine) Składnia oparta o język C++ W pełni zorientowany obiektowo (wszystko jest obiektem)
Podstawowe protokoły transportowe stosowane w sieciach IP cz.2
Laboratorium Technologie Sieciowe Podstawowe protokoły transportowe stosowane w sieciach IP cz.2 Wprowadzenie Ćwiczenie przedstawia praktyczną stronę następujących zagadnień: połączeniowy i bezpołączeniowy
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