Windows stuff

Ostatnio w internecie pojawiły się dwa ciekawe, niezbyt pochlebne, acz bardzo merytoryczne artykułu na temat Microsoft’u.

Pierwszy dotyczy chaosu jaki Microsoft spowodował wokół swoich API i ile problemów narobił tym developerom. Drugi jest bardziej niskopoziomowy i opisuje (z pierwszej ręki) dlaczego Windows nie jest tak dobry jak by mógł być.

Zachęcam do przeczytania.

  • Comments Off

Uwolnić telefon

Nowoczesne urządzenia przenośne od komputera różnią się praktycznie już tylko formą, bo moc zapewniają podobną, a to czego im brakuje rekompensują długim czasem pracy na baterii. Sytuacja wygląda jeszcze gorzej w przypadku zwykłych użytkowników i tzw.  Ultrabook’ów. Większość osób kupuje je ze względu na niedużą wagę i właśnie długi czas pracy na baterii, a to samo może zapewnić tablet w futerale z klawiaturą który dodatkowo będzie prawie o połowę tańszy. Zresztą prognozy na nadchodzący rok mówią właśnie o tym, że sprzedaż tabletów ma znacznie przewyższyć sprzedaż laptopów. Read more

  • Comments Off

Tajemnica Stuxnet’a ujawniona

No i wyszło szydło z worka. Według artykułu w New York Times amerykanie nieoficjalnie przyznali się do stworzenia sławnego wirusa Stuxnet, a co za tym idzie najprawdopodobniej i Duqu. Artykuł, który powstał na bazie nieoficjalnych rozmów z Amerykańskimi oficjelami, ujawnia, że operacja o kryptonimie “Olimpic Games” zaczęła się jeszcze za czasów administracji Bush’a, a za radą tego ostatniego była aktywnie kontynuowana przez Obamę. Celem operacji było, jak powszechnie wiadomo, uniemożliwienie, albo chociaż poważne przeszkodzenie, Iranowi w procesie wzbogacania Uranu. Według niektórych cel powiódł się i Iran cofnął się w pracach o dwa lata. Jednak nie wszyscy są tak optymistyczni, a niektórzy wręcz twierdzą, że szkody były minimalne, a Iran już dawno nadrobił stracony czas. Read more

  • Comments Off

Cyber wojna

Na tego typu określenia zawsze reagowałem skrzywieniem ust i pogardliwym prychnięciem. Poza atakami DDoS, spam’owaniem skrzynek pocztowych, aż do granic ich limitu, deface’em strony, albo wykradaniem danych, co “źli hakerzy” mogli zrobić rządom, albo wielkim korporacjom? Poza tym czy tego typu działania naprawdę można nazwać wojną? Read more

Google Glass w rzeczywistości

Google ostatnio zaprezentował swój najnowszy wynalazek który ma szanse zrewolucjonizować świat. Mam na myśli okulary “rozszerzające rzeczywistość” czyli Project Glass. Filmik promocyjny wygląda naprawdę imponująco, tym bardziej, że kto z nas geek’ów nie marzy o czymś takim? Read more

  • Comments Off

Konfiguracja jądra

Dla wielu, a zwłaszcza dla początkujących, jest to bardzo trudny i męczący temat. I nic dziwnego. Linux obsługuje masę  najróżniejszego sprzętu, który można znaleźć w urządzeniach wszelkiego typu, od wielkich serwerów z setkami gigabajtów RAM’u po najmniejsze mikro-kontrolery. I wszystkie te opcje siedzą sobie razem w jednym menu konfiguracji jądra. Read more

  • Comments Off

-march=native

Każdy użytkownik Gentoo co najmniej raz musiał ustawić flagi kompilatora. Ustawienie samej flagi -march z reguły nie jest trudne, ale co ustawić poza nią, żeby jak najlepiej wykorzystać cechy naszego procesora (a wbrew pozorom ma znaczenie co się ustawia)? Od jakiegoś czasu gcc oferuje opcję “native” jako parametr dla -march. Jeśli użyjemy tej opcji gcc stara się samo ustalić jaki mamy procesor i co będzie dla nas najlepsze. A co jeśli chcemy się dowiedzieć co jest dla nas najlepsze — jakie flagi gcc ustawiło? Pomocna wtedy jest ta komenda:

gcc -march=native -E -v - < /dev/null 2>&1 | grep cc1

Po wykonaniu jej zobaczymy dokładnie jakie polecenie zostało wywołane, a tym samym jakie flagi zostały ustawione.

  • Comments Off

Optymalizacja w gcc

O niekorzystnych efektach stosowania optymalizacji na błędnym kodzie już kiedyś było. A teraz będzie jeszcze raz bo znalazłem kolejny ciekawy przykład. Znalazłem go na tej stronie przy okazji szukania materiałów o sygnałach w Linuksie. Kod po minimalnej zmianie wygląda tak: Read more

  • Comments Off

Load balancing

Najprostszy sposób jak wykonać load balancing przy użyciu tylko iptables. Wykorzystujemy do tego moduł “statistic” w trybie “nth” który oznacza nam każdy co czwarty pakiet (–every 4), licząc od zadanego (–packet 0). Same regułki wyglądają tak:

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -m state --state NEW -m statistic --mode nth --every 4 --packet 0 -j DNAT --to-destination 192.168.1.2:80
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -m state --state NEW -m statistic --mode nth --every 4 --packet 1 -j DNAT --to-destination 192.168.1.3:80
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -m state --state NEW -m statistic --mode nth --every 4 --packet 2 -j DNAT --to-destination 192.168.1.4:80
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -m state --state NEW -m statistic --mode nth --every 4 --packet 3 -j DNAT --to-destination 192.168.1.5:80

Jeśli ustawimy takie regułki na serwerze z adresem 192.168.1.1 to każde nowe połączenie przychodzące na ten serwer na porcie 80 będzie przekierowane na inne maszyny na podstawie licznika (w tym wypadku modulo 4). Czyli pierwsze połączenie poleci na serwer 192.168.1.2, drugie na 192.168.1.3, trzecie na 192.168.1.4, a czwarte na 192.168.1.5, a potem od nowa. Oczywiście można to robić dla dowolnej ilości maszyn oraz dla dowolnych usług. Ważne jest tylko, aby zawsze był sprawdzany stan pakietu i aby regułki stosowane były tylko dla nowych połączeń. W przeciwnym razie kolejne serwery będą dostawać pakiety nie przeznaczone dla nich i usługi nie będą działały.

  • Comments Off

Duqu techno-thriller

Rok temu głośno było o wirusie Stuxnet, który zainfekował Irańskie centra wzbogacania uranu i spowodował w nich liczne szkody. Od października 2011 głośno z kolei jest o bliskim krewnym Stuxnet’a – wirusie ochrzczonym nazwą Duqu. Jakkolwiek nie ma żadnych danych udowadniających ponad wszelką wątpliwość relację pomiędzy Stuxnet’em, a Duqu to wszystko wskazuje na to, iż oba szkodniki zostały stworzone przez tych samych ludzi. Oba wirusy mają taką samą architekturę, te same mechanizmy działania, korzystają z tych samych wykradzionych certyfikatów kryptograficznych do podpisywania fałszywych sterowników oraz mają te same “magiczne wartości” zakodowane w sobie. Read more

  • Comments Off