Porównanie Meltdown i Spectre
|
|
- Łucja Lis
- 6 lat temu
- Przeglądów:
Transkrypt
1 Meltdown Moritz Lipp, Michael Schwarz, Daniel Gruss, Thomas Prescher, Werner Haas, Stefan Mangard, Paul Kocher, Daniel Genkin, Yuval Yarom, Mike Hamburg
2 Wstęp Meltdown i Spectre to rodzina zbliżonych do siebie ataków wykorzystujących mechanizmy spekulatywnego wykonania kodu obecne w nowoczesnych procesorach. Dzięki tym mechanizmom możliwy jest wyciek wrażliwych danych z pamięci RAM komputera. Prace opisujące te ataki zostały opublikowane na przełomie 2017 i 2018 roku. Składy zespołów pracujących nad tymi pracami w dużej mierze pokrywają się.
3 Porównanie Meltdown i Spectre Meltdown Spectre Podatne procesory Intel, od 2010 roku Intel, AMD, ARM Szybkość wycieku 503 KB/s 10 KB/s Błąd przy odczytywaniu danych 0,02% - 0,03% NA Obrazek
4 Jak działa procesor Instrukcje są dekodowane Poszczególne instrukcje są zamieniane na mikrooperacje Mikrooperacje są wstawiane do kolejki Kolejność mikrooperacji jest optymalizowana z zachowaniem zależności Scheduler wrzuca instrukcje do poszczególnych jednostek wykonawczych Kiedy wszystkie mikroinstrukcje składające się na polecenie asemblera się wykonają, ich efekt jest aplikowany do stanu procesora
5
6 Przykład Ciąg instrukcji MOV RCX, [adres] ADD RCX, 123 MOV RAX, [RCX] może być zdekodowany i wykonany w taki sposób: Jeżeli pierwszy MOV odwołuje się do niedostępnej lokacji pamięci, to przerwanie zostanie wywołane dopiero po wykonaniu ostatniej mikroinstrukcji. Efekty kolejnych instrukcji zostaną anulowane.
7
8 Przewidywanie skoków MOV AL, byte [RCX] SHL RAX, 0xC JMP [RAX] Branch Target Buffer - na podstawie adresu instrukcji przewiduje miejsce skoku (może to zrobić nawet przed zdekodowaniem instrukcji!).
9 Przesyłanie danych przez cache procesora Założenia: mamy sobie dwa wątki A i B, które nie mogą się ze sobą komunikować (np. poprzez mechanizmy IPC). A i B mają wspólną tablicę stron, strony są w trybie tylko do odczytu. Na początku wykonuje się B, które może jednorazowo przekazać sterowanie do A (nie mamy mechanizmów synchronizujących). Problem: A chce przesłać do B 1 bit informacji. Rozwiązanie: 1. B czyści cache procesora instrukcją clflush i oddaje sterowanie do A 2. A odczytuje coś z adresu adres * i, gdzie adres jest ustalony i znany wątkowi B, zaś i jest bitem informacji którą A chce przesłać. 3. B mierzy czas dostępu do wcześniej ustalonego adresu. Jeżeli i = 0, to ta strona pamięci była odczytana przez proces A i jej zawartość znajduje się w cache, więc czas dostępu jest stosunkowo krótki (ok. 200 cykli procesora). W p. p. czas dostępu wynosi cykli.
10
11 Esencja dziury Meltdown MOV RAX, [adres_kernela] MOV ECX, [adres_w_userspace + RAX * 4096] Zanim procesor wykona wszystkie mikrooperacje składające się na pierwszą instrukcję i rzuci wyjątek, prawdopodobnie wykona część drugiej instrukcji i zostawi ślad w cache. Po rzuceniu wyjątku procesor nie usunie tego śladu. Taki ślad może potem zostać odczytany przez atakującego.
12 Szablon ataku 1. Załaduj do rejestru adres pamięci wirtualnej, który chcesz odczytać (np. adres w kernelu) 2. Wyczyść cache procesora, np. instrukcją clflush 3. Zrób forka na procesy A i B 4. Proces A czeka na zakończenie procesu B 5. Proces B wykonuje ten kawałek kodu: MOV AL, byte [RCX] SHL RAX, 0xC ; RAX * 4096 MOV RBX, qword [baza + RAX] 6. Proces B zostaje ubity, ale z dużym prawdopodobieństwem w cache jest strona o adresie baza + RAX 7. Proces A iteruje po wszystkich stronach które mógł dotknąć proces B i mierzy czas dostępu, i odczytuje w ten sposób zawartość pamięci
13 Czasem odczyt nie wychodzi Czasem sprawdzenie uprawnień do strony następuje przed pobraniem informacji z pamięci. Wówczas w rejestrze zamiast wyniku znajduje się wartość 0. Rozwiązujemy ten problem przez powtarzanie odczytu aż do uzyskania niezerowej wartości: retry: MOV AL, byte [RCX] SHL RAX, 0xC JZ retry MOV RBX, qword [RBX + RAX] Jeżeli w cache nie ma żadnej informacji, to uznajemy że przesłano wartość 0. Oczywiście to założenie może prowadzić do błędów. Błąd powstały z tego powodu wynosi ok. 0,03%
14 Przepustowość wycieku można zwiększyć W powyższych przykładach korzystamy z dość wolnego wywołania fork, by zapobiec ubiciu procesu kradnącego dane. Zamiast tego można: dodać swój handler do obsługi SEGFAULTa wykorzystać rozszerzenie procesora TSX (transakcyjna pamięć) do zamaskowania wyjątku (dostępne od linii procesorów Broadwell) wykorzystać branch predictor i strażnika w postaci instrukcji skoku warunkowego do zamaskowania wyjątku
15 Skutki ataku Odczyt z dowolnego adresu podmapowanego w pamięci wirtualnej, niezależnie od uprawnień atakującego. Linux i Windows mapują przestrzeń adresową kernela do tablicy stron procesu. W przypadku kernela Linux, cała pamięć fizyczna jest domyślnie mapowana pod adresem 0xffff Przy włączonym KASLR wystarczy sprawdzić ok lokacji w pamięci by odkryć adres bazowy mapowania. W systemie Windows znaczne fragmenty pamięci fizycznej są mapowane do tablicy stron kernela Niektóre kontenery np. Docker, LXC, OpenVZ współdzielą pamięć kernela (w Linuxie przy pomocy mechanizmu przestrzeni nazw). Wniosek: atakujący ma dostęp do pamięci kernela, pamięci fizycznej, danych innych programów i kontenerów uruchomionych u dostawców chmurowych i współdzielonych hostingów.
16 Testy Sprzęt: procesory Intela Celeron G540, Core i5-3230m, Core i5-3320m, Core i7-4790, Core i5-6200u, Core i7-6600u, Core i7-6700k (środowisko laboratoryjne), Xeon E v3, Xeon E v4 (w chmurze). Scenariusze testowe: Zrzut pamięci z Firefoxa 56 na Ubuntu Odczytano m. in. zapisane hasła i adres otwartej strony Udany atak na kernelach od do (bez KASLR) KAISER / KPTI skutecznie zapobiega atakom Udany atak na Windows 10 Udane ataki z wnętrza kontenerów Docker, LXC i OpenVZ, pozwalające na odczytanie danych z kontenerów należących do innych użytkowników. Atak przeprowadzony na serwerach dostawców chmurowych Nie udało się odtworzyć błędu na procesorach AMD i ARM, ale wg. autorów może to być możliwe.
17 Testy wydajnościowe Testy wydajnościowe przeprowadzono na procesorze Intel Core i7-6700k. Polegał on na przeczytaniu 12 MB pamięci kernela. Średnia prędkość odczytu Błąd Sposób obsługi wyjątków 503 KB/s 0,02% TSX 123 KB/s 0,03% Przechwytywanie sygnału
18 KPTI - ochrona przed Meltdown w Linuksie Pomysł polega na stworzeniu dwóch osobnych tablic stron, po jednej dla kernela i procesu użytkownika, oraz ich zmienianie przy zmianie kontekstu. W praktyce wystarczy tylko trzymać osobno tablice najwyższego poziomu (Page Global Directory), wpisy na niższych poziomach mogą być współdzielone. W przestrzeni procesu trzeba trzymać drobne fragmenty kernela: obsługę pułapek, niemaskowalnych przerwań, wywołań systemowych i zmiany PGD. Szacuje się, że po aktywowaniu KPTI system działa średnio o ok. 5% wolniej, w niektórych przypadkach aż o 30%. KPTI jest dostępne od jądra 4.15, jest on też dostępny w niektórych starszych jądrach.
19 Ochrona sprzętowa Główną przyczyną podatności Meltdown jest niedostatecznie szybka weryfikacja uprawnień dostępu do strony przez procesor. Autorzy pracy zaproponowali, by przy pomocy specjalnego rejestru, np. CR4 włączać dodatkową ochronę pamięci. Ochrona ta by sprawiała, że niezależnie od wpisów w tablicy stron górna połowa przestrzeni adresowej byłaby dostępna tylko z poziomu Ring 0 (czyli kontekstu kernela).
20 Spectre Po wprowadzeniu KPTI i podobnych, atak Meltdown nie działa. Problemem jest to, że proces atakujący nie ma podmapowanych stron należących do ofiary. Nowy schemat ataku będzie opierał się na znalezieniu ofiary, która ma dostęp do interesujących nas danych i na którą można w jakiś sposób wpływać. Ofiarami mogą być: Kernel Silnik JavaScript w przeglądarce Silnik SQL bazy danych? Biblioteka, np. PAM, ntdll.dll?...
21 Szablon ataku 1. Znalezienie ofiary posiadającej dostęp do interesującego nas fragmentu pamięci 2. Wyszukanie w kodzie ofiary następującego fragmentu (x jest kontrolowany przez atakującego): if (x < array1_size) y = array2[array1[x] * 256]; 3. Doprowadzenie do sytuacji, w której elementy zaznaczone na niebiesko są w cache, tych na czerwono nie ma, a branch predictor jest tak wytrenowany, że skoczy do środka ifa. 4. Wykonanie tak znalezionego gadgetu. 5. Odczytanie wartości array1[x] zapisanej w cache.
22 Co jeśli nie mamy dostępu do wartości w cache? Często się zdarza, że program atakujący nie ma dostępu do tablicy w której zapisana jest odczytana wartość (bo np. jest w kernelu). W takim przypadku autorzy pracy proponują następującą sztuczkę: 1. Stwórz w swojej przestrzeni adresowej tablicę rozmiaru pamięci cache 2. Odczytaj całą tablicę prowadząc do umieszczenia jej w cache 3. Przeprowadź atak Spectre 4. Zobacz, które fragmenty tablicy wyleciały z cache. Istnieje korelacja między adresem brakującej strony, a adresem strony odczytanej podczas ataku Spectre (z adresu tej strony można odczytać wykradzioną wartość)
23 Ewaluacja Procesory: między innymi Intel Ivy Bridge (i7-3630qm), Intel Haswell (i7-4650u), Intel Skylake (nieustalony Xeon w chmurze Google), AMD Ryzen. Co ciekawsze testy: atak na funkcję znajdującą się w tym samym procesie odczytywanie danych z dowolnego obszaru pamięci Chrome poprzez JavaScript odkrycie, że pamięć branch predictora jest współdzielona między procesami
24 Ochrona przed atakiem Można zaproponować kilka rozwiązań: Czyszczenie cache przy każdej zmianie kontekstu (nie stosowane w praktyce) Bariery pamięci (specjalne instrukcje ARM, mfence i lfence u Intela) Uniemożliwienie precyzyjnego mierzenia czasu (stosowane w Chrome) Separacja wrażliwych danych między procesami (w przeglądarce każda karta to osobny proces nie współdzielący wrażliwych danych, takich jak ciasteczka sesji) Sztuczki w asemblerze utrudniające działanie branch predictora (RETpolina stosowana w LLVM) Niestety żadne z nich nie rozwiązuje w całości problemu.
EPTI: Efficient Defence against Meltdown Attack for Unpatched VMs
EPTI: Efficient Defence against Meltdown Attack for Unpatched VMs Zhichao Hua, Dong Du, Yubin Xia, Haibo Chen, Binyu Zang Institute of Parallel and Distributed Systems, Shanghai Jiao Tong University Meltdown
Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski
Układ sterowania, magistrale i organizacja pamięci Dariusz Chaberski Jednostka centralna szyna sygnałow sterowania sygnały sterujące układ sterowania sygnały stanu wewnętrzna szyna danych układ wykonawczy
Logiczny model komputera i działanie procesora. Część 1.
Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.
Organizacja typowego mikroprocesora
Organizacja typowego mikroprocesora 1 Architektura procesora 8086 2 Architektura współczesnego procesora 3 Schemat blokowy procesora AVR Mega o architekturze harwardzkiej Wszystkie mikroprocesory zawierają
QEMU działa na procesorach procesorach: emuluje procesory: dostępne dla s.o. hosta:
QEMU Stosunkowo szybki emulator procesora, korzystający z tzw. dynamicznej translacji i kilku innych ciekawych technik programistycznych i optymalizacyjnych. działa na procesorach procesorach: Intel x86,
INSTRUKCJA KORZYSTANIA Z APLIKACJI
INSTRUKCJA KORZYSTANIA Z APLIKACJI www.ebooki.nowaera.pl WSTĘP WYMAGANIA SYSTEMOWE REJESTRACJA LOGOWANIE AKTYWACJA E-BOOKA POBRANIE E-BOOKA NA URZĄDZENIE MOBILNE USUNIĘCIE E-BOOKA Z URZĄDZENIA MOBILNEGO
Programowanie w asemblerze Środowiska 64-bitowe
Programowanie w asemblerze Środowiska 64-bitowe 24 listopada 2015 Nieco historii najnowszej Intel wraz z HP rozpoczynaja pracę nad procesorem 64-bitowym z wykorzystaniem technologii VLIW. Powstaje procesor
Projektowanie oprogramowania systemów PROCESY I ZARZĄDZANIE PROCESAMI
Projektowanie oprogramowania systemów PROCESY I ZARZĄDZANIE PROCESAMI plan Cechy, właściwości procesów Multitasking Scheduling Fork czym jest proces? Działającą instancją programu Program jest kolekcją
Jądro systemu operacyjnego
Jądro systemu operacyjnego Jądro (ang. kernel) jest to podstawowa część systemu operacyjnego, która jest odpowiedzialna za wszystkie jego zadania. Zapewnia ono usługi systemowe takie jak: komunikacja między
Architektura komputerów
Architektura komputerów Wykład 3 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) 2 Plan wykładu Podstawowe komponenty komputera Procesor CPU Cykl rozkazowy Typy instrukcji Stos Tryby adresowania
Przegląd technik wirtualizacji i separacji w nowoczesnych systemach rodziny UNIX
Przegląd technik wirtualizacji i separacji w nowoczesnych systemach rodziny UNIX Wojciech A. Koszek dunstan@freebsd.czest.pl IX Liceum Ogólnokształcące im. C.K. Norwida w Częstochowie Krajowy Fundusz na
Stronicowanie w systemie pamięci wirtualnej
Pamięć wirtualna Stronicowanie w systemie pamięci wirtualnej Stronicowanie z wymianą stron pomiędzy pamięcią pierwszego i drugiego rzędu. Zalety w porównaniu z prostym stronicowaniem: rozszerzenie przestrzeni
Przegląd technik wirtualizacji i separacji w nowoczesnych systemach rodziny UNIX
Przegląd technik wirtualizacji i separacji w nowoczesnych systemach rodziny UNIX CONFidence 2005 IX Liceum Ogólnokształcące im. C.K. Norwida w Częstochowie Krajowy Fundusz na Rzecz Dzieci Wojciech A. Koszek
Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1
i sieci komputerowe Szymon Wilk Superkomputery 1 1. Superkomputery to komputery o bardzo dużej mocy obliczeniowej. Przeznaczone są do symulacji zjawisk fizycznych prowadzonych głównie w instytucjach badawczych:
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
UNIFON podręcznik użytkownika
UNIFON podręcznik użytkownika Spis treści: Instrukcja obsługi programu Unifon...2 Instalacja aplikacji Unifon...3 Korzystanie z aplikacji Unifon...6 Test zakończony sukcesem...9 Test zakończony niepowodzeniem...14
System pamięci. Pamięć wirtualna
System pamięci Pamięć wirtualna Pamięć wirtualna Model pamięci cache+ram nie jest jeszcze realistyczny W rzeczywistych systemach działa wiele programów jednocześnie Każdy może używać tej samej przestrzeni
PYTANIA BUDOWA KOMPUTERA kartkówki i quizy
PYTANIA BUDOWA KOMPUTERA kartkówki i quizy OGÓLNE INFORMACJE 1. Najmniejsza jednostka pamięci przetwarzana przez komputer to: Bit Bajt Kilobajt 1 2. Jaką wartość może przyjąć jeden bit: 0 lub 1 0-12 od
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
Mikroinformatyka. Tryb wirtualny
Mikroinformatyka Tryb wirtualny Tryb wirtualny z ochroną Wprowadzony w 80286. Rozbudowany w 80386. - 4 GB pamięci fizycznej, - 64 TB przestrzeni wirtualnej, - pamięć podzielona na segmenty o rozmiarze
która metoda jest najlepsza
która metoda jest najlepsza dr inż. Marek Żabka Instytut Matematyki Wydział Matematyki Stosowanej Politechnika Śląska 20 września 2012r Nowa metoda tworzenia grafiki na stronie internetowej: element,,canvas
Budowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
Wydajność obliczeń a architektura procesorów. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1
Wydajność obliczeń a architektura procesorów Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Wydajność komputerów Modele wydajności-> szacowanie czasu wykonania zadania Wydajność szybkość realizacji wyznaczonych
Bibliografia: pl.wikipedia.org www.intel.com. Historia i rodzaje procesorów w firmy Intel
Bibliografia: pl.wikipedia.org www.intel.com Historia i rodzaje procesorów w firmy Intel Specyfikacja Lista mikroprocesorów produkowanych przez firmę Intel 4-bitowe 4004 4040 8-bitowe x86 IA-64 8008 8080
Architektura potokowa RISC
Architektura potokowa RISC Podział zadania na odrębne części i niezależny sprzęt szeregowe Brak nawrotów" podczas pracy potokowe Przetwarzanie szeregowe i potokowe Podział instrukcji na fazy wykonania
Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer
Sprzęt komputerowy 2 Autor prezentacji: 1 prof. dr hab. Maria Hilczer Budowa komputera Magistrala Procesor Pamięć Układy I/O 2 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący
Budowa systemów komputerowych
Budowa systemów komputerowych Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl Współczesny system komputerowy System komputerowy składa
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
Zarządzanie pamięcią w systemie operacyjnym
Zarządzanie pamięcią w systemie operacyjnym Cele: przydział zasobów pamięciowych wykonywanym programom, zapewnienie bezpieczeństwa wykonywanych procesów (ochrona pamięci), efektywne wykorzystanie dostępnej
Standard transmisji równoległej LPT Centronics
Standard transmisji równoległej LPT Centronics Rodzaje transmisji szeregowa równoległa Opis LPT łącze LPT jest interfejsem równoległym w komputerach PC. Standard IEEE 1284 został opracowany w 1994 roku
Jak wiemy, wszystkich danych nie zmieścimy w pamięci. A nawet jeśli zmieścimy, to pozostaną tam tylko do najbliższego wyłączenia zasilania.
Jak wiemy, wszystkich danych nie zmieścimy w pamięci. A nawet jeśli zmieścimy, to pozostaną tam tylko do najbliższego wyłączenia zasilania. Dlatego trzeba je zapisywać do pliku, a potem umieć je z tego
Programowanie w asemblerze Środowiska 64-bitowe
Programowanie w asemblerze Środowiska 64-bitowe 17 października 2017 Nieco historii najnowszej Intel wraz z HP rozpoczynaja pracę nad procesorem 64-bitowym z wykorzystaniem technologii VLIW. Powstaje procesor
System pamięci. Pamięć wirtualna
System pamięci Pamięć wirtualna Pamięć wirtualna Model pamięci cache+ram nie jest jeszcze realistyczny W rzeczywistych systemach działa wiele programów jednocześnie Każdy może używać tej samej przestrzeni
Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Definicja systemu operacyjnego (1) Miejsce,
Architektura komputerów
Architektura komputerów Wykład 7 Jan Kazimirski 1 Pamięć podręczna 2 Pamięć komputera - charakterystyka Położenie Procesor rejestry, pamięć podręczna Pamięć wewnętrzna pamięć podręczna, główna Pamięć zewnętrzna
System pamięci. Pamięć wirtualna
System pamięci Pamięć wirtualna Pamięć wirtualna Model pamięci cache+ram nie jest jeszcze realistyczny W rzeczywistych systemach działa wiele programów jednocześnie Każdy może używać tej samej przestrzeni
Budowa i zasada działania komputera. dr Artur Bartoszewski
Budowa i zasada działania komputera 1 dr Artur Bartoszewski Jednostka arytmetyczno-logiczna 2 Pojęcie systemu mikroprocesorowego Układ cyfrowy: Układy cyfrowe służą do przetwarzania informacji. Do układu
Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera
Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Miejsce, rola i zadania systemu operacyjnego
Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Wprowadzenie Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego
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?
EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2018 ZASADY OCENIANIA
Układ graficzny CKE 207 EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 208 ZASADY OCENIANIA Arkusz zawiera informacje prawnie chronione do momentu rozpoczęcia egzaminu Nazwa kwalifikacji: Montaż i
Budowa komputera. Magistrala. Procesor Pamięć Układy I/O
Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz
Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer
Sprzęt komputerowy 2 Autor prezentacji: 1 prof. dr hab. Maria Hilczer Budowa komputera Magistrala Procesor Pamięć Układy I/O 2 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący
Mikroinformatyka. Wielozadaniowość
Mikroinformatyka Wielozadaniowość Zadanie Tryb chroniony przynajmniej jedno zadanie (task). Segment stanu zadania TSS (Task State Segment). Przestrzeń zadania (Execution Space). - segment kodu, - segment
Wybrane zagadnienia elektroniki współczesnej
Wybrane zagadnienia elektroniki współczesnej y pracy, Marika Kuczyńska Fizyka Techniczna IV rok 20-03-2013, AGH prezentacji y pracy 1 2 y pracy 3 4 5 6 Jednostka wykonawcza, instrukcje (Marika) Rodzina
RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,
RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC, zapoczątkowana przez i wstecznie zgodna z 16-bitowym procesorem
Procedura wdrożeniowa program MERKURY QUATTRO wer. 1.0
Syriusz sp. z o.o. Rzeszów, 2009 Procedura wdrożeniowa program MERKURY QUATTRO wer. 1.0 POSTANOWIENIA OGÓLNE Minimalna, sugerowana ilość godzin wdrożenia programu to: bez przenoszenia danych 8 godzin +
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE WINDOWS 1 SO i SK/WIN 006 Wydajność systemu 2 SO i SK/WIN Najprostszym sposobem na poprawienie wydajności systemu, jeżeli dysponujemy zbyt małą ilością pamięci RAM
Użytkowanie PortableGit w systemie Windows. 1. Najważniejsze informacje
Użytkowanie PortableGit w systemie Windows. 1. Najważniejsze informacje Git w wersji przenośnej umożliwia korzystanie z repozytoriów na każdym systemie z rodziny Windows, który nie posiada zainstalowanego
Podstawy Informatyki DMA - Układ bezpośredniego dostępu do pamięci
Układ Podstawy Informatyki - Układ bezpośredniego dostępu do pamięci alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu Układ 1 Układ Wymiana informacji Idea Zasady pracy maszyny W Architektura
Instrukcja użytkownika. Aplikacja dla WF-Mag
Instrukcja użytkownika Aplikacja dla WF-Mag Instrukcja użytkownika Aplikacja dla WF-Mag Wersja 1.0 Warszawa, Kwiecień 2015 Strona 2 z 13 Instrukcja użytkownika Aplikacja dla WF-Mag Spis treści 1. Wstęp...4
Architektura komputerów
Architektura komputerów Wykład 5 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) c.d. 2 Architektura CPU Jednostka arytmetyczno-logiczna (ALU) Rejestry Układ sterujący przebiegiem programu
Architektura komputerów
Architektura komputerów Tydzień 5 Jednostka Centralna Zadania realizowane przez procesor Pobieranie rozkazów Interpretowanie rozkazów Pobieranie danych Przetwarzanie danych Zapisanie danych Główne zespoły
DHL CAS ORACLE Wymagania oraz instalacja
DHL CAS ORACLE Wymagania oraz instalacja Opis: Niniejszy dokument opisuje wymagania niezbędne do instalacji bazy danych DHL CAS ORACLE. Przedstawia również sam proces instalacji. Przeznaczony jest dla
Architektura i administracja systemów operacyjnych
Architektura i administracja systemów operacyjnych Wykład 1 Jan Tuziemski Część slajdów to zmodyfiowane slajdy ze strony os-booi.com copyright Silberschatz, Galvin and Gagne, 2013 Informacje wstępne Prowadzący
Specyfikacja Wymagań Oprogramowania
Specyfikacja Wymagań Oprogramowania dla Pakietów e-kontentu Scorm firmy Eurotalk Wersja 1.0.64 Eurotalk Ltd. 2013 2011 Eurotalk Ltd. UK. Wszystkie prawa zastrzeżone. Strona 1 Spis treści Wstęp... 1.1 Opis
Monitor maszyn wirtualnych
Monitor maszyn wirtualnych Jest to oprogramowanie nadzorujące działanie systemów gości Może być to oddzielny software lub zintegrowany z systemem operacyjnym System gospodarza Oznaczany zazwyczaj jako
CPU ROM, RAM. Rejestry procesora. We/Wy. Cezary Bolek Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki
Cezary Bolek Uniwersytet Łódzki Wydział Zarządzania Katedra Informatyki Komputer jest urządzeniem, którego działanie opiera się na wykonywaniu przez procesor instrukcji pobieranych z pamięci operacyjnej
SOE Systemy Operacyjne Wykład 8 Pamięć wirtualna dr inż. Andrzej Wielgus
SOE Systemy Operacyjne Wykład 8 Pamięć wirtualna dr inż. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Pamięć wirtualna Stronicowanie na żądanie większość współczesnych systemów
Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC
Architektura Systemów Komputerowych Rozwój architektury komputerów klasy PC 1 1978: Intel 8086 29tys. tranzystorów, 16-bitowy, współpracował z koprocesorem 8087, posiadał 16-bitową szynę danych (lub ośmiobitową
[1/15] Chmury w Internecie. Wady i zalety przechowywania plików w chmurze
Chmury w Internecie Nota Materiał powstał w ramach realizacji projektu e-kompetencje bez barier dofinansowanego z Programu Operacyjnego Polska Cyfrowa działanie 3.1 Działania szkoleniowe na rzecz rozwoju
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)
Wykład 7. Zarządzanie pamięcią
Wykład 7 Zarządzanie pamięcią -1- Świat idealny a świat rzeczywisty W idealnym świecie pamięć powinna Mieć bardzo dużą pojemność Mieć bardzo krótki czas dostępu Być nieulotna (zawartość nie jest tracona
Komputer IBM PC niezależnie od modelu składa się z: Jednostki centralnej czyli właściwego komputera Monitora Klawiatury
1976 r. Apple PC Personal Computer 1981 r. pierwszy IBM PC Komputer jest wart tyle, ile wart jest człowiek, który go wykorzystuje... Hardware sprzęt Software oprogramowanie Komputer IBM PC niezależnie
Budowa Mikrokomputera
Budowa Mikrokomputera Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Podstawowe elementy komputera Procesor Pamięć Magistrala (2/16) Płyta główna (ang. mainboard, motherboard) płyta drukowana komputera,
ARCHITEKTURA PROCESORA,
ARCHITEKTURA PROCESORA, poza blokami funkcjonalnymi, to przede wszystkim: a. formaty rozkazów, b. lista rozkazów, c. rejestry dostępne programowo, d. sposoby adresowania pamięci, e. sposoby współpracy
UKŁADY MIKROPROGRAMOWALNE
UKŁAD MIKROPROGRAMOWALNE Układy sterujące mogą pracować samodzielnie, jednakże w przypadku bardziej złożonych układów (zwanych zespołami funkcjonalnymi) układ sterujący jest tylko jednym z układów drugim
Schematy zarzadzania pamięcia
Schematy zarzadzania pamięcia Segmentacja podział obszaru pamięci procesu na logiczne jednostki segmenty o dowolnej długości. Postać adresu logicznego: [nr segmentu, przesunięcie]. Zwykle przechowywana
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,
dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1
dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1 Cel wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działanie systemu operacyjnego
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
Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011 http://www.wilno.uwb.edu.
SYLLABUS na rok akademicki 010/011 Tryb studiów Studia stacjonarne Kierunek studiów Informatyka Poziom studiów Pierwszego stopnia Rok studiów/ semestr 1(rok)/1(sem) Specjalność Bez specjalności Kod katedry/zakładu
FAQ. Dotyczące nowej bankowości mobilnej. https://bsbelskduzy24.pl
FAQ Dotyczące nowej bankowości mobilnej https://bsbelskduzy24.pl 1 1. Jak uzyskać dostęp do bankowości internetowej? Jeśli posiadasz już dostęp do bankowości internetowej w naszym banku, to wystarczy,
Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas)
Hosting WWW Bezpieczeństwo hostingu WWW Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas) Najgroźniejsze ataki na serwer WWW Najgroźniejsze ataki na serwer WWW Cross-site scripting (XSS) SQL injection Denial
Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]
Procesor ma architekturę akumulatorową. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset or Rx, Ry, A add Rx load A, [Rz] push Rx sub Rx, #3, A load Rx, [A] Procesor ma architekturę rejestrową
Elektroniczny. Obieg Dokumentów SPRAWNA WYMIANA INFORMACJI W FIRMIE SKUTECZNA APLIKACJA DO ZARZĄDZANIA OBIEGIEM DOKUMENTÓW SPRAWNA WYMIANA
SPRAWNA WYMIANA Elektroniczny INFORMACJI W FIRMIE Obieg Dokumentów SPRAWNA WYMIANA INFORMACJI W FIRMIE SKUTECZNA APLIKACJA DO ZARZĄDZANIA OBIEGIEM DOKUMENTÓW Nowoczesna, intuicyjna aplikacja umożliwiająca
Specyfika projektowania Mariusz Rawski
CAD Specyfika projektowania Mariusz Rawski rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/ System cyfrowy pierwsze skojarzenie Urządzenia wprowadzania danych: klawiatury czytniki urządzenia przetwarzania
Instrukcja instalacji programu GfK e-trendy dla przeglądarki Google Chrome
Instrukcja instalacji programu GfK e-trendy dla przeglądarki Google Chrome Niniejsza instrukcja podpowie Państwu jak zainstalować oraz aktywować program GfK e-trendy poprzez przeglądarkę Google Chrome.
Wirusy w systemie Linux. Konrad Olczak
Wirusy w systemie Linux Konrad Olczak Plan prezentacji Różnice w bezpieczeństwie Windowsa i Linuxa. Pokazanie możliwości implemetacji wirusa. Windows vs. Linux Uruchamianie plików. Różnorodność oprogramowania.
ABA-X3 PXES v Podręczna instrukcja administratora. XDMCP Licencja FDL (bez prawa wprowadzania zmian) Tryb X terminala
Tryb X terminala Terminal ABA-X3 może być wykorzystywany jako wielosesyjny X terminal. Umożliwia to współpracę terminala w trybie graficznym z maszynami wykorzystującymi systemy UNIX lub LINUX albo inne
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?
Dodawanie stron do zakładek
Dodawanie stron do zakładek Aby dodać adres strony do zakładek otwieramy odpowiednią stronę a następnie wybieramy ikonę Dodaj zakładkę Po wybraniu ikony otworzy się okno umożliwiające dodanie adresy strony
LEKCJA TEMAT: Zasada działania komputera.
LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem
Projekt PaX. Łata na jądro systemu operacyjnego Linux Strona projektu: pax.grsecurity.net
Projekt PaX Łata na jądro systemu operacyjnego Linux Strona projektu: pax.grsecurity.net Główne rodzaje ataków związane z błędem przepełnienia bufora Niebezpieczeństwa mają źródło w błędach popełnianych
Usługi sieciowe w kontenerach systemu operacyjnego CoreOS
Uniwersytet Mikołaja Kopernika Wydział Fizyki, Astronomii i Informatyki Stosowanej Maciej Janczyk nr albumu: 259014 Praca inżynierska na kierunku informatyka stosowana Usługi sieciowe w kontenerach systemu
Architektura komputerów
Architektura komputerów Wykład 12 Jan Kazimirski 1 Magistrale systemowe 2 Magistrale Magistrala medium łączące dwa lub więcej urządzeń Sygnał przesyłany magistralą może być odbierany przez wiele urządzeń
Instrukcja użytkownika. Aplikacja dla Magento
Instrukcja użytkownika Aplikacja dla Magento Instrukcja użytkownika Aplikacja dla Magento Wersja 1.0 Warszawa, Lipiec 2016 Strona 2 z 15 Instrukcja użytkownika Aplikacja dla Magento Spis treści 1. Wstęp...4
MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW
MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW Projektowanie urządzeń cyfrowych przy użyciu układów TTL polegało na opracowaniu algorytmu i odpowiednim doborze i zestawieniu układów realizujących różnorodne funkcje
Architektura Systemów Komputerowych
Architektura Systemów Komputerowych Wykład 10: Redukcja opóźnień w procesorach superpotokowych i superskalarnych Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie
Podstawy informatyki. System operacyjny. dr inż. Adam Klimowicz
Podstawy informatyki System operacyjny dr inż. Adam Klimowicz System operacyjny OS (ang. Operating System) Program komputerowy bądź zbiór programów, który zarządza udostępnianiem zasobów komputera aplikacjom.
Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w
Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w obrębie skryptu. Wyrażenia include() i require() są niemal
Zagrożenia związane z udostępnianiem aplikacji w sieci Internet
Zagrożenia związane z udostępnianiem aplikacji w sieci Internet I Ogólnopolska Konferencja Informatyki Śledczej Katowice, 8-9 stycznia 2009 Michał Kurek, Aleksander Ludynia Cel prezentacji Wskazanie skali
Instrukcja obsługi programu PLOMP PLUS FM
Instrukcja obsługi programu PLOMP PLUS FM Edata Polska Sp. z o.o. ul. Puławska 314 02-819 Warszawa Tel 22 545-32-40 Fax 22 678-60-29 biuro@edatapolska.pl Ver 1.04 Aplikacja PLOMP PLUS FM przeznaczona jest
Temat: Administracja kontami użytkowników
Temat: Administracja kontami użytkowników Praca z hasłami Tworzenie hasła W zależności od wybranej metody tworzenia konta użytkownika lokalnego Windows XP daje możliwość utworzenia hasła użytkownika podczas
Instrukcja użytkownika. Aplikacja dla Comarch Optima
Instrukcja użytkownika Aplikacja dla Comarch Optima Instrukcja użytkownika Aplikacja dla Comarch Optima Wersja 1.1 Warszawa, Luty 2016 Strona 2 z 14 Instrukcja użytkownika Aplikacja dla Comarch Optima
Pamięć współdzielona
Pamięć współdzielona Systemy Operacyjne 2 Piotr Zierhoffer 17 listopada 2011 Mechanizmy IPC IPC Inter Process Communication kolejki komunikatów, pamięć współdzielona semafory polecenia bash: ipcs, ipcrm
Jadro monolityczne vs. mikrojadro. Mikrojadro. Olga Kowalczuk. 9 grudnia 2008
Jadro monolityczne vs. mikrojadro 9 grudnia 2008 Jadro monolityczne vs. mikrojadro Jadro monolityczne vs. mikrojadro Jadro monolityczne vs. mikrojadro Jadro monolityczne Aplikacje użytownika wywołania
Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami
Rok akademicki 2015/2016, Wykład nr 6 2/21 Plan wykładu nr 6 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2015/2016
Dodawanie stron do zakładek
Dodawanie stron do zakładek Aby dodać adres strony do zakładek otwieramy odpowiednią stronę a następnie wybieramy ikonę Dodaj zakładkę Po wybraniu ikony otworzy się okno umożliwiające dodanie adresy strony
PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK
1 PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK POLITECHNIKA CZĘSTOCHOWSKA 2 Trendy rozwoju współczesnych procesorów Budowa procesora CPU na przykładzie Intel Kaby Lake