Saturday, September 1, 2012

Energooszczędny i wydajny?

Właściwie ten post mógłby być zatytułowany "Dlaczego warto kupić iPada 2" mimo, iż nie jestem "fanem" Apple, ale po kolei. Wcześniej pisałem o procesorach na architekturze ARM, teraz napisze ogólnie o komputerach pod kątem energooszczędności.

Obecnie w wykorzystaniu powszechne są laptopy, netbooki, tablety i komputery stacjonarne. Za każdym rodzajem sprzętu idą specyficzne możliwości i upodobania.  Jeszcze do niedawna używałem komputera stacjonarnego, od ok. roku przesiadłem się na laptop ze względu na wygodę (mam specjalny stolik, mogę z nim siedzieć na kanapie), jednak od pewnego czasu używam przeważnie iPada 2, dlaczego? Odpowiedź na to pytanie jest prosta, ponieważ ~80% czasu spędzam na czytaniu i wyszukiwania  materiałów w internecie. Więc, tak naprawdę przez ten czas potrzebna jest mi zazwyczaj tylko przeglądarka, reszta niepotrzebnie rozprasza. Można to porównać do czytania gazety. Oczywiście nie zmierzam tu pisać o "erze" post-komputerów, o tym czy tablety zastąpią komputery, czy iOS jest lepszy od Androida i wielu innych..., ja skupiam się na stosunku wygody do ceny - czyli przeglądania sieci.

W tym przypadku cena składa się z dwóch części, co raz tańszego i lepszego sprzętu oraz, co raz droższej energii. Poza tym, w obliczu "powodzi" urządzeń oferujących dostęp do sieci w skali makro koszt energii staje się tym najważniejszym, zresztą również z punktu widzenia maszyn serwerowych. Dlatego ten tekst w połowie będzie również odpowiadał na pytanie jak zbudować energooszczędny serwer.

Rozwój urządzeń mobilnych poskutkował rozwojem wydajnych procesorów, które zużywają tak mało energii jak to tylko jest możliwe. Ponieważ ARM atakuje, Intel musi kontratakować. Ostatnio przeczytałem o jego nowych planach z procesorami Atom. Nowe modele mają być konkurencją dla procesorów Cortex i mają również być dedykowane dla platformy serwerowej [1].

Skoro jesteśmy już przy procesorach Intel Atom i Cortex to polecam przeczytać poniższy dokument. Może jest trochę przestarzały, ale jak na wstęp do tematu to w sam raz.



Zacznijmy od procesorów Intel Atom. Ostatnio wpadł mi w ręce netbook z procesorem Intel Atom N2600. Najciekawsze w tym procesorze jest to ile pobiera energii. Sprzęt kosztował ok. 1200 złotych (bez systemu).


Teraz zobaczymy jak to przekłada się na rzeczywistość, sprawdzimy za pomocą watomierza ile energii pobiera sprzęt z takim procesorem.


Z netbooka została wyjęta bateria, aby wynik uwzględniał tylko rzeczywiste zużycie energii, bez ładowania baterii. Na tym zdjęciu procesor obciążony jest na 18%, co jest wynikiem odpalenia wideo w przeglądarce, to większe obciążenie niż tylko czytanie tekstu, a sprzęt pobiera tylko 12.5 watów.

Dla porównania na kolejnym zdjęciu procesor obciążony jest na 66%, a pobór energii to 15.1 watów.


Teraz czas sprawdzić stan, w którym system nie wykonuje żadnych zadań.


Jak widzimy w takim stanie sprzęt pobiera tylko 10 watów. To dużo, czy mało?


Nie ma lepszej odpowiedzi na to pytanie niż wyniki pomiaru mojego komputera stacjonarnego. Jego procesor to Intel Core 2 Quad Q6600, który maksymalnie może pobierać 105 watów. Do tego dwa dyski, karta graficzna GeForce 8600 GTS i monitor 19".

Tak, przeciętny komputer stacjonarny zużywa powyżej 100 watów. Jak by tego było mało jest to stan, w którym nie robi nic cięższego od przeciętnego przeglądania sieci.

Jako ciekawostkę warto wspomnieć, że nawet gdy jest wyłączony to razem z routerem WiFi pobiera prawie 8 watów (4.4W router, 1.5W monitor, 1.5W stacja). To prawie tyle co przedstawiany wcześniej netbook w tzw. stanie idle.

Tu należy się duża pochwała dla nowych modeli procesorów, zwłaszcza za integrację procesor graficznego, który dla większości użytkowników w zupełności wystarczy.

Laptop z którego piszę ten tekst to 13 calowy HP ProBook 4320s z procesorem i3-380M i wymienionym dyskiem na SSD. W przeciętnej pracy z siecią zużywa 17-27 watów, ale jak trzeba to odpali w 22s. Windows 7 na VirtualBox i nie będzie przy tym zużywał więcej niż 40 watów. W stanie bezczynności zużywa niespełna ~16 watów. Moc zasilacze to 65W. Prawdę mówiąc ten laptop jest wydajniejszy niż wspomniany wcześniej komputer stacjonarny z procesorem Q6600, a w niemal maksymalnym obciążeniu zużywa niespełna połowę tego, co PC-et podczas przeglądania sieci.

W przypadku komputera stacjonarnego istotna jest kwestia skuteczności zasilacza. W moim przypadku jest to dobrej klasy zasilacza 500W firmy PENTAGRAM, który na oferuje 84% skuteczności.

W sprzedaży dostępne są również płyty ITX z procesorami Intel Atom, na których można postawić serwer [2]. Taka płytka z dyskiem SSD może stanowić naprawdę energooszczędny serwer. Można też zrobić klaster z takich płytek.

Mimo iż netbook z procesorem Atom bije na głowę stacjonarny komputer to nie jest jeszcze urządzeniem najbardziej energooszczędnym do przeglądania sieci. Procesory ARM Cortex są jeszcze oszczędniejsze, dlatego wiąże się wiele nadziei z tą architekturą i już teraz testuje się ją w ramach energooszczędnych serwerów. W tej dziedzinie liczy się stosunek operacji na 1 wat, im więcej tym lepiej i taniej.



Na tym filmie cały klaster pobiera ponad 30 watów, ale jestem pewien, że wynika to z 3 przełączników, których używa. Zobacz również recenzję klastra z sześciu płytek PandaBoard na Phoronix [3].

PandaBoard to bardzo ciekawa płytka, w przeciwieństwie do innych, zwłaszcza Raspberry Pi, który oferuje tylko 256MB pamięci operacyjnej, co w przypadku web-servera mija się z celem. Poza tym w naszym kraju wcale nie jest taka tania, można kupić taniej płytę z procesorem Intel Atom, która pozwala podłączyć dużą ilość RAM-u i szybki, energooszczędny dysk SSD.

PandaBoard ES posiada 1GB RAM i dwurdzeniowy Cortex-A9, co sprawia, że wybrałbym ją, gdybym chciał stworzyć mały klaster web-server. PandaBoard ES jest super, ale ma jedną wadę - cene. W tym miejscu zaczyna się druga części tekstu, która odpowiada na pytanie, dlaczego warto kupić iPad 2.

Dlaczego warto kupić iPad 2

Ponieważ PandaBoard ES kosztuje prawie tyle co prezentowany netbook, czyli 1200 złotych, to należy wziąć pod uwagę, że potrzebujemy dokupić do niej zasilacz, kartę SD, co daje ok. kolejnych 200 zł., a gdzie ekran?

Natomiast iPad 2 ma podobny procesor A5, 512RAM i 16GB pamięci i podobną płytkę w środku - zobacz. Ponadto iPad 2 podczas przeciętnej pracy zużywa 2.5 watów! Teraz dołóżmy do tego baterię 25Wh i super ekran IPS. Obecnie iPad 2 można kupić już za 1700 złotych. Czy złożyłbyś za tą kwotę taki sprzęt z PandaBoard lub innej i jeszcze tak świetnie oprawiony? iPad 2 posiada ładowarkę 10W, a proces ładowania zajmuje ok. 4 godziny, co daje 40W przez godzinę. Powód dla którego lepiej nie kupować najnowszego iPada opisany jest w artykule Secrets Of The iPad 3. Chodzi o podwojenie mocy nowego iPada oraz o super wyświetlacz, przez co nowy iPad pobiera 5 watów i ładuje się ok. 8 godzin podczas, gdy do przeglądania sieci w zupełności wystarczy starszy model.

Oczywiście pozostaje jeszcze konkurencja iPada 2, ale to już kwestia upodobań, bo porządne tablety z Androidem wcale nie są tańsze od iPada 2. Polecam przeczytać Kupić nowego iPada, zapomnieć o Androidzie…

Teraz gdy już wiesz ile energii pobiera przeciętny komputer stacjonarny (ok. 100W), przeciętny laptop 15" (ok. 30W), przeciętny netbook (ok. 12W) i przeciętny tablet (ok. 3W) możesz policzyć ile możesz zaoszczędzić na energii biorąc pod uwagę ile czasu poświęcasz "tylko" na przeglądaniu sieci. O wygodzie nie wspomnę i nie ważne czy to będzie iPad 2, czy ASUS Eee Pad Transformer, najważniejsze że robimy to co chcieliśmy wygodniej i zużywamy tak mało energii jak to tylko możliwe.

Dla przykładu podam jeszcze, że 1.5W pobiera przeciętne urządzenie elektryczne podłączone do sieci.

[Dodano 01.11.2012]
PS. Osobiście wybrałem tablet Nexus 7. Nabyłem go jeszcze przed premierą w Polsce i jestem z niego zadowolony. Widocznie przyzwyczajenie do wolność nie pozwoliłoby mi kupić iPad :)

[Dodano styczeń 2013]
Nexus 7 okazał się za mały, wymieniłem go na Samsung Galaxy Tab 2 10.1. Ponieważ zostały już tylko białe (bo nikt ich nie chciał), więc wziąłem biały i wcale tego nie żałuje. Śmiało mogę powiedzieć, że ten tablet to najlepsza proporcja pomiędzy jakością, ceną i Androidem.

1 New quad-core Intel Atom SoCs target PCs, servers, and tablets
2 Intel DN2800MT
3 12-Core ARM Cluster Benchmarked Against Intel Atom, Ivy Bridge, AMD Fusion


Pozostałe ciekawe dokumenty:
Electrical Engineering and Computer Sciences University of California at Berkeley
Low-Power High Performance Computing

Wednesday, August 15, 2012

SELinux dla zwykłych śmiertelników - wideo z Red Hat Summit 2012

Temat SELinux poruszany jest coraz częściej na wszelkiego typu konferencjach. Zawsze chodzi o to samo, aby przekonać administratorów, że SELinux nie jest taki straszny i nie "wyłączajcie go".
Sesje prowadzi Thomas Cameron, wspomina również, że w dobraniu "życiowych" przykładów pomagał mu Dan Walsh. Thomas prezentacje poprowadził świetnie, bardzo zabawnie, szczerze to nie pamiętam innej prezentacji na temat SELinux, przy której bym się tak uśmiał.


Sunday, August 12, 2012

Opłacalność otwartości

Jeżeli czytasz ten tekst, to prawdopodobnie jesteś użytkownikiem oprogramowania open source. Być może trafiłeś tu, bo wyszukiwałeś/aś informacji na temat praw autorskich i wcale nie używasz systemu GNU/Linux. Tak czy inaczej na pewno wiesz czym jest open source i licencja GNU GPL.

Richard Stallman (autor Victor Powell)
Idea otwartości odniosła sukces w dziedzinie oprogramowania komputerowego, na jej efektach obecnie opiera się cały Internet. Twórcą tej ideii jest Richard Stallman, który wymyślił to już prawie 30 lat temu (1983) i co najważniejsze ok. 10 lat przed komercjalizacją Internetu. Dziś Stallman często uznawany jest za śmiesznego gościa, który wygłasza swoje kontrowersyjne opinie, aby zwrócić na siebie uwagę. Mało kto wie, że jest on naukowcem, który po studiach pracował jako programista w oddziale MIT zajmującym się sztuczną inteligencją. Jeżeli jesteś programistą lub kiedykolwiek miałeś styczność z programowaniem, to przydałoby się wspomnieć, że Stallman oprócz stworzenia licencji GPL i założenia Free Software Foundation napisał również kompilator języka C w ramach umożliwienia dalszego rozwoju dla open source. Więc spróbuj napisać kompilator.

O open source w oprogramowaniu mógłbym pisać długo i ciekawie, ale ten tekst będzie o czymś innym. Sukces otwartego kodu zaczyna przyciągać inne dziedziny twórczości. Skoro otwartość przetrwała 30 lat, nadal się rozwija, a wielkie firmy informatyczne muszą udzielać się w otwartych projektach, to musi w tym "coś" być.

Ogólnie panuje przekonanie, że jeżeli coś jest dobre i cenne, to możesz na tym zarobić. Tutaj pojawia się problem, użytkownicy często uważają, że coś jest za drogie, bo autor chce na tym zarobić fortunę. Czasami mają rację, ale zazwyczaj wysoka cena nie jest skutkiem chciwości autorów.

Tradycyjny model wydawniczy wygląda następująco. Załóżmy, że potrafisz robić coś fajnego i wiesz, że mógłbyś na tym zarabiać. Jednak sprzedaż wcale nie występuje na początku. Musisz się zareklamować, na dodatek trzeba przekonać do tego wyboru ludzi. Sam jako 'one person' nie masz szans przekonać masy ludzi, że twoja twórczość jest lepsza niż to co obecnie jest najpopularniejsze w swojej dziedzinie. Potrzebujesz kogoś, kto to wypromuje, tym kimś są wielkie wydawnictwa. Tylko one mogą sprawić, że coś będzie modne i cenione. Problem polega na tym, że oni na pośrednictwie chcą zarobić więcej niż Ty na swojej twórczość. Może o tym nie wiesz, ale twórcy należą do wąskiego grona osób, które zarabiają najmniej w tym biznesie. Często mówi się, że opłaca im się to tylko dzięki reklamom, gdyby nie one to wydawanie byłoby nieopłacalne, ale to nie jest prawdą. Stara zasada mówi, że jeżeli uda Ci się zgromadzić wielu ludzi w jednym miejscu to można im sprzedać reklamę, a ta jest bardzo dochodowa.

Zapewne już zadajesz sobie pytanie jak można ominąć pośredników i dotrzeć bezpośrednio do klientów. Jedną z takich dróg jest rozdawanie swojej twórczość za darmo! Wiem, brzmi to śmiesznie ale jak pisałem na początku o open source coś w tym jednak jest. Takie podejście zazwyczaj jest wyśmiewane, ale z drugiej strony jak logiczne pomyśleć o obecnym modelu dystrybucji swoich prac to wygląda to mniej więcej tak: stworzyłeś coś i chcesz z tym dotrzeć do ludzi, którym się spodoba, a jednocześnie starasz się im ograniczać dostęp do swojego dzieła, dopóki nie zapłacą.

Okładka "The Power of Open"
Opracowanie "The Power of Open" stara się wyjaśnić na czym polega licencja Creative Commons (CC) i potęga otwartość. Z licencją Creative Commons nie jako miałem do czynienia dodając wpisy na Wikipedii i pisząc na Wikibooks. Jednak rozwijanie otwartych zasobów, a udostępnianie czegoś, co mógłbyś sprzedać to co innego.

Licencja CC została opracowana jako uniwersalna dla materiałów publikowanych w sieci. Ma być nowym wyznacznikiem praw autorskich w cyfrowej rzeczywistości jaką jest Internet.
Postaram się zaprezentować najciekawsze fragmenty tej publikacji w celu zrozumienia korzyści jakie daje licencja CC.

Historia Niny Paley, nowojorskiej reżyserki (strona 12-ta)
W 2008 roku publikacja wyprodukowanego przez nią animowanego filmu “Sita Sings the Blues" opóźniła się ze względu na zaporowy koszt licencji kilku 80-dziesięcioletnich piosenek mało znanej piosenkarki Annette Hanshaw. „Kiedy mój film był w dalszym ciągu nielegalny, a koszty prawników i licencji pochłaniały olbrzymie pieniądze, zażartowałam że jeśli film byłby za darmo, mogłabym przynajmniej sprzedawać T-shirty”, wspomina Paley. Ta idea zaczęła kiełkować w jej głowie i Paley zaczęła szukać informacji na temat ludzi, którzy rozprowadzali darmowe oprogramowanie. “Zdałam sobie sprawę, że tak naprawdę pieniądze pochodzą z materiałów promocyjnych i dobrowolnego wsparcia fanów", mówi Paley.
Jak widać idea otwartości czasami rodzi się z żenady.

Teraz chyba najlepszy cytat jaki znalazłem.
Nigdy nie zarabiałam tyle pieniędzy, co po rozpoczęciu wykorzystywania licencji Creative Commons. Dzięki temu mam wyższe notowania. Nic nie wydaję na promocję. Moi fani robią to za mnie i kupują materiały promocyjne. Dzielenie się pozwoliło mi zaistnieć.
Są tu zawarte dwa najistotniejsze aspekty otwartość. Pierwszy to promocja. Jeżeli udostępnisz swoje dzieło nieodpłatne dla użytku niekomercyjnego i ludziom to się spodoba, to sami na zasadzie rekomendacji rozreklamują twój produkt. Będzie o nim wiedziało dużo osób, a jego popularność będzie potwierdzała jego jakość. Prawdopodobnie ktoś może będzie chciał go użyć w swoich komercyjnych usługach i wtedy zapłaci dla Ciebie za jego wykorzystanie. Zauważ, że taki mechanizm nie pozwoli wypromować słabej jakość produktów, tak jak mogą to uczynić reklamy.

Druga najważniejsza korzyść, to możliwość wybicia się bez inwestowania olbrzymich kosztów, tu walutą jest twoja praca. Udostępnienie swojej twórczość jest czasami jedynym sposobem na zaistnieje w swoim fachu.

Historia Frances Pinter, londyńskiego wydawcy (strona 20-ta)

Najpowszechniejszą formą twórczość w Internecie jest tekst.
Wydawcy martwią się, że udostępniając zawartość za darmo piłują gałąź, na której siedzą, zmniejszając sprzedaż drukowanych egzemplarzy, wierzymy jednakże, że w przypadku pewnych typów książek, bezpłatna oferta promuje druk.
Thinking in Java, 3rd Edition
http://www.mindview.net/Books/TIJ/
Znam doskonały przykład takiej książki, która jest dostępna za darmo w wersji elektronicznej (wer. ang.) na stronie autora, a mimo to odniosła sukces i kupiło ją wiele osób, w tym ja. Sam autor wspomina o tym w przedmowie, nie stery nie mogę jej zacytować, bo jest to zabronione, ale przełożę to na własne słowa.

Autor pisze, iż dostawał wiele wiadomości typu "Udostępniłeś ją za darmo, dlaczego ktoś miałby ją teraz kupować?". Udostępnił ją bo jak pisze, chciał aby była wyjątkowa i nie miał pojęcia co się stanie. Okazało się jednak że była to "najsprytniejsza" rzecz jaką zrobił. Ludzie zaczęli wysyłać poprawki, które w innym wypadku autor najzwyczajniej by przeoczył. Zebrał wiele sugestii i większość z nich wprowadził do kolejnych wydań. Ludzie okazali się "wspaniali", w ramach samowolnej współpracy poświęcali swój czas, aby ulepszyć książkę. Później padały stwierdzenia, "To miłe, że udostępniasz wersję elektroniczną, ale i tak wolę wersję wydrukowaną i oprawiona". Wydrukowanie całej książki na drukarce laserowej wcale nie jest tanie, a już na pewno nie jest wygodne.
Jako podsumowanie całego eksperymentu jeden z czytelników napisał do autora, iż taka forma powinna się stać standardem w wydawnictwie. Najpierw książki miałyby być udostępniane w sieci, a w przypadku dużego zainteresowania byłyby wydawane w formie papierowej. Książka otrzymała wiele nagród, dobrze się sprzedawała, a nawet swego czasu była bestsellerem, aczkolwiek mi aż tak nie przypadła do gustu.

Bruce Eckel udostępniając swoją książkę w sieci zafundował sobie bezpłatną promocję i pomoc w udoskonalaniu kolejnych wydań. W sieci nadal udostępnia poprzednie wydania, a sprzedaje obecne. Zauważ, że właśnie przeczytałeś promocję. o której byłą mowa wcześnie, a to dlatego, że książka została udostępniona za darmo w sieci. Inaczej nie napisałbym tu o niej.

Historia Khana (strona 30-ta)

To moja ulubiona historia, dlatego przytoczę ja w całości:
Salman Khan zarządzał funduszem hedgingowym w Bostonie, kiedy w 2004 roku zaczął udzielać wirtualnych korepetycji swojej 12-letniej kuzynce w Nowym Orleanie z pomocą serwisu Yahoo! Doodle. Ponieważ lekcje się jej spodobały, zaczął wrzucać je na Youtube, aby inni mogli z nich skorzystać. W ciągu dwóch lat jego filmiki zyskały taką oglądalność, że Khan zarejestrował organizację non-profit, rzucił pracę i postanowił produkować krótkie filmy edukacyjne na pełen etat. 
Khan robi wszystkie filmy sam i publikuje je na licencji Creative Commons BY-NC-SA. Obecnie Akademia Khana ma w swoich zasobach ponad 1600 filmów oświatowych, które uczą ponad milion unikatowych użytkowników miesięcznie wszystkiego, od chemii przez algebrę po przyczyny kryzysu na rynku mieszkaniowym. Khan nie ma wykształcenia pedagogicznego, a mimo tego jego materiały są chętnie wykorzystywane, także poza granicami kraju - 40% jego widzów to cudzoziemcy. Akademia Khana jest organizacją non-profit, finansowaną głównie z dotacji i rozwija się każdego roku zwiększając po trzykroć swoje zasoby. Niedawne wsparcie z Fundacji Gatesa pozwoliło powiększyć liczbę pracowników do sześciu osób, a słowa poparcia ze strony Billa Gatesa znacznie podniosły rangę Akademii. 
Khan nie przestaje dostawać codziennie listów od gimnazjalistów, studentów i dorosłych, którzy opowiadają mu z entuzjazmem o dobrych ocenach i wiedzy zdobytej dzięki Akademii. Filmy są dostępne za darmo, można je remiksować i udostępniać innym, więc ludzie tłumaczą je na inne języki, a część lekcji rozchodzi się po świecie w tempie niemal natychmiastowym. 
„Wszystko wskazuje na to, że te materiały są zdecydowanie lepsze niż to, co wielu uczniów dostaje w szkole” , mówi Khan. „A najwspanialszą rzeczą jest to, że nawet gdybym został jutro potrącony przez autobus, to nadal będę uczyć milion osób rocznie. Trzeba dbać o skalę swoich działań, dziś i w przyszłości, także po śmierci”.
Co sprawiło, że facet z bardzo porządną pensją w funduszu hedgingowym rzucił pracę zarobkową, aby robić filmy na Youtube? „Dostałem kiedyś list od pewnego studenta”, mówi Khan. „Jego rodzina była biedna i nikomu z nich jeszcze się nie udało skończyć studiów, a na dodatek nienawidził matmy. Potem natknął się na filmik Akademii Khana. Oglądał go całe lato przed testami kwalifikacyjnymi i odpowiedział prawidłowo na wszystkie pytania. To się jeszcze nigdy nie zdarzyło się na tym kierunku, a on skończył dzięki temu studia z wyróżnieniem. Z tego właśnie powodu rzuciłem pracę”.
Zostały już przetłumaczone pierwsze materiały edukacyjne Akademii Khana na język polski przez Centrum Fizyki Teoretycznej PAN. Dostępne są na oficjalnym kanale YouTube.

To nie wszystkie historii, zachęcam do przeczytania "The Power of Open".
"Jako pisarza bardziej martwi mnie zapomnienie niż piractwo."
Cory Doctorow
Licencje Creative Commons
"Zamiast opracowywać własny zestaw zezwoleń, uniwersytet zaoszczędził sporo na opłatach za usługi prawne wybierając licencje CC.”
Licencja CC jest wolną licencją, jak z cytatu wynika, normalnie trzeba by było za nią zapłacić! Licencja ta istnieje od 2002 roku i tworzy ją organizacja non-profit Creative Commons. Jej założeniem jest opracowanie licencji na zasadzie "niektóre prawa zastrzeżone" i co najważniejsze, to uzyskanie zgodność z prawem większości państw. Dlatego jest ona przekładana na języki w zgodzie z prawami autorskimi innych krajów. W Polsce jest dostępna od 2005 roku (http://creativecommons.pl).

Creative Commons oferuje kilka stopni zezwoleń, przedstawię je pokrótce:

Attribution (by)

Uznanie autorstwa.
Można prawie wszystko tylko trzeba podać nazwę autora.


Noncommercial (nc)

Użycie niekomercyjne.
Nie wolno używać w zastosowaniach komercyjnych.


No Derivative Works (nd)

Bez utworów zależnych.
Nie wolno przekształcać utworu, musi być zachowana oryginalna postać. Np. nie można tworzyć tłumaczeń!

Share-alike (sa)

Na tych samych warunkach.
Utwory zależne muszą być udostępniane na tych samych warunkach.



Dokładniejsze wyjaśnienia dostępne są na stronie Polskiego oddziału Creative Commons.

Zmiany w prawach autorskich

Po wydarzeniach związanych z ACTA i debacie politycznej Ministerstwo Administracji i Cyfryzacji (MAC) powołało zespoły eksperckie pracujące nad zmianami w prawie autorskim, które miałby przystosować aktualne przepisy do nowej "kultury Internetowej".

Jednym z najciekawszych postulatów jest "Dozwolony użytek osobisty". Chodzi w nim o to, aby zalegalizować dozwolony użytek treści cyfrowych rozpowszechnianych w Internecie. Padło również stwierdzenie "domniemania legalności utworów udostępnionych w sieci".

Kolejnym postulatem, który zmierza w tym kierunku jest "Pojęcia „kopii” i „egzemplarza” oraz dozwolony użytek publiczny". Chodzi o to, aby słowo kopia przypisać do treści cyfrowych w Internecie i nadać inną postać prawną.

Wszystko to po to, aby przepisy prawa miały odzwierciedlenie w rzeczywistości. Nie trudno również dostrzec, że proponowane zmiany mają nadać odpowiedni kształt prawny dla nowo tworzonej kultury cyfrowej, której pierwsze ramy określiła licencje Creative Commons.

Oczywiście opisane postulaty sieją wiele kontrowersji i nie wszystkim się podobają. Więcej informacji można znaleźć na stronie MAC.

Wednesday, July 25, 2012

Seccomp (SECure COMPuting with filters)

Trochę ponad pół roku temu pisałem o nowym projekcie zaimplementowanym we FreeBSD 9.0 noszącym nazwę Capsicum, który jest swego rodzaju mechanizmem sandbox framework.

W tamtym czasie w dostępnych publikacjach Capsicum było porównywane do (między innymi) SELinux i seccomp, jako potencjalnie równoważnych technologii w systemie Linux. Seccomp należy do mniej znany rozwiązań, co wynika z jego mniejszych możliwości. Wygląda jednak na to, że w najbliższym czasie ma się to zmienić.

Parę dni temu ukazała się nowa wersja jądra Linux 3.5. Jedną z nowości jest "Seccomp-based system call filtering", czyli rozszerzenie mało używanego mechanizmu seccomp.

Seccomp powstał w 2005 i początkowo miał ograniczać wywoływanie systemowych funkcji przez programy użytkowników do czterech podstawowych: read(), write(), exit() i sigreturn(). W późniejszym czasie Google zadeklarował implementacje swojej przeglądarki Chrome dla systemu Linux. W poszukiwaniu mechanizmów, które mogłyby pozwolić na tworzenie mechanizmów sandbox w przeglądarce Chrome na platformie Linux Google zainteresował się seccomp. Jednak wtedy był on zbyt prymitywny i trochę nadrabiano to przy pomocy SELinux. Nie znaczy to jednak, że Google zrezygnował z seccomp. Rozszerzyli jego funkcjonalność dodając tzw. "mode 2", który pozwalał definiować listę funkcji systemowych, których nie wolno było wywoływać dla procesu.

Nie było to jeszcze zadowalające rozwiązanie, bo o ile jądro kontrolowało operacji procesu np. zapisywanie do pliku, to nie miało żadnej kontroli nad tym do jakiego pliku program mógł zapisywać. Czyli nie kontrolowało kontekstu operacji, oczywiście poza innymi mechanizmami takimi jak prawa do plików.

Tak więc mechanizmem rozwiązującym ten problem jest nowo dodany mechanizm seccomp z filtrami. Powstała koncepcja aby mechanizm seccomp rozszerzyć o możliwość definiowania filtrów, jak w zaporze ogniowej, z tą różnicą że ta dotyczy dostępu do funkcji systemowych a nie socket-ów. Porównanie trafne, bo do implementacji użyto już istniejący i dopracowany pod katem optymalizacji mechanizm filtrowania pakietów BPF (Berkeley Packet Filter).

Teraz seccomp może kontrolować nie tylko typ operacji ale i ich zakres, np. pozwalać na zapis tylko wtedy gdy celem jest standardowe wyjście "sys_write: (fd == 1)". Projekt Chrome zaimplementował już mechanizm snadbox przy użyciu nowej biblioteki libseccomp. Obecnie znane projekty, które już wdrożyły nowe rozwiązanie to vsftpd 3.0.0 oraz OpenSSH 6.0. 17 lipca o implementacji seccomp filtering w swoim projekcie poinformował również deweloper projektu systemd.


Pisząc o seccomp ciągle używa się stwierdzenia "sandbox". Jednak w oficjalnej dokumentacji w prost jest powiedziane, że mechanizm filtrowania funkcji systemowych to nie sandbox. Tak samo sprawa ma się do porównywania z Capsicum i SELinux. Jeżeli chodzi o ten pierwszy to porównanie jest jak najbardziej prawidłowe, ponieważ oba mechanizmy są używane przez programistów w kodzie  programu. Ale Capsicum tworzy swego rodzaju hermetyczne środowisko, a seccomp jest filtrem funkcji systemowych. Efekt jest tylko podobny. SELinux z kolei jest bardziej szerszym rozwiązaniem, dotyczy całego systemu i co najważniejsze jest używanym docelowo przez administratorów. Można go użyć nawet do programów, które nie maja zaimplementowanych żadnych mechanizmów obronnych, albo ograniczyć je jeszcze bardziej tylko do funkcjonalności, z której rzeczywiście korzystamy. W przypadku gdy administrator nie korzysta z SELinux najważniejsze procesy starają bronić się same przez zaprogramowane w nich ograniczenia. Jak widać ma to sens i zysk "ekonomiczny".


Seccomp jest kolejnym mechanizmem zwiększającym szczelność siatki ochronnej oferowanej przez system Linux dla uruchamianych programów.


Więcej informacji:
http://lwn.net/Articles/475043/
http://outflux.net/teach-seccomp/
http://lwn.net/Articles/441232/
http://lwn.net/Articles/332974/



Monday, July 9, 2012

Nowości w Red Hat Enterprise Linux (RHEL6 i RHEL7)

Wideo przedstawia rozszerzenia wprowadzone do obecnie najnowszej gałęzi RHEL6 oraz do nowej gałęzi RHEL7, której pierwsza beta jest zapowiadana na pierwszą połowę 2013 roku.

Omawiany jest również sam cykl rozwoju systemu Red Hat Enterprise Linux. Z sesji dowiemy się na jakie technologie stawia Red Hat lub jakie proponuje w postacji TP (Technology Preview).

Treść prezentacji jest dostępna również w formacie PDF:
RED HAT ENTERPRISE LINUX ROADMAP HIGHLIGHTS





Wednesday, June 6, 2012

Nowe rozszerzenie Multipath w TCP

Ilość urządzeń, za pomocą których łączymy się w sieci ciągle się zwiększa, zwiększa się również ilość technologi używanych w tych urządzeniach do nawiązywania łączności w zależności od miejsca przebywania.
Najlepszym przykładem są nowe tablety. Poza domem możemy korzystać z połączenia poprzez 3G, po dotarciu do domu zaczynamy korzystać z WiFi.

Problem polega na tym, że po rozłączeniu się przez modem 3G tracimy wszystkie nawiązane sesje TCP. Przed nawiązaniem nowego połączenia przez WiFi musimy zestawiać nowe sesje, ponieważ poprzednie zostały zerwane w wyniku zmiany łącza. Dzieje się tak ponieważ protokół TCP został zaprojektowany jako połączenie "end-to-end", a końcami tego połączenia są dwa interfejsy/adresy IP sieciowe. Gdy przełączamy się między 3G a WiFi to zaczynamy korzystać z innego interfejsu/adresu IP i połączenie trzeba nawiązać ponownie.

Jak wygląda rozwiązanie tego problemu przez mechanizm MPTCP przedstawia poniższe wideo.



Dla bardziej ciekawskich polecam obejrzeć całą sesje poświęconą MultipathTCP.



Ponadto polecam stronę implementacji mechanizmu Multipath w jądrze Linux: http://mptcp.info.ucl.ac.be/

Monday, June 4, 2012

ARM może okazać się rewolucją w serwerowni i nie tylko

Wszyscy zainteresowani sprzętem komputerowym znają dwóch głównych producentów procesorów, jakimi są Intel i AMD. Choć ich implementacje są różne zachowują przeważnie zgodny standard dla komputerów biurkowych, czyli tzw. PC-tów. Wyścig między firmami Intel i AMD trwa od wielu lat w wyniku czego użytkownicy otrzymują coraz więcej. Choć architekci nowych układów za każdym razem posuwają się o krok dalej, to nadal nie mogą przestać troszczyć się o wsteczną kompatybilność i zrobić coś inaczej - bo na tym przecież polega rewolucja. Tak więc szansa dla innej architektury nadal gdzieś drzemie, pytanie tylko kiedy się obudzi.

Jak wiemy poza wspomnianymi architekturami firm Intel oraz AMD istnieją również inne, chociażby PowerPC jeszcze do 2006 roku używane w komputerach Macintosh. Wtedy zostały zastąpione przez wielordzeniowe i bardziej wydajne procesory Intel. PowerPC reprezentuje RISC (Reduced Instruction Set Computing), która od koncepcji CISC (Complex Instruction Set Computer) w Intelu różni się tym, że procesor posiada tylko minimalną ilość podstawowych instrukcji, w wyniku czego jego budowa jest prostsza, a cena mniejsza. Związane jest z tym więcej korzyści, jednak jak wszystko ma swoje plusy i minusy. Ostatnio, zaleta ARM jaką jest mały pobór energii i cena zaczynają zyskiwać na wartości.

Procesory ARM cechują się bardzo małym zużyciem energii, dlatego odniosły wielki sukces w urządzeniach mobilnych, takich jak smartfony i tablety. Nowe tablety mogą pracować do 10 godzin na baterii, a system Android opracowany na bazie Linux jest najpowszechniejszym systemem operacyjnym dla tych urządzeń. Branża urządzeń mobilnych rozwija się w zawrotnym tępię, a deweloperzy innowacyjnych dystrybucji Linux zaczynają zastanawiać się nad tym, czy architektura ARM może przynieść korzyści poza platformą urządzeń mobilnych.

Pojawiają się już takie inicjatywy jak 'ARM jako podstawowa architektura dla dystrybucji Fedora'. Dla projektu zaowocowałoby to przypływem ogromnej ilości nowych użytkowników i wzrostem popularności. Dzięki taniemu kosztowi architektury ARM komputery z systemem Fedora byłaby bardziej dostępna w edukacji i wszędzie tam, gdzie wcześniej koszty stanowiły barierę. Niewielka cena za sprzęt świetne współgrałaby z nieodpłatną dostępności systemu Linux. Jak czytamy we wskazanym tekście "sukces procesorów ARM powinien być poważnym ostrzeżeniem dla architektury x86". Ponadto ARM posiada już 64-bitową wersję procesora i mógłby zastąpić architekturę x86_64. Jeżeli ktoś chciałby sobie już wyobrazić serwery z procesorami ARM to wcale nie musi tego robić, otóż one już są, wystarczy zobaczyć.

Najistotniejsze w tym wszystkim jest chyba to, aby zrozumieć, że nowe podejście nie ma na celu zastąpienie obecnego, ale jego rozszerzenie o nowe możliwości. Co do szczegółów to nie ma co opisywać, to trzeba zobaczyć. Jako pierwszy polecam projekt HP Project Moonshot.





Dla zainteresowanych specyfikacją techniczną prezentowanej platformy serwerowej podaje link: http://www.calxeda.com/products/energycards/quadnode

HP nie jest jedynym z pośród największych producentem serwerów, który zainteresował się architekturą ARM i zaproponował już swoje rozwiązania w nowym trędzie. Kolejnym pionierem jest firma Dell, która również zaprojektowała już swoje rozwiązania dla energooszczędnych procesorów ARM.

Jak napisał autor artykułu "Dell ARMs up for hyperscale servers" w portalu The Register, Dell nie projektowałby serwerów bazujących na architekturze ARM, gdyby nikt ich nie chciał.



Co ciekawe rozwiązanie to będzie oferowane z systemem operacyjnym Ubuntu 12.04 LTS w jakiejś komercyjnej odmianie. Więcej szczegółów na temat projektu Copper firmy Dell można znaleźć pod adresem: http://content.dell.com/us/en/enterprise/d/campaigns/project-copper

Rozwój technologii Cloud i w związku z tym wzrost zapotrzebowania na serwery sprawił, że firma Canonical również jest bardzo zainteresowana prezentowaną platformą serwerową. Mark Shuttleworth, człowiek który 'rozkręcił' obecnie najpopularniejszą dystrybucje systemu GNU/Linux uważa że architektura ARM "zatrzęsie" platformą serwerową.





Jeżeli chodzi o wykorzystanie możliwości procesorów ARM w komputerach domowych to jak widać na poniższym wideo (połączenie projektu Raspberry Pi i Fedora) dopiero pracuje się nad takimi wariacjami. Przyznać jednak trzeba, że projekt jest bardzo ciekawy biorąc pod uwagę fakt, że użyta konstrukcja (płytka) kosztuje trochę ponad 100 PLN.



Czy platforma ARM w połączeniu z Open Source przyniesie zmiany o jakich nam się nawet nie śniło? Czas pokaże, w każdym bądź razie na pewno ARM ugruntuje swoją pozycje jako lider rozwiązań energooszczędnych.

Wydaje się że właśnie rozpoczął się wyścigu o miano lidera w rozwiązaniach implementacyjnych architektury ARM. Jeżeli chodzi o rozwiązania softwarowe, to na dzień dzisiejszy Canonical jest na przodzie, ale Projekt Fedora depcze mu po piętach.

Więcej informacji:
http://nullr0ute.com/2012/03/arm-hardware-now-and-the-not-so-distant-future/
http://www.arm.com/community/software-enablement/linux.php
http://www.theregister.co.uk/2011/10/28/arm_holdings_arm_v8/
https://www.linux.com/learn/tutorials/582501-tiny-pluggable-linux-arm-computers-are-red-hot
http://www.debian.org/ports/arm/
http://wiki.freebsd.org/FreeBSD/arm