2011/02/14

Sojusz przegranych, jak błyskawica ...

Jeśli śledzicie rynek urządzeń mobilnych, zapewne wiecie ze Windows 7 Mobile jest postrzegany jako produkt spóźniony i niedopracowany. W internecie można znaleźć informacje o brakach i błędach tego systemu. To nie przeszkadza jednak M$ w promowaniu W7 jako "niszczyciela iOS" . Wg mnie to hipokryzja choćby ze względu braku kompatybilności wstecz z linia Windows Mobile (żegnaj Automapo). Jest też inny przegrany, Nokia. Firma ta w segmencie smartphone postawiła na system Symbian, który jak się okazało nie jest lubiany przez użytkowników i programistów (chyba nie bez powodu, ręka w górę kto ma to badziewie ;). Efektem tego jest spadek sprzedaży produktów Noki opartych o ten system, co negatywnie odbiło się na kondycji finansowej fińskiego producenta (m.in ze stanowisk polecieli szefowie sektora). Szybko jednak okazało się że Nokia nie załamuje rąk i podpisała umowę o współpracy, zgadnijcie z kim :).

Moim zdaniem będzie to ciekawe widowisko, ostatni okrzyk gigantów przed katastrofą, jednak czas pokaże jaki będzie wynik tej batalii z Androidem. Tymczasem szefowie obu firma maja bardzo podnoszące na duchu hasło:

"Istnieją inne ekosystemy mobilne. My je zniszczymy. Stoją przed nami wyzwania. My im sprostamy. Sukces wymaga szybkości. Będziemy jak błyskawica. Obydwaj widzimy szanse; mamy wolę, środki i motywację, aby odnieść sukces"

Moim zdaniem będzie to dosłownie jak błyskawica (dużo huku - czyli wielka kampania reklamowa), delikatny wzrost sprzedaży i wielka feta ala M$ ... i ... no właśnie ... wielkie nic, następne miliony użytkowników zostawione bez wsparcia technicznego i aplikacji użytkowych.
Balmer, sprzedawaj szybciej te akcje!!!!

2011/02/12

Algorytmy wielodostepu bez blokowania

Często podczas tworzenia oprogramowania z wykorzystaniem wątków musimy zadbać o wielodostęp do sekcji danych lub kodu. Najprostszym sposobem jest zabezpieczenie z wykorzystaniem semafora lub mutex'a. jednak takie podejście ma podstawowy problem, tworzy wąskie gardło dla przetwarzania współbieżnego. Problem ten jest bardzo poważny w systemach z duża liczba procesorów gdzie wymagana jest duża skalowalność. W przypadku systemów RTOS dochodzi dodatkowo problem nieprzewidywalności czasu wykonania, co jest głównym powodem problemów w takich systemach.

Rozwiązaniem jest szereg algorytmów które realizują założone zadanie (umożliwiają wielodostęp) ale nie wymagają blokowania. Bardzo dobre opracowanie znajdziecie tutaj

http://www.makelinux.net/ldd3/chp-5-sect-7.shtml

Sterowanie silnikiem krokowym

Fajny artykuł o sterowaniu silnikami krokowymi.

http://www.codeproject.com/KB/system/MotorController.aspx

Design patterns

Polecam strone m.in. o design patterns, bardzo dobrze przygotowany materiał.

http://sourcemaking.com/