• mina86.com

  • Categories
  • Code
  • Contact
  • Treasure Hunt a szybkość D

    Zachęcony wpisem GiMa postanowiłem pobawić się w Google Treasure Hunt. Z początku moje wrażenia były negatywne, ale to dlatego, że zacząłem od zadania sieci, które jest co najmniej denne. Archiwum też nie napawało optymizmem, już zacząłem się zastanawiać, czy wszystkie będą tak prymitywne — na szczęście nie były.

    Publiczne repozytorium gita

    W końcu zebrałem się i po wypełnieniu odpowiednich formalności stworzyłem zbiór publicznych repozytoriów gita z różnymi rzeczami napisanymi przeze mnie. W chwili obecnej, najciekawszym jest chyba repozytorium dot-files zawierające różne moje pliki konfiguracyjne — może komuś się na coś przydadzą. :)

    Masowe wysyłanie listów

    W tekście poniższym opiszę jak i dlaczego właśnie tak należy wysyłać masowe listy (tj. do wielu osób jednocześnie). Dość często zdarza mi się otrzymywać wiadomości z przerośniętą listą adresatów, z których połowy nawet nie znam — jest to zdecydowanie niedobry sposób na rozsyłanie korespondencji!

    Sieci Komputerowe

    Ponownie coś z serii „ja juz zaliczyłem na 5, a może komuś się przyda”. Odpowiedzi na pytania przygotowawcze przed kolokwium z przedmiotu Sieci komputerowe II. Jak w przypadku poprzedneigo wpisu, materiał ten ma największą wartość dla studentów Elektroniki Politechniki Warszawskiej, ale może też ktoś inny będzie miał ochotę przejrzeć.

    Systemy Operacyjne

    Coś z serii „ja już zaliczyłem na pięć, a może komuś się przyda”, czyli przygotowany przeze mnie plik z odpowiedziami na pytania przygotowawcze do egzaminu z przedmiotu Systemy operacyjne. Zapewne największa wartość mają one dla studentów Elektroniki Politechniki Warszawskiej, niemniej jednak może ktoś się tym zainteresuje.

    ARP ping

    Czas jakiś temu potrzebowałem sprawdzić, na komputerze bez przydzielonego adresu sieciowego, czy komputer o podanym adresie istnieje. Chciałem mianowicie, zależnie od wyniku tego testu skonfigurować sieć statycznie lub dynamicznie. Szybko szczególną uwagę zwróciłem na protokół ARP.

    W protokole Ethernet urządzenia są rozpoznawane za pomocą adresów MAC, a więc, aby móc wysłać pakiet do komputera o danym IP należy najpierw poznać jego adres sprzętowy. Do tego właśnie służy protokół ARP (gwoli ścisłości, może on być wykorzystany również przy innych protokołach warstwy drugiej i trzeciej).

    Jak to działa? Pierwsza strona rozsyła do wszystkich (na adres broadcast, tj.q FF:FF:FF:FF:FF:FF) zapytanie, wypełniając swój adres IP i MAC oraz adres IP, o który chce się zapytać. W odpowiedzi, druga strona wysyła ramkę z oboma adresami, swoimi i komputera wysyłającego pytanie.

    Nie każdy zdaje sobie sprawę, iż protokół ten można wykorzystywać nawet jeżeli nie ma się swojego adresu sieciowego — wówczas w odpowiednie pole wpisujemy same zera. W niczym to nie przeszkadza — w żadnym momencie protokół warstwy trzeciej nie jest wszak wykorzystywany.

    Warto wspomnieć, iż mechanizm ten jest wykorzystywany przez klienty DHCP, do sprawdzania (na wszelki wypadek), czy adres im nadany jest faktycznie wolny — nazywa się to Adress Conflict Detection.

    Dla zainteresowanych aplikacja, która próbuje wykryć adres sprzętowy urządzenia o podanym adresie sieciowym.

    Bezpieczeństwo logowania

    czyli czemu OpenID jest trzy razy mniej bezpieczny od zwykłego hasła.

    ls-cmd.pl

    Coś dla prawdziwych uniksowych geeków: Skrypt, który powoduje, że dobrze znana komenda ls działa w Irssi jak powinna, czyli wyświetla listę osób na kanale (samo ls, bez slasha).

    Ochrona stosu

    Prezentacja, którą miałem przyjemność omawiać w trakcie V Sesji Linuksowej traktująca o mechanizmie ochrony stosu polegającym na dodaniu strażnika pomiędzy adresem powrotu a zmiennymi lokalnymi funkcji. Archiwum zawiera również proste programy, które były prezentowane w trakcie wykładu.

    Stałość fizyczna i logiczna w C++

    Chciałbym zaprezentować pewien tekst, który przygotowałem na jeden z przedmiotów na studiach. Traktuje on o modyfikatorze const i mutable oraz określa pojęcie stałości logicznej czyli niezmienności zachowania obiektu, gdy patrzymy z zewnątrz. Może komuś się to przyda. Czekam również na wszelkie komentarze.