Skip to content

Instantly share code, notes, and snippets.

View T3sT3ro's full-sized avatar

Tooster T3sT3ro

View GitHub Profile
@T3sT3ro
T3sT3ro / win err on eb52da
Created January 9, 2018 21:34
na windzie nie działa eb52dad082bf63d95636d2b8feb196dd63c7e7cf
C:\Users\Tooster\AppData\Local\JetBrains\Toolbox\apps\CLion\ch-0\173.3727.114\bin\cmake\bin\cmake.exe --build G:\CLion\Logicon\cmake-build-debug --target logicon -- -j 2
[ 37%] Built target glfw
Scanning dependencies of target logicon
[ 40%] Building C object CMakeFiles/logicon.dir/dependencies/gl3w/src/gl3w.c.obj
[ 42%] Building CXX object CMakeFiles/logicon.dir/dependencies/imgui/imgui.cpp.obj
[ 45%] Building CXX object CMakeFiles/logicon.dir/dependencies/imgui/imgui_draw.cpp.obj
[ 47%] Building CXX object CMakeFiles/logicon.dir/dependencies/imgui/imgui_demo.cpp.obj
[ 50%] Building CXX object CMakeFiles/logicon.dir/dependencies/imgui_impl_glfw_gl3/imgui_impl_glfw_gl3.cpp.obj
In file included from g:\programy\mingw\include\windows.h:44:0,
from G:/CLion/Logicon/dependencies/glfw/include/GLFW/glfw3native.h:88,
@T3sT3ro
T3sT3ro / SOL5.md
Last active December 29, 2020 10:09
lista 5 z Systemów Operacyjnych na UWR

SO Lista 5

  • Tanenbaum (wydanie czwarte): 2.3, 6.1
  • Stallings (wydanie dziewiąte): 5.1 – 5.4, 6.1, 6.2

Zadanie 1. Wyjaśnij różnice między zakleszczeniem (ang. deadlock), uwięzieniem (ang. livelock) i głodzeniem (ang. starvation). W podręcznikach pojęcia te odnoszą się do zasobów. Pokaż, że podobne problemy występują w przypadku przesyłania komunikatów.


@T3sT3ro
T3sT3ro / SOL7.md
Last active January 19, 2019 23:39

SO Lista 7

  • Tannenbaum: 3.2, 10.4;
  • Stallings: 7.2;

UWAGA! W trakcie prezentacji należy być gotowym do zdefiniowania pojęć oznaczonych wytłuszczoną czcionką. Dla każdej metody przydziału pamięci, która pojawi się w poniższych zadaniach, prowadzący zajęcia może wymagać by student wyjaśnił:

  • jak wygląda struktura danych przechowująca informację o zajętości bloków?
  • jak przebiegają operacje alloc i free?
@T3sT3ro
T3sT3ro / SOL8.md
Last active January 15, 2019 01:16

Lista 8

Zadanie 1. Podaj w pseudokodzie semantykę instrukcji atomowej compare-and-swap i z jej użyciem zaimplementuj blokadę wirującą (ang. spin-lock). W jakich systemach komputerowych stosuje się ten typ blokad? Wymień zalety i wady blokad wirujących w porównaniu do blokad usypiających. Opisz rozwiązanie pośrednie, czyli blokady adaptacyjne.


  • instrukcja atomowa: taka, w trakcie której nie nastąpi wywłaszczenie. Wykona się od początku do końca bez np. zmian kontekstu.
  • spinlock: blokada zużywająca czas procesora do aktywnego sprawdzania czy zachądzą warunki na kontynuację. np. volatile int flag; while(flag);. Dobre, jeśli mamy pewność, że czekanie nie będzie długie i koszt poczekania jest mniejszy niż koszt uśpienia i zmian kontekstu. Przykładowo w systemach wbudowanych bardzo często stosuje się spinlocki do sprawdzenia czy dane z magistrali szeregowej zostały wysłane i można przeprowadzić kolejny zapis. Słabe bo nie zawsze jest pewność ile będziemy czekać, a grani
@T3sT3ro
T3sT3ro / SOL10.md
Last active December 18, 2018 16:58

SO Lista 10

  • Tanenbaum (wydanie czwarte): 3.4 – 3.6
  • Stallings (wydanie dziewiąte): 8.2

Zadanie 1. Rozważamy zarządzanie pamięcią wirtualną. Kiedy system korzysta z polityki ładowania, przydziału miejsca, zastępowania i usuwania? Porównaj stronicowanie wstępne (ang. prepaging) i stronicowanie na żądani(ang. demand paging). Jakie zachowania programów będą efektywnie obsługiwane przez jedną, a jakie przez drugą politykę?


  • polityka ładowania: kiedy ładuje się do pamięci operacyjnej potrzebne strony

SO Lista 11

  • Tanenbaum (wydanie czwarte): 4.1 – 4.3, 10.6
  • Stallings (wydanie dziewiąte): 12.1 – 12.6

Zadanie 1. Na podstawie rozdziału §12.2 podręcznika Stallings wyjaśnij różnice między organizacją sterty i pliku sekwencyjnego. Rozważmy poniższe przypadki użycia:

  • Zaproponuj binarny format przechowywania dziennika operacji składających się z listy par klucz-wartość złożonych ze znaków alfanumerycznych. Podaj semantykę kodów ASCII o numerach 28–31.
  • Dodajemy rekordy do pliku przechowującego użytkowników systemu. Jak zachować porządek używając pliku dziennika lub listy dwukierunkowej? Jak przyspieszyć wyszukiwanie z użyciem indeksu?
@T3sT3ro
T3sT3ro / SOL12.md
Last active January 15, 2019 14:02
SO lista 12

SO Lista 12


  • Stallings (wydanie siódme): 12.7 – 12.9
  • Tanenbaum (wydanie czwarte): 4.3 – 4.5, 10.6

Zadanie 1. Rozważamy następujące metody przydziału plików: ciągłą, listową, indeksowaną, i-węzeł. Dysponujesz bitmapą wolnych bloków i listą wszystkich i-węzłów. Czy i jak można naprawić poniższe błędy dla przydziału:

/******************************************************************************
* Header file inclusions.
******************************************************************************/
#include "FreeRTOSConfig.h"
// #undef configUSE_TICK_HOOK
// #define configUSE_TICK_HOOK 0
// #undef configQUEUE_REGISTRY_SIZE
// #define configQUEUE_REGISTRY_SIZE 5
#include "FreeRTOS.h"
@T3sT3ro
T3sT3ro / SOL13.md
Last active January 29, 2019 15:25
SO lista 13

SO lista 13

  • Tanenbaum (wydanie czwarte): 2.4, 8.1.4, 10.3.4, A 5.2
  • Stallings (wydanie dziewiąte): 9.1, 9.2, 10.1 – 10.3, 10.5
  • Silberschatz (wydanie dziewiąte): 6.6

Zadanie 1. W pewnej chwili do systemu wsadowego przybywają kolejno zadania od P1 do P5. Oszacowany czas działania T w minutach oraz priorytet zadań P wczytano z opisu zadań wsadowych na taśmie magnetycznej i przedstawiono w tabeli poniżej. Zadania ważniejsze mają mniejszy numer priorytetu.

|Zadanie| Czas działania| Priorytet|

@T3sT3ro
T3sT3ro / sieci.md
Last active March 24, 2019 23:55
sieci 2k19 cheatsheet

Sieci cheatsheet

ogólne

lokalne: local0-7
pary: remote2
czwórki: remote1
wszystkie: remote0