Kategorie:
35

stali – [Sta]tyczny [Li]nux

Programiści związani z suckless.org pracują nad stworzeniem własnej dystrybucji Linuksa, w której większość aplikacji ma być skompilowana statycznie.

Stali ma być nową dystrybucją Linuksa z ręcznie dobranym zestawem najlepszych programów do każdego zadania i statycznie łączonymi (włączając w to niektóre klienty X jak xterm, surf, dwm, dmenu, mplayer).

Celem jest także redukcja wielkości plików binarnych poprzez nieobecność glibc i innych zbloatowanych bibliotek GNU, jeśli to możliwe (wczesne doświadczenia wykazały, że statycznie dowiązane pliki binarne są zazwyczaj mniejsze niż ich dynamicznie powiązane z glibc odpowiedniki).

Z powodu ubocznego efektu jakim jest szybsze uruchamianie się statycznych binarek, dystrybucja koncentruje się także na uzyskaniu większej wydajności.

Przewiduje się, że pierwsza działająca wersja zostanie wydana w listopadzie 2009 roku.

Główne założenia projektu:

  • Pliki binarne są głównym priorytetem, każdy plik wykonawczy jest statycznie łączony. Potencjalnie inny format wywołań niż ELF, ponieważ ELF został stworzony głównie z myślą o dynamicznych powiązaniach.
  • Jądro jest pojedyńczym monolitem bazującym na Linuksie, standardowo jądro nie obsługuje modułów
  • Program rozruchowy to lilo (twórcy stali zastanawiają się nad rozwojem lilo)
  • Początkowo brak initrd
  • Być może ładowanie całego systemu do pamięci RAM?
  • Inicjalizacja systemu powinna opierać się tylko o jeden skrypt /etc/rc.{start,stop}

Wygląd systemu plików:

Katalog /usr zostanie usunięty, ponieważ według twórców jest bezużyteczny, aplikacje niezwiązane z podstawowym systemem być może znajdą się w katalogu /local.

  • /bin – wszystkie pliki wykonawcze
  • /bin/kernel – jądro Linuksa
  • /dev – urządzenia, być może z pominięciem udev i innych rozwiazań używanych obecnie w Linuksie, im prościej tym lepiej
  • /etc – konfiguracja systemu, aplikacji, sieci, użytkowników
  • /etc/rc.{start,stop} – skrypt startowy
  • /home/root – katalog roota
  • /home/* – katalogi użytkowników
  • /include
  • /lib – biblioteki używane na platformie deweloperskiej, potencjalnie statyczne
  • /local – być może?
  • /mnt
  • /proc – procesy
  • /share – strony podręcznika man, lokalizacje
  • /sys
  • /tmp – pliki tymczasowe
  • /var – cache, logi, spool i run
  • /usr -> / (prawdopodobnie miękkie dowiązanie z powodu niedziałających aplikacji)

Aktualizacja systemu polega na synchronizacji przez rsync z serwerem dystrybucji.

Typowy system końcowego użytkownika:

[anselm@x200s rootfs]$ tree
.
|-- bin
|-- dev
|-- etc
|-- home
| `-- root
|-- mnt
|-- proc
|-- sys
|-- tmp
`-- var

Notatka: Na hoście końcowego użytkownika nie znajdziesz katalogów /lib, /include etc. Potrzebuje on tylko tego co naprawdę jest wymagane i nic poza tym.

Rozwój:

Postępy prac nad stali można śledzić pobierając najnowsze źródła używając komendy:

git clone git://sta.li/stali

Wielkość ok. 1,2 GB.

Warto też zapoznać się z najczęściej zadawanymi pytaniami, niektóre odpowiedzi wyjaśniają decyzję podjęte przez twórców stali.

Więcej informacji: http://sta.li/

«
»

Znalazłeś literówkę? Zgłoś ją używając formularza!


Jeśli uważasz, że ten nius jest nieobiektywny, przedstawia nieprawdziwe wydarzenie, jest spamem lub nie spełnia standardów serwisu, napisz raport.

Niusy na podobny temat:

Komentarze (RSS)

Komentarze są prywatnymi opiniami dodających je osób. Prosimy o zachowanie kultury wypowiedzi. Komentarze obraźliwe oraz obniżające poziom serwisu będą usuwane. Więcej w regulaminie komentowania.

157 komentarzy

zwiń wątek blinkkin  14 listopada 2009 o godz. 14:48 #
Gravatar

Po stworzeniu przeglądarki surf, panowie z suckless postanowili stworzyć własną dystrybucję. Stali będzie prawdopodbnie opierać się głównie o ich pozostałe projekty i aplikacje zgodne z ich założeniami.

Co ciekawe grupa suckless.org pracuje obecnie nad nowym klientem poczty, na liście mailingowej była też mowa o edytorze dokumentów, organizerze i kilku innych narzędziach. Większość aplikacji w dystrybucji będzie zapewne spod znaku CLI.

Projekt mnie zainteresował, bo większość pomysłów jest przeciwne względem głównego nurtu. Pozostaje trzymać kciuki i czekać na owocne mam nadzieję wyniki.

btw. Wyszedł mi ciut długi artykuł, być może po dopieszczeniu bardziej nadawałby się na stronę jakilinux.org niż linuxnews.pl.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek blinkkin  14 listopada 2009 o godz. 15:07 #
Gravatar

Zapomniałem wspomnieć też o zależnościach, które w wielu przypadkach po prostu znikną. Wersji poszczególnych elementów systemu też prawdopodobnie nie trzeba będzie pilnować – teoretycznie nic nie stoi na przeszkodzie, żeby korzystać z kilkuletniej binarki na świeżo postawionym systemie.

Z tych powodów większość możliwości oferowanych przez menedżery pakietów jest zbędna. Być może stali nie będzie miała żadnego lub będzie on bardzo prosty.

zwiń wątek szatox  14 listopada 2009 o godz. 23:03 #
Gravatar

Usunięcie instytucji managera pakietów, to podejście trochę windowsiowe. Nawet, jeżeli nie będzie potrzeby dbania o zależności, to instalacja wszystkiego z jednego miejsca jest zwyczajnie wygodniejsza niż szukanie osobno każdego programu, z którego będzie się korzystać. Szczególnie, jeżeli mając managera pakietów można wyszukać w dostępnym zbiorze oprogramowania zdolnego do (…)

 
zwiń wątek NDyA  15 listopada 2009 o godz. 17:42 #
Gravatar

Przydałby się menedżer, który by kompilował ze źródeł program do wersji statycznej. Jeżeli założeniem jest udostępnienie tylko przygotowanych aplikacji to projekt się nie uda.

 
 
 
zwiń wątek azhag  14 listopada 2009 o godz. 14:54 #
Gravatar

Ciekawe. Zobaczymy jak wyjdzie.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek 3ED  22 listopada 2009 o godz. 14:26 #
Gravatar

Pewnie będzie grube.. Zamiast 2GB będzie 10GB w imię windows-like statyczności. Użytkownik innej dystrybucji zainstaluje i będzie się dziwił co tu tyle zajmuje miejsca. ;D

 
 
zwiń wątek nat  14 listopada 2009 o godz. 15:10 #
Gravatar

pliki sa wykonawcze, czy wynonywalne?..

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek blinkkin  14 listopada 2009 o godz. 19:34 #
Gravatar

A cholera go wie? Ostatnio rzadko czytam fachową literaturę w języku polskim. Wiele rzeczy bym prawdopodobnie nie tłumaczył, bo "zazwyczaj myślę po angielsku", jeśli chodzi o żargon informatyczny.

Wolę zostawić tę sprawę polonistom (może się tutaj jakiś znajdzie) i dostać opierdziel, jeśli popełniłem jakiś błąd. Sens przekazanej treści chyba pozostał, więc nie jest źle.

zwiń wątek nat  14 listopada 2009 o godz. 19:55 #
Gravatar

nie bardzo. mi sie wydaje, ze executive to wykonawczy,

executable — wykonywalny. poza tym, kto mowi o opierdzielu? ; )

 
 
zwiń wątek kamo  14 listopada 2009 o godz. 20:52 #
Gravatar

wykonawcze- (wg mnie) cos jak włądza wykonawcza (dopowiedz sobie sam)

zaś wykonywalne to które można wykonać

zwiń wątek nat  15 listopada 2009 o godz. 10:57 #
Gravatar

ja nie musze sobie dopowiadac, po prostu razi mnie

/bin – wszystkie pliki wykonawcze

dlatego zwrocilem uwage i zarobilem 3- : )

 
 
 
zwiń wątek SlashBeast  14 listopada 2009 o godz. 15:11 #
Gravatar

Pierwsza wielka innowacja od czasow GoboLinuksa.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek blinkkin  14 listopada 2009 o godz. 15:22 #
Gravatar

Subiektywnie patrząć Tiny Core Linux wydaje mi się sporą innowacją, jeśli chodzi o świat Linuksa. Instalacja typu frugal została podniesiona do zupełnie nowego poziomu.

Zresztą TCL jest moim osobistym zdaniem pierwszą dystrybucją, w której instalacja frugal jest warta świeczki.

 
 
zwiń wątek blinkkin  14 listopada 2009 o godz. 15:27 #
Gravatar

Wkradł mi się drobny błąd w tytule newsa. Początkowo miał on brzmieć "stali – dystrybucja [Sta]tycznego [Li]nuksa", później to zmieniłem. Niestesty "ks" zamiast "x" zostało w nazwie Linux :/ (kolejny raz cicha prośba do redaktorów serwisu).

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek blinkkin  14 listopada 2009 o godz. 16:02 #
Gravatar

Odnośnik do suckless.org też ucieło – niepoprawny adres :(

Widocznie zbytnio spieszyłem się z publikacją tego newsa…

 
zwiń wątek antoszka  15 listopada 2009 o godz. 20:42 #
Gravatar

Słuchałem niedawno audycji lingwistów w dwójce (PR) i jak byk jest konsensus, że jest już prawidłowo odmieniać wyrazy z x-em zarówno przez "x" jak i przez "ks". Przykro mi, że w ten sposób czepliwi (włącznie ze mną) będą mieli jeden powód mniej do mędzenia.

 
 
zwiń wątek Stali[n]  14 listopada 2009 o godz. 16:52 #
Gravatar

Ja tylko wplotę delikatny akcent humorystyczny: jeśli z nazwy Linux zabraliby jedną literkę więcej, to byłby:

Stalin

Fajnie by to brzmiało w newsie, przykładowo: Twórcy Stalina

:)

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek blinkkin  14 listopada 2009 o godz. 19:14 #
Gravatar

Ciekawe czemu sam tego nie zauważyłem? W każdym razie wyszło całkiem zabawnie, chociaż słowo Stalin powinien kojarzyć się bardzo negatywnie. Może w logo umieszczą jakiś akcent – młot lub sierp?

zwiń wątek nat  14 listopada 2009 o godz. 19:56 #
Gravatar

Bierut: a tu mamy Pl. Zbawiciela

Stalin: o.. przesada..

zwiń wątek blinkkin  14 listopada 2009 o godz. 20:54 #
Gravatar

Będąc przy kawałach.

Richard Stallman, Linus Torvalds, i Donald Knuth zaangażowali się w dyskusję, kto wywarł największy wpływ na informatykę.

Stallman: "Bóg mi powiedział, że stworzyłem najlepszy na świecie edytor!"

Torvalds: "Ano, Bóg mi powiedział, że stworzyłem najlepszy system operacyjny na świecie!"

Knuth: "Zaraz, zaraz, nigdy tego nie powiedziałem."

Koniec OT.

 
 
 
zwiń wątek antoszka  15 listopada 2009 o godz. 20:33 #
Gravatar

Była dokładnie taka propozycja (stalin) w czasie dyskusji na #suckless o nazwie projektu. Na szczęście została zflame'owana i stanęło na stali. Później już okazało się, że domena sta.li jest wolna (wstępnie przeznaczona i zarezerwowana na projekt była stali.org, o ile pamiętam).

[a]

 
 
zwiń wątek krzabr  14 listopada 2009 o godz. 17:17 #
Gravatar

To jest prawdziwie ciekawy news :D

Do głównego wątku dorzuce że podobną drogę rozwoju wybrali twórcy – opensolaris for arm i AuroraUX . Czyżby ten system miałbyć celowany w urządzenia wbudowane ? TAM się nadają takie rozwiązania dające szybkość i stabilność , przy dodaniu zarządzania Real-Time to może być wręcz ideał do takiego typu urządzeń .

Więc czekam na dalszy rozwój tej dystrybucji :)

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek blinkkin  14 listopada 2009 o godz. 18:39 #
Gravatar

"Organizacja" suckless.org jest silnie związana z systemem http://plan9.bell-labs.com/plan9/ (narzędzia przez nich stworzone czerpią inspiracje garściami z tego systemu). Warto przejrzeć następujące strony:

Suck Less Manifest – zainteresowanym polecam też lekturę na temat menedżerów okienek

The Duct Tape Programmer

Harmful Stuff – bardziej szczegółowy opis niektórych "złych" aplikacji znajdziecie w menu po lewej stronie

Project Ideas for Future GSoCs – co panowie z suckless.org planują?

The Rise of "Worse is Better"

W większości pokrywa się to z filizofią tejże organizacji. Czego można się spodziewać po stali (prywatne przypuszczenia)?

Proste narzędzia, które spełniają jedną funkcję, czyli pozbycie się z systemu kobył.

Powolne usuwanie autohell – programiści z SL nienawidzą narzędzi automake i autoconf.

Kod systemu (przyp. userland) wolny od "ciężkich" obiektowych języków programowania, czyli pozostaje czyste C i Go*.

Brak "magików" i konfiguracji w postaci XML/SGML – konfiguracja w postaci czystego tekstu lub bezpośrednio w kodzie źródłowym

Dokumentacja w postaci stron podręcznika man.

Wymiana userlandu GNU na inne narzędzia (tcc zamiast gcc, ulibc/bionic zamiast glibc, pdksh/ash/dash zamiast basha etc).

Licencja MIT, gdzie to możliwe.

* Jeden z programistów przepisuje dwm w języku Go.

Co do dynamicznego linkowania to ludzi z SL uważają, że sposób jego użycia został wypaczony. Mówią tak dynamicznemu ładowaniu, ale pokazują wyraźną niechęć wobec współdzielenia bibliotek etc.

btw. Miałem zamiar opisać kafelkowe (tiling) menedżery okienek na przykładzie narzędzi stworzonych przez suckless.org: dwm, wmii, dmenu. Jest to bardzo ciekawy temat, bo coraz większe monitory i/lub kilka ich sztuk sprawiają, że prawo Fittsa przestaje działać. Jest to problem biorąc pod uwagę, że większość współczesnych interfejsów zostało stworzone w oparciu o tą tezę.

zwiń wątek Low Year  14 listopada 2009 o godz. 21:53 #
Gravatar

Po rzuceniu okiem na te linki wiem już, czemu Plan 9 to niszowy system ;)

Poważnie, goście robią wrażenie pr0 którzy jako jedyni na świecie wiedzą jak to jest "doing it right". Z linków które podałeś:

Designing simple and elegant software is far more difficult than letting ad-hoc or over-ambitious features obscure the code over time.

Czyli to co ONI napiszą jest "simple and elegant", w przeciwieństwie do całej reszty z "over-ambitious features". O ja niegodny.

Most hackers actually don’t care much about code quality.

Ale nie oni, oczywiście.

Najlepszy jest jednak ten spis software'u, że wymienię kilka "harmful things": XML, C++, Qt (tu jako alternatywa widniało "textual interfaces"), SQL. I dopisek:

At the moment a detailed rationale is not provided for most of this, so figuring out why some things are considered more or less harmful than others is left as an exercise for the reader.

Oh yeah kid, you're so fscking clever.

zwiń wątek blinkkin  15 listopada 2009 o godz. 1:32 #
Gravatar

Plan 9 nie przyjął się z wielu powodów (licencja, słabe wsparcie i prawdopodbnie gorszy, ale sprawdzający się w swojej roli system – pochodne Uniksa). Jednak wiele z jego koncepcji zostało przeniesionych do innych systemów

Wszystkiego nie che mi się wymieniać, najświeższy przykład to język programowania od Google, czyli Go. Wystarczy spojrzeć kto go spłodził (Rob Pike, Ken Thompson), na jakiej platformie był początkowo rozwijany (Inferno) i czym był inspirowany (Limbo).

Projekty suckless nie każdemu odpowiadają, jednak mają swoich wiernych użytkowników. Każdego rusza co innego, jedna osoba zachwyci się efektami compiza/beryla, druga prostym skryptem powłoki.

Zapewne mam podbne podejście do całej filozofii GNU jak ty do zawartości odnośników, które podałem. Ot zwykłe poglądy na dany temat.

 
zwiń wątek po76  18 listopada 2009 o godz. 12:45 #
Gravatar

Projekty suckless nie każdemu odpowiadają, jednak mają swoich wiernych użytkowników. Każdego rusza co innego, jedna osoba zachwyci się efektami compiza/beryla, druga prostym skryptem powłoki.

Wszystko jest dla ludzi. W domciu na lapku używam – dla wygody gnome. Jak jestem poza domem (czyli na baterii), odpalam system na innym inicie (wyłączona połowa usług "stacjonarnych" – np. cups, bluetooth), w konsoli używam dvtm a na nim fincha, moc, elinks. Jeśli potrzebuję środowiska graficznego – uruchamiam dwm. System zużywa mniej zasobów, a ja nie muszę męczyć się touchapadem, gdyż 90% czynności mogę wykonać z klawiatury (mógłbym 100% ale vimperator to nie moja półka :) )

 
 
zwiń wątek Maciej Piechotka  15 listopada 2009 o godz. 2:44 #
Gravatar

- "Powolne usuwanie autohell – programiści z SL nienawidzą narzędzi automake i autoconf." – tylko jak na razie nie ma dobrej alternatywy – zazwyczaj czegos brakuje. Wiekszosc problemow zreszta wynika z niepoprawnego pisania skryptow

- "Kod systemu (przyp. userland) wolny od “ciężkich” obiektowych języków programowania, czyli pozostaje czyste C i Go*." – hmm. Jesli nie ma powanych problemow z predkascia to nazwalbym to zlym nawykiem przy programowaniu..

- "Brak “magików” i konfiguracji w postaci XML/SGML – konfiguracja w postaci czystego tekstu lub bezpośrednio w kodzie źródłowym". Jesli chodzi o XML/SGML to OK. Co jednak nalezy rozumiec przez "magika" – automatyczna konfiguracje? Jesli tak to IMHO jest to zle rozwiazanie

zwiń wątek Low Year  15 listopada 2009 o godz. 20:07 #
Gravatar

Pewnie wizardy.

 
zwiń wątek Maciej Piechotka  16 listopada 2009 o godz. 4:33 #
Gravatar

Tzn. zamiast mi X11 ładnie wykrywać karte intela, mysz etc. (bez potrzeby posiadania /etc/X11/xorg.conf) mam wydawać X -configure czy podobnie? Rozumiem – automatyczna konfiguracje nalezy czasem poprawic ale jak ESR pisal – system powinien wykrywac to co da sie wykryc ("UNIX. Art of programming" rozdzial o plikach konfiguracyjnych).

 
 
 
 
zwiń wątek ufoludek  14 listopada 2009 o godz. 17:54 #
Gravatar

To miłe. Zniknie upierdliwość pt. „jak chcesz mieć najnowszą wersję programu, to musisz zaktualizować 3/4 systemu jako zależności”.
Tak, tak, wiem, że dystrybucje kompilowane ze źródeł tego problemu nie mają, ale kompilowanie sobie np OpenOffice.org jest, hmmm, czerstwe.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek Sławek  14 listopada 2009 o godz. 18:08 #
Gravatar

Przecież od dawna jest instalator OpenOffice. Ja nie miałem problemu z nim, lecz tylko raz go testowałem. Wiele innych programów też ma swoje instalatory lub są udostępniane w wersji portable.

zwiń wątek ufoludek  14 listopada 2009 o godz. 18:44 #
Gravatar

@Sławek: wiem, że jest :) OO.o jest taką alegorią Dużego I Przeraźliwie Długo Się Kompilującego Programu. Możesz tam sobie wstawić dowolny duży program mający dużo zależności. Najlepiej coś zależącego od KDE.

Swoją drogą OO.o instaluje się podobnie jak to jest przyjęte na Makach — ma swoje zależności wpakowane w paczkę i już (o ile pamiętam w czasie instalacji go na gentoo kompilowała się jego własna kopia pythona i glibca, ale to było parę lat temu, więc może się coś zmieniło).

zwiń wątek Maciej Piechotka  15 listopada 2009 o godz. 2:46 #
Gravatar

Z Gentoo staraja sie wyrzucac 'wlasne wersje' bo powoduja problemy przy updatach. Tzn. trzeba znalezc i zalatac wszystkie takie biblioteki a nie skopiowac ebuild. Jak jest w OOo to nie wiem.

 
zwiń wątek Sławek  15 listopada 2009 o godz. 9:39 #
Gravatar

No właśnie. Jeżeli pójdziemy drogą zbliżoną do Windows czy też(jak w tym wypadku) bardziej przesadną, to wywołamy ogromne problemy z aktualizacjami i nigdy nie będziemy mogli czuć się bezpiecznie.

Dodam jeszcze, że z tegóż powodu dystrybucja powinna mieć też menadżer paczek/pakietów i jakieś podstawowe biblioteki, jednak aplikacje dołączone z nią nie koniecznie muszą z tego korzystać.

PS:

Zastanawiam się dlaczego /usr/lib/nazwa_paczaki się nie przyjmie? System mógłby sam dociągać brakujące biblioteki, jednak pakować je do tamtego miejsca.

 
 
 
 
zwiń wątek marcinsud  14 listopada 2009 o godz. 18:00 #
Gravatar

A ja z ciekawości spytam, czy taka statyczna binarka odpali się na każdym linuksie czy tylko na tym?

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek blinkkin  14 listopada 2009 o godz. 19:26 #
Gravatar

Jeśli chodzi o statyczne binarki ze stali to prawdopodobnie nie, ponieważ w tej dystrybucji zostanie zmieniona hierarchia katalogów i zostanie użyty inny system wywołań niż ELF (starusienki a.out?).

Natomiast z tego co mi wiadomo wiele mniejszych dystrybucji przepakowuje pakiety z Slackware'a. Powodów jest kilka – paczki nie są mocno rozdrobnione, są dosyć "czyste" (skompresowane archiwum bez zbędnych informacji) i zostały skompilowane bez udziwnionych flag. Kilka osób tworzyło w ten sposób rozszerzenia dystrybucji Tiny Core Linux, nie wiem czy tak jest nadal.

zwiń wątek vampire  14 listopada 2009 o godz. 23:16 #
Gravatar

sama binarka sie odpali – to ze program moze potrzebowac costam z drzewa katalogow to juz inna sprawa. Wiele programow nie potrzebuje nic poza samym soba + bibliotekami (ktore w tym przypadku zawieraja sie w nim).

 
 
zwiń wątek vampire  14 listopada 2009 o godz. 23:14 #
Gravatar

praktycznie tak, pod warunkiem zgodnosci architektury….

zwiń wątek Czajnik  15 listopada 2009 o godz. 7:56 #
Gravatar

…oraz zgodności na poziomie sys-call'i. Nie pamiętam już kiedy, ale gdzieś tam po drodze przesiadka na nowszych kernel wymagała zmiany glibc'a (chyba przesiadka z serii 2.4.x na 2.6, ale nie jestem pewien). Tak czy inaczej, taka binarka jest zgodna z systemem tak długo, jak długo nie zmienia się interfejs samego kernela, czyż nie?

W sumie to nie do końca rozumiem całą inicjatywę. Biblioteki dzielone i dynamiczne linkowanie nie powstały przypadkiem. Binarki się szybciej ładują, no pięknie, ale każda binarka ciągnie za sobą swoją kopię tego samego kodu bibliotek, zamiast grzecznie dzielić z innymi strony pamięci z tymże kodem. Jak dla mnie pomysł statycznego linkowania wszystkiego jest przynajmniej dziwny.

 
 
 
zwiń wątek Otaq  14 listopada 2009 o godz. 18:10 #
Gravatar

Przypomina mi to zasadę na jakiej opiera się oprogramowanie na Windows. Tam wszystko jest statycznie kompilowane i chyba nie ma współdzielonych bibliotek itp.

Często zwolennicy Windowsa (i pewnie nie tylko) używają argumentu, że lepiej mieć wszystko kompilowane statycznie zamiast współdzielić biblioteki. Teraz będzie można porównać oba podejścia w miarę obiektywnie (ten sam system, te same programy) i zobaczyć co sprawdza się lepiej. Jeśli sprawdzi się Stali to pewnie więcej użytkowników przesiądzie się na ten system i to on stanie się "główną gałęzią" (ewolucja) a jeśli będzie odwrotnie to "linuksiarze" będą mieć jeszcze jeden argument przeciwko "windowsiarzom" i wybuchnie kolejny wielki flamewar. Tak czy inaczej będzie ciekawie ;)

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek wujek_bogdan  14 listopada 2009 o godz. 18:34 #
Gravatar

W windowsie też są przecież współdzielone biblioteki. To, że aplikacje dostarczają własne statycznie, bądź nie statycznie kompilowane biblioteki wynika z tego, że w windowsie nie mamy menadżera pakietów, który dbałby o zależności. Każdy program ma swój niezależny instalator. Więc fakt ten nie wynika z konstrukcji systemu, tylko raczej ze sposobu instalacji oprogramowania.

 
zwiń wątek Low Year  14 listopada 2009 o godz. 18:35 #
Gravatar

Tam wszystko jest statycznie kompilowane i chyba nie ma współdzielonych bibliotek itp.

Ależ ma, tylko z reguły każdy program trzyma swoją kopię biblioteki (plik dll) we własnym katalogu. Co nie zmienia faktu, że linkuje do niej dynamicznie. Bibliotekę można też umieścić w %SystemRoot%\system32, wtedy będzie wspólna (i to jest różnica między Windowsem a UNIX-like, gdzie standardowe jest to drugie rozwiązanie).

Oczywiście występują też programy linkowane statycznie, ale żadna z tych platform takiego linkowania nie narzuca (ani też nie zabrania).

zwiń wątek Artwi  14 listopada 2009 o godz. 20:40 #
Gravatar

Bibliotekę można też umieścić w %SystemRoot%system32, wtedy będzie wspólna (i to jest różnica między Windowsem a UNIX-like, gdzie standardowe jest to drugie rozwiązanie).

No właśnie, że w Windowsach nie za bardzo tak można i programy trzymają swoje kopie raczej z przymusu. Mianowicie w Windowsach brak jest menadżera pakietów, a jednym z największych problemów, kłopoty z kompatybilnością różnych wersji dll. Nie zawsze programy chcą chodzić na nowszej wersji dll i dochodziło do prawdziwych wojen aplikacji na podmienianie/przywracanie wersji dll i wynikające stąd "gryzienie" się aplikacji i omija się to umieszczając konfliktowe dll w katalogach własnych aplikacji… Oczywiście i w otwartych systemach są kłopoty z aplikacjami niedziałającymi na bibliotekach w nowszej wersji, ale z uwagi na otwarte źródła jest to szybciej usuwane, a z uwagi na sposób dystrybucji, łatwo pobrać aktualną wersję. Tymczasem komercyjne firmy po sprzedaży często klientów mają gdzieś (zwłaszcza w parę lat po zbyciu produktu) albo tak pozabezpieczają produkt przed kopiowaniem, że po zmianie wymagałby nowych kluczy sprzętowych czy płytek instalacyjnych i firmom nie uśmiecha się wysyłania tego na swój koszt do klientów. Dlatego własne kopie dll w Windows to często konieczność (ze wszystkimi wadami tego rozwiązania).

zwiń wątek Low Year  14 listopada 2009 o godz. 21:22 #
Gravatar

Dlatego napisałem "można". Jakby nie patrzeć, możliwość taka jak najbardziej istnieje ;)

 
zwiń wątek ufoludek  15 listopada 2009 o godz. 10:16 #
Gravatar

@Artwi: "a z uwagi na sposób dystrybucji, łatwo pobrać aktualną wersję." — drobne sprostowanie: nie aktualną wersję, tylko najnowszą, jaką opiekunowie Twojej ulubionej dystrybucji wpakowali do repozytorium. Często jest to wersja kilka numerków niższa, niż aktualna.

 
zwiń wątek _qaz  15 listopada 2009 o godz. 22:47 #
Gravatar

akurat jeśli chodzi o Windows, to tak wielkiego problemu z bibliotekami dynamicznymi już nie ma. Rozstrzał wersji bibliotek systemowych (siedzących w %windir%/system32) dla developera jest zazwyczaj zupełnie pomijalny. Do komercyjnych aplikacji na Windows dołączane są zazwyczaj w instalatorach ms-owe package z runtime-m C/C++ od konkretnej wersji VS, które są (o ile już ich nie ma)instalowane w systemie – ale nie nadpisują innych wersji – a instalowane są 'side by side' – co w praktyce znaczy, że kilka wersji runtime'ów jest dostępne dla aplikacji – w pliku konfiguracyjnym linkera podajemy jaka nas wersja interesuje, lub robimy redirecta na inną konkretną/najnowszą.

 
zwiń wątek iron_irony  16 listopada 2009 o godz. 13:29 #
Gravatar

@Artwi tylko, że w czasie gdy w Linuksie powstaje zazwyczaj 20 wersji nowszej biblioteki, w Windows powstaje jedna stabilna wersja. Jest po prostu mniej kolejnych wersji bibliotek. Poza tym autorzy bibliotek z reguły dbają o to, żeby nowa wersja była binarnie kompatybilna ze starą.

Problemem pod Linuksem jest brak ujednoliconej dla wszystkich dystrybucji listy stabilnych w danym momencie bibliotek.

 
 
 
zwiń wątek marcinsud  14 listopada 2009 o godz. 20:35 #
Gravatar

koledze chodziło o mac os chyba

zwiń wątek Czajnik  15 listopada 2009 o godz. 8:07 #
Gravatar

Że niby na Mac'u wszystko jest linkowane statycznie? Od kiedy?

zwiń wątek marcinsud  15 listopada 2009 o godz. 14:38 #
Gravatar

nie tyle kompilowane statycznie co każdy zewnętrzny program korzysta ze swojej kopii bibliotek z którymi jest dostarczony, odpadają zależności, ale za to pliki instalacyjne są 2 razy większe. Czy są linkowane statycznie czy dynamicznie nie wnikam.

 
 
 
zwiń wątek jarek  14 listopada 2009 o godz. 22:45 #
Gravatar

> Przypomina mi to zasadę na jakiej opiera się oprogramowanie na Windows.

> Tam wszystko jest statycznie kompilowane i chyba nie ma współdzielonych

> bibliotek itp.

Wiesz co piszesz, czy po prostu piszesz co wiesz?

Podoba mi sie idea statycznie skompilowanego distro: pojawia

sie bug w OpenSSL, zmiast podciagnac 100kB dynamicznej biblioteki

targam 50MB wszystkich pakietow ktore jej uzywaja.

zwiń wątek Przemek  15 listopada 2009 o godz. 1:29 #
Gravatar

z drugiej strony: dostarczam klientowi aplikację, czy ich zestaw. bazuje to to na openssl (czy jakiejkolwiek innej bibliotece). i co jak znajdą dziurę w tym openssl?

- trzeba zadbać, by system (a nie tylko moja aplikacja) była zgodna z nową wersją (!)

- jak sobie klient przeinstaluje system, to musi pamiętać, by wpierw zaktualizować tego openssl'a, bo moja aplikacja może nie działać ze starym (!)

czy statycznie, czy dynamicznie, to kwestia do czego tego chcesz stosować. dostarczam kilku klientom trochę softu i wszystko jest linkowane statycznie. to kwestia wygody – klient dostaje nową wersję binarki i nie musi sprawdzać, czy 1500 bibliotek jest w wersjach, z którymi zadziała.

w domowym kompie wolę (tak jak mówisz) zaktualizować jedną bibliotekę i zapomnieć. do klienta wolę nie jeździć za często na 'awarie' – bo to przede wszystkim __cholernie__źle__ wygląda z biznesowego punktu widzenia, jeśli z Twoim softem są jakiekolwiek problemy.

takie moje 0,02PLN

zwiń wątek y0g1  15 listopada 2009 o godz. 8:18 #
Gravatar

Najlepiej dostarczac klientowi zrodla + wsparcie.

Jesli naprawde masz tak duzo softu, na dodatek krytycznego – to zazwyczaj wsparciem obejmuje sie tez system na ktorym dziala. Nie wyobrazam sobie sytuacji w ktorej klient sam podejmuje sie konserwacji krytycznego systemu, czy jego aktualizacji. Jesli jestes producentem oprogramowania rozprowadzanego publicznie – musisz dbac o jego aktualizacje i zgodnosc z aktualnymi wersjami systemu na ktorym ma dzialac. Biblioteki dzielone nie sa zle same w sobie. Ulatwiaja zarzadzanie systemem, prace developerskie a przedewszystkim wykrywanie bledow i ich usuwanie. Te kilka procent wydajnosci, ktore zyskaja, maja sie nijak do nakladu pracy jakim sie obloza. Jesli tego chca, ich sprawa,

Z drugiej strony – jesli jestes producentem oprogramowania, nic nie stoi na przeszkodzie rozprowadzac go w postaci statycznej, z uwzglednieniem kilku wersji libc, architektur. Lepsze to, niz wymuszac na kliencie przejscie na stali.

 
zwiń wątek vshader  15 listopada 2009 o godz. 15:58 #
Gravatar

System pakietowania oprogramowania jest z założenia przystosowany bardzej do softu Open Source niż komercyjnego. Programy OS są dostarczane zwykle przez producenta dystrybucji systemu i ma on pełną kontrolę nad wersjami pakietów u użytkowników – może więc zadbać o ich wzajemną kompatybilność. W przypadku softu komercyjnego (przy czym mam na myśli raczej oprogramowanie sprzedawane masowo niż tworzone na zlecenie), klient może go sobie zainstalować niemal na dowolnym systemie z niemal dowolnymi wersjami bibliotek. Dodatkowo, multum dystrybucji uniemożliwia stworzenie sensownych pakietów instalacyjnych.

Podsumowując: dla programów FLOSS system pakietów jest rozwiązaniem najlepszym, w dodatku sprawdzającym się od dawna. Producentom oprogramowania komercyjnego zostaje niestety linkowanie statyczne, własne instalatory oraz własny system aktualizacji. Czyli to samo co na Windzie :/.

Wniosek: dostarczanie zależności wraz z programem, własne instalatory oraz brak pakietów nie są wadą własną Windowsa, lecz wynikają z faktu komercyjnej dystrybucji oprogramowania.

 
zwiń wątek Przemek  15 listopada 2009 o godz. 20:39 #
Gravatar

@vshader: ślicznie ubrałeś to w słowa! :)

@y0g1: "Najlepiej dostarczac klientowi zrodla + wsparcie" – dlaczego najlepiej? dla kogo najlepiej? przy jakich 'założeniach'? ;) to co proponujesz _nie_zawsze_ musi być najlepszym rozwiązaniem.

zgadzam się za to z tym co nazwałeś 'softem krytycznym' – tutaj nikt poza mną nie może się dotknąć do kompa. ale istnieje też soft użytkowy, nad którym pieczę (czasem) ma klient. taki soft nie może (lub też: nie powinien) źle chodzić…

 
 
 
 
zwiń wątek wujek_bogdan  14 listopada 2009 o godz. 18:26 #
Gravatar

Cczy ja dobrze rozumiem? Załóżmy, że aplikacja X korzysta z biblioteki Y, kolejna aplikacja Z korzysta też z biblioteki Y, w takim razie biblioteka Y będzie w tej dystrybucji ładowana 2 razy przez obie te aplikacje, skoro jest linkowana statycznie? Tzn, większa wydajność kosztem większego zapotrzebowania na pamięć?

Proszę o sprostowanie jeśli się mylę.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek ufoludek  14 listopada 2009 o godz. 18:48 #
Gravatar

Tak, jest dokładnie tak, jak piszesz. Oczywiście jak biblioteka jest dobrze napisana, to statycznie się zlinkują tylko jej używane fragmenty, bo resztę linker może wyciąć, więc narzut nie jest dokładnie x2.

zwiń wątek blinkkin  14 listopada 2009 o godz. 19:11 #
Gravatar

Uzupełnienie. Biblioteki docelowo będą tylko potrzebne, jeśli zajdzie potrzeba skompilowania jakiejś aplikacji. Można tu mówić o środowisku deweloperskim.

Natomiast maszyny produkcyjne w założeniu będą działały bez katalogu /lib i /include. Nie ma takiej potrzeby ponieważ wszystko będzie kompilowane statycznie, czyli bez współdzielenia bibliotek.

zwiń wątek Magnes  14 listopada 2009 o godz. 22:19 #
Gravatar

Ciekawe ile zajmowałbym np. taki Amarok zrobiony w ten sposób. Plik wykonywalny 200MB? Pół Qt i KDE wkompilowane? :)

 
zwiń wątek wujek_bogdan  14 listopada 2009 o godz. 23:13 #
Gravatar

jeżeli wkompilowane są nie całe biblioteki, a jedynie części tych bibliotek wykorzystywane przez aplikację, to może nie było by tak źle.

 
zwiń wątek Maciej Piechotka  15 listopada 2009 o godz. 2:03 #
Gravatar

Tylko należy to przemnożyć przez ilość aplikacji. Bo w koncu nie tylko Amarok jest w pamieci ale także Kwrite/Konsole/Kwin czy co tam jest w KDE/panel KDE/Agregator/Konqueror/Dolphin…

 
zwiń wątek y0g1  15 listopada 2009 o godz. 8:34 #
Gravatar

@blinkkin: tak dla scislosci: include/ nie sa potrzebne

do uruchamiania jakichkolwiek programow w jakiejkolwiek dystrybucji. Nie dlatego ze jakis program bedzie statyczny – tylko dlatego, ze nie ma potrzeby kompilowania czegokolwiek. Jak nie interesuje Cie zawartosc include/ – po prostu wykasuj. Czasami jednak przydaje sie tam zagladac. Podobnie z doc/ man/ icons/ fonts/ – w wiekszosci przypadkow wystarczy ich brak lub okrojony zestaw podstawowych czcionek, ikonek. By sysem odchudzic nie potrzeba tworzyc potworka stali. Tak, prowokacyjnie powiem potworka, bo moim zdaniem, jedyne co proponuja, to nalozenie ograniczen w wyborze w imie

pustej idei. Wszedzie mozna statycznie skompilowac kernel, nie korzystac z initrd, ude, hala. Kilka programow z jakich sie korzysta przekompilowac statycznie i zyska…. no wlasnie, co zyskac? Co, naprawde odkrywczego w stali proponuja? Co ciekawego w swiat informatyczny proponuja wniesc od siebie?

Swiat jest dynamiczny, systemy tez i wedlug mnie system dynamicznie linkowanych bibliotek jest wlasciwym jego odzwierceidleniem.

 
zwiń wątek blinkkin  15 listopada 2009 o godz. 15:55 #
Gravatar

Jeszcze można zrobić "rm -rf /proc" ;)

Naprawdę nie musisz mi tego tłumaczyć, katalogi /lib i /include podałem jako przykład. Co do /usr/include i /usr/local/include to w przypadku wielu binarnych dystrybucji można znaleźć tam sporo "śmieci". Pomimto tego, że na takiej maszynie brak środowiska programistycznego. To w jakiej paczce znajdą się nagłówki często zależy od opiekuna.

Systemu raczej się nie odchudzi poprzez usunięcie /doc, /man, /icons, może tylko poprzez wywalenie czcionek o wysokiej rozdzielczości. Zresztą nie wyobrażam sobie korzystania z systemu bez stron podręcznika man, chociaż z drugiej strony w Linuksie są one zazwyczaj kiepsko przygotowane lub ich brak.

 
 
 
zwiń wątek blinkkin  14 listopada 2009 o godz. 19:00 #
Gravatar

Bibliotek w systemie nie będzie w ogóle. Większe zapotrzebowanie na pamięć to też prawdopodbnie mit jeśli chodzi o małe programy. Kobyły pewnie nadal będą linkowane dynamicznie.

Natomiast małe programy rzadko używają wszystkich funkcji danej biblioteki, zazwyczaj tylko małej ich części. W FAQu znajdziesz odnośnik do ciekawego tekstu (pozwoliłem sobie na tłumaczenie – może zawierać błędy, robiłem to na szybkiego):

Rob Pike (5 listopada 2008): Kiedy Sun zdał raport na temat ich pierwszej implementacji wpółdzielonych bibliotek, przedstawione dokumenty (myślę, że było to na Usenix) stwierdzały, że współdzielone biblioteki spowolniły i zwiększyły wielkość wielu rzeczy, przyniosły straty oraz faktycznie nie przyniosło to dużych oszczędności w miejscu na dysku. Testowanym przypadkiem było Xlib, korzyści ujemne. Jednak klienci tego od nas wymagają, więc to wypuścimy.

Więc tak, każdy liczący się system operacyjny zaimplementował je, jednak nie oznacza to, że jest to dobra idea. Plan 9 został zaprojektowany ignorując przynajmniej część z narzuconej filozofii.

Mam nadzieję, że to rozświetliło sprawę.

zwiń wątek jarek  14 listopada 2009 o godz. 22:48 #
Gravatar

> Kiedy Sun zdał raport na temat ich PIERWSZEJ IMPLEMENTACJI

> wpółdzielonych bibliotek

Opierasz sie na implementacjach sprzed okolo 20tu lat? Gratuluje.

zwiń wątek blinkkin  15 listopada 2009 o godz. 1:56 #
Gravatar

Właśnie temu jestem ciekawy jak potoczą się losy tego projektu.

 
 
 
zwiń wątek morsik  14 listopada 2009 o godz. 21:39 #
Gravatar

Nie. Sprwadziłem stronę suckless i opisali tam, że mają być wprowadzone zmiany (w jądrze?) które będą ładować poszczególne części tylko raz jeśli już istnieją. Więc kod z biblioteki Y (która w sumie już nie będzie biblioteką tylko częścią programów X i Z) będzie się ładował tylko raz.

zwiń wątek Czajnik  15 listopada 2009 o godz. 8:13 #
Gravatar

Nie bardzo rozumiem jak miałoby się to odbywać. Mamy dwie binarki korzystające z tej samej biblioteki – co oznacza, że do ich segmentów kodu i danych (zainicjalizowanych) zostały dorzucone analogiczne z biblioteki (+/- eliminacja nieużywanych fragmentów), po czym linker dopisał odpowiednie relokacje. Jak mając teraz te dwie biarnki wyciągnąć część wspólną, nie wiem. No chyba że panowie chcą rozszerzyć format blików binarnych o jakieś metadane? Ale nadal nie wyobrażam sobie jak to robić w sensownym czasie.

 
zwiń wątek pdemb  17 listopada 2009 o godz. 18:15 #
Gravatar

Wystarczy wprowadzić sumy kontrolne dla kawałków kodu i dynamicznie sprawdzać, czy w pamięci systemu są kawałki o takiej samej sumie. Brak podziału na biblioteki nie musi oznaczać braku współdzielenia kodu.

zwiń wątek Czajnik  17 listopada 2009 o godz. 19:21 #
Gravatar

"Wystarczy" to złe słowo – obawiam się, że overhead tego co proponujesz jest wysoki.

Zakładam tu oczywiście, że usuwanie martwego kodu odbywa się na poziomie całych sekcji pochodzących z plików .o (kiedyś myślałem że linker usuwa pojedyncze funkcje, ale tak nie jest, jeśli się nad tym zastanowić, to ma to sens).

 
zwiń wątek pdemb  17 listopada 2009 o godz. 22:06 #
Gravatar

Jaki tam wysoki overhead — jeśli da się w KSM (strony pamięci), to tym bardziej na poziomie struktury obiektów kodu (bo pliki .o to nic innego, jak obiekty).

 
 
 
zwiń wątek trasz  15 listopada 2009 o godz. 12:42 #
Gravatar

@wujek_bogdan: Niekoniecznie. Pamietaj, ze wielkosc biblioteki w pamieci sklada sie z trzech rzeczy – kodu ('tekstu'), danych i kawalkow modyfikowanych przez rtld. W przypadku linkowania dynamicznego dwa ostatnie nie sa wspoldzielone. Jedyne zuzycie pamieci to powielony tekst, ktory – w porownaniu z typowym rozmiarem pamieci operacyjnej – duzy nie jest.

Oczywiscie statyczne linkowanie ma inne wady, ktore powoduja, ze generalnie nie jest dobrym pomyslem. No, ale.

zwiń wątek Czajnik  16 listopada 2009 o godz. 20:51 #
Gravatar

Większość (wszystkie?) dzisiejszych systemów implementuje copy-on-write, więc dane też mogą być dzielone w pamięci między procesy, dopóki jeden z nich nie wykona modyfikacji.

zwiń wątek trasz  18 listopada 2009 o godz. 11:41 #
Gravatar

@Czajnik: W praktyce ogromna wiekszosc danych to zmienne globalne, ktore sa modyfikowane przez kazdy proces.

 
 
 
 
zwiń wątek DerDevil  14 listopada 2009 o godz. 19:03 #
Gravatar

No w końcu nie kolejna dystrybucja Linuksowa i będę obserwował jego rozwój.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Tomasz Torcz  14 listopada 2009 o godz. 19:44 #
Gravatar

Panom z suckless ktoś powinien powiedzieć, że prima aprillis był pół roku temu.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek blinkkin  15 listopada 2009 o godz. 1:38 #
Gravatar

Ludziom, którzy za cel stawiali sobie napisane klienta IRCa używając mniej niż 250 linijek kodu, ciężko odmówić zwariowania do pewnego stopnia.

zwiń wątek Czajnik  15 listopada 2009 o godz. 8:16 #
Gravatar

Ależ to żaden problem, wystarczy wszystko wrzucić do jednego pliku, po czym usunąć większość zanków końca linii ;-)

zwiń wątek tadzik  15 listopada 2009 o godz. 11:21 #
Gravatar

Dowcip polega na tym że ten kod _jest_ ładny i czytelny : ) A klient działa, jaki by nie był.

 
zwiń wątek Sebastian Krzyszkowi  15 listopada 2009 o godz. 19:53 #
Gravatar

W pythonie to by było coś w stylu:

<code>import irc

client = irc.IRCClient()

client.start()</code>

:D

 
 
 
 
zwiń wątek Maciej Piechotka  14 listopada 2009 o godz. 19:50 #
Gravatar

Mam wrażenie, że to krok wstecz:

- Biblioteki współdzielone to nie tylko oszczędność miejsca – to także możliwość poprawiania kodu w jednym miejscu. Choćby nie tak dawno w expat'cie był błąd naprawiony w późniejszej wersji – ale python i wiele innych programów nadal było niezabezpieczonych gdyż mialy własną wersję zbundlowaną. Tutaj naprawienie jednego, głupiego błędu w expat'cie będzie musiało się wiązać z wymianą prawie całego systemu – każda paczka linkująca do expata musi być przelinkowana i wymieniona (kilkaset MB na przeciętnym systemie).

- Jądro jako monolit – hmm. wstawanie z hibernacji będzie trwało wieki – moduły od początku siedzą w pamięci a przy monolitycznym jądrze najpierw wszystko musi się wczytać, zainicjalizować sprzęt etc. żeby przejść do poprzedniej konfiguracji. U mnie przejście ze statycznie kompilowanego jądra do modułów (ta sama konfiguracja, Gentoo) przyspieszyła start.

- lilo – czyli witaj z powrotem "ops. zapomniałem wydać komędę lilo przed restartem"? W grubie mam linię poleceń która nieraz ratowała system – w lilo jestem zdany na gorączkowe szukanie płyty z LiveCD. Dodatkowo, to może być przestrzała wiadomość, miał problemy z 'dużymi' jądrami typu większymi niż 0.5 MB. /boot/kernel, przekompilowany w większości modularnie więc tylko to co potrzebne do startu, zajmuje prawie 4 MB. Jeśli ma być statycznie kompilowane nie pod konkretny system to raczej sobie nie poradzi.

- system w pamięci RAM – dla nowszych komputerów albo bardzo minimalna dystrybucja

- /usr jako dowiązanie do / – wolę mieć 2 partycje – /usr i / gdyż jak coś się stanie to jest większa szansa że będę mógł naprawić /usr z /. Dodatkowo jak wygląda sprawa / na LVM bez initrd (bo tak to mogę mieć /usr na LVM i minimalny /)?

- Używanie rsync jako upgrade – czyli brak paczek. Wszyscy używają KDE lub GNOME albo każdy kompiluje sobie oddzielnie. Czyli w zasadzie po co mi ta dystrybucja skoro i tak o większość muszę się zatroszczyć sam?

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek Maciej Piechotka  14 listopada 2009 o godz. 20:15 #
Gravatar

PS. Zapomniałem dodać – na urządzeniach wbudowanych ma to więcej sensu:

1. Znana platforma więc można dostosować kernel

2. Wymagania typu mała pamięć etc. są relatywnie ważniejsze niż problem bezpieczeństwa

3. Nikomu nie przeszkadza że nie ma jego ulubionego WM

4. Wielkość libc ma znaczenie

5. Nikt nie będzie miał otwartych iluś programów naraz każdy z własną kopią webkita/gtk/qt/… etc.

PPS. Tak przeczytałem "Aren’t statically linked executables less secure?". Jakoś bardziej przekonuje mnie SPOT.

"we also focus on a small and maintainable userland, where only one tool for each task exists" -> Czyli inaczej mówiąc przyznają że dla większości zastosować to podejście zawodzi.

Co do exploitu z ldd – IMHO probelm tkwi w sposobie implementacji LDD a nie bibliotekach współdzielonych jako takich

"Imagine that the insecure library functions aren’t linked into the static executable and hence the executable is not affected at all (but it would be affected if we did link it dynamically)." – tak bo kod znajdujący się w pamięci od razu jest wykonywany ;) Z tego co rozumiem cały system to obecność czy nieobecność tego kodu nic nie zmienia i dlatego może być wycięty (OK – problem jest jeśli jest "remote code execution" ale IMHO jest mała szana że to coś zmieni).

 
zwiń wątek wujek_bogdan  14 listopada 2009 o godz. 20:21 #
Gravatar

oba rozwiązania mają swoje wady i zalety, to jakie rozwiązanie wybierzemy zależne będzie od tego czego będziemy oczekiwać od dystrybucji.

projekt zapowiada się ciekawie, przede wszystkim z tego względu, że nie istnieją podobne dystrybucje. zanim rozwiązanie nie zostanie przetestowane w praktyce można opierać się jedynie na teorii i domysłach.

 
zwiń wątek blinkkin  14 listopada 2009 o godz. 20:45 #
Gravatar

Maciej Piechotka: Mam wrażenie, że to krok wstecz:

Panowie z suckless są dosyć ortodoksyjni, więc założenia początkowo mogą wydawać się archaiczne. Z pewnością nie będzie to system każdego użytkownika.

Maciej Piechotka: Biblioteki współdzielone to nie tylko oszczędność miejsca – to także możliwość poprawiania kodu w jednym miejscu. Choćby nie tak dawno w expat’cie był błąd naprawiony w późniejszej wersji – ale python i wiele innych programów nadal było niezabezpieczonych gdyż mialy własną wersję zbundlowaną. Tutaj naprawienie jednego, głupiego błędu w expat’cie będzie musiało się wiązać z wymianą prawie całego systemu

Jest to ładnie wyjaśnione w FAQu. stali ma być w założeniu zestawem małych programów, który wykonują tylko jedną czynność (jest to równoznaczne z mniejszą ilością zależności). Strata w postaci wolnego miejsca nie będzie zapewne wielka, nawet jeśli to w obecnych czasach nie gra to znaczącej roli (terabajtowe dyski etc).

Biblioteki współdzielone to miecz obusieczny. Często aplikacji korzystają tylko z części funkcji dostępnych w bibliotece. Jeśli błąd nie dotyczy funkcji zawartej w statycznej binarce, dziura go nie dotyczy. Natomiast w przypadku dynamicznego powiązania wszystkie aplikacje korzystające z takiej biblioteki są narażone, niezależne czy wykorzystują daną funkcję.

Maciej Piechotka: każda paczka linkująca do expata musi być przelinkowana i wymieniona (kilkaset MB na przeciętnym systemie).

Wątpie, że twórcy stali wrzucą do podstawowego systemu expata czy nawet perla. Ich niechęć do tych narzędzi wyjaśniłem w innym komentarzu, który czeka na moderację (zapewne zbyt duża liczba odnośników – mam nadzieję, że nie poszło jako spam).

Maciej Piechotka: lilo – czyli witaj z powrotem “ops. zapomniałem wydać komędę lilo przed restartem”? W grubie mam linię poleceń która nieraz ratowała system – w lilo jestem zdany na gorączkowe szukanie płyty z LiveCD. Dodatkowo, to może być przestrzała wiadomość, miał problemy z ‘dużymi’ jądrami typu większymi niż 0.5 MB. /boot/kernel, przekompilowany w większości modularnie więc tylko to co potrzebne do startu, zajmuje prawie 4 MB. Jeśli ma być statycznie kompilowane nie pod konkretny system to raczej sobie nie poradzi.

Być może suckless.org zajmie się rozwojem i wsparciem lilo o czym jest mowa w newsie.

Maciej Piechotka: system w pamięci RAM – dla nowszych komputerów albo bardzo minimalna dystrybucja

Jest to tylko pomysł jak można przeczytać na oficjalnej stronie: "perhaps later whole system in ramdisk? will see (20h idea)". Wszystko możliwe.

Maciej Piechotka: /usr jako dowiązanie do / – wolę mieć 2 partycje – /usr i / gdyż jak coś się stanie to jest większa szansa że będę mógł naprawić /usr z /. Dodatkowo jak wygląda sprawa / na LVM bez initrd (bo tak to mogę mieć /usr na LVM i minimalny /)?

Systemy plików nowej generacji nie wymagają fizycznego podziału partycji – o rozmieszczenie plików z poszczególnych woluminów troszczy się zazwyczaj sam system plików. Cały czas mówi się o Btrfs i Tux3.

Co do initrd to w news zaznaczyłem, że dotyczy to prawdopodbnie początkowej fazy projektu.

Maciej Piechotka: Używanie rsync jako upgrade – czyli brak paczek. Wszyscy używają KDE lub GNOME albo każdy kompiluje sobie oddzielnie. Czyli w zasadzie po co mi ta dystrybucja skoro i tak o większość muszę się zatroszczyć sam?

Brak zależności co jest efektem ubocznym statycznego kompilowania (drugi komentarz od góry) sprawia, że większość możliwości oferowanych przez menedżery pakietów jest zbędna. Zapewne wystarczy spakowane archiwum z daną aplikacją i prosty skrypt przygotowany pod wget.

W każdym razie jak to mówią "pożyjemy zobaczymy". Projekt ten traktuje bardziej jako eksperyment niż poważną dystrybucję.

zwiń wątek Maciej Piechotka  15 listopada 2009 o godz. 2:23 #
Gravatar
Maciej Piechotka: Mam wrażenie, że to krok wstecz:

Panowie z suckless są dosyć ortodoksyjni, więc założenia początkowo mogą wydawać się archaiczne. Z pewnością nie będzie to system każdego użytkownika.

W zasadzie nie bardzo widze dla kogo mialby ona byc. Serwery – nie (apache i spolka to nie sa male programy). Desktop – bez KDE/Gnome/XFCE/.. raczej trudno. Systemy wbudowane – lilo ogranicza do x86 a pozatym tam już sobie radza (a system i tak musi byc indywidualnie przycinany).

Maciej Piechotka: Biblioteki współdzielone to nie tylko oszczędność miejsca – to także możliwość poprawiania kodu w jednym miejscu. Choćby nie tak dawno w expat’cie był błąd naprawiony w późniejszej wersji – ale python i wiele innych programów nadal było niezabezpieczonych gdyż mialy własną wersję zbundlowaną. Tutaj naprawienie jednego, głupiego błędu w expat’cie będzie musiało się wiązać z wymianą prawie całego systemu

Jest to ładnie wyjaśnione w FAQu. stali ma być w założeniu zestawem małych programów, który wykonują tylko jedną czynność (jest to równoznaczne z mniejszą ilością zależności). Strata w postaci wolnego miejsca nie będzie zapewne wielka, nawet jeśli to w obecnych czasach nie gra to znaczącej roli (terabajtowe dyski etc).

Biblioteki współdzielone to miecz obusieczny. Często aplikacji korzystają tylko z części funkcji dostępnych w bibliotece. Jeśli błąd nie dotyczy funkcji zawartej w statycznej binarce, dziura go nie dotyczy. Natomiast w przypadku dynamicznego powiązania wszystkie aplikacje korzystające z takiej biblioteki są narażone, niezależne czy wykorzystują daną funkcję.

Male programy sa piekne – moga wykonac 90% czynnosci. Ale sa wykonywane przez mniej niz 10% czasu. Zajmnuja duzo mniej niz 10% pamieci – IMHO optymalizacja, szczegolnie tak radykalna ze nie bedzie praktycznie nigdzie indziej wykorzystana, to strata czasu.

Maciej Piechotka:każda paczka linkująca do expata musi być przelinkowana i wymieniona (kilkaset MB na przeciętnym systemie).

Wątpie, że twórcy stali wrzucą do podstawowego systemu expata czy nawet perla. Ich niechęć do tych narzędzi wyjaśniłem w innym komentarzu, który czeka na moderację (zapewne zbyt duża liczba odnośników – mam nadzieję, że nie poszło jako spam).

Eh. Tutaj nie chodzi o konkretna paczke.

Maciej Piechotka:/usr jako dowiązanie do / – wolę mieć 2 partycje – /usr i / gdyż jak coś się stanie to jest większa szansa że będę mógł naprawić /usr z /. Dodatkowo jak wygląda sprawa / na LVM bez initrd (bo tak to mogę mieć /usr na LVM i minimalny /)?

Systemy plików nowej generacji nie wymagają fizycznego podziału partycji – o rozmieszczenie plików z poszczególnych woluminów troszczy się zazwyczaj sam system plików. Cały czas mówi się o Btrfs i Tux3.

Co do initrd to w news zaznaczyłem, że dotyczy to prawdopodbnie początkowej fazy projektu.

Na razie btrfs/tux3 są w fazie rozwoju. I nie bardzo widze jak mialyby pomoc w opisywanym scenariuszu (ale moge sie mylic).

Maciej Piechotka:Używanie rsync jako upgrade – czyli brak paczek. Wszyscy używają KDE lub GNOME albo każdy kompiluje sobie oddzielnie. Czyli w zasadzie po co mi ta dystrybucja skoro i tak o większość muszę się zatroszczyć sam?

Brak zależności co jest efektem ubocznym statycznego kompilowania (drugi komentarz od góry) sprawia, że większość możliwości oferowanych przez menedżery pakietów jest zbędna. Zapewne wystarczy spakowane archiwum z daną aplikacją i prosty skrypt przygotowany pod wget.

Czyli bedzie cos bardziej skomplikowanego. Co do wget'a – problem bledow bezpieczenstwa.

W każdym razie jak to mówią “pożyjemy zobaczymy”. Projekt ten traktuje bardziej jako eksperyment niż poważną dystrybucję.

Hmm. Nie bardzo widze sens takiego eksperymentu ale moze cos przeoczylem.

zwiń wątek Low Year  15 listopada 2009 o godz. 16:57 #
Gravatar

W zasadzie nie bardzo widze dla kogo mialby ona byc. Serwery – nie (apache i spolka to nie sa male programy). Desktop – bez KDE/Gnome/XFCE/.. raczej trudno. Systemy wbudowane – lilo ogranicza do x86 a pozatym tam już sobie radza (a system i tak musi byc indywidualnie przycinany).

Dla pr0, którzy nie używają myszek a menedżer okien konfigurują w kodzie źródłowym (tak, piję do dwm ;) ). W zasadzie ta definicja zawęża użytkowników do grupy niewiele większej od autorów.

 
zwiń wątek Identyfikator Chwilo  15 listopada 2009 o godz. 21:42 #
Gravatar

> lilo ogranicza do x86

Waćpan najwyraźniej nie słyszał o SILO…

 
 
 
zwiń wątek Magnes  14 listopada 2009 o godz. 22:22 #
Gravatar

Statyczne linkowanie w Windows kiedyś mocno namieszało jak wykryto lukę bezpieczeństwa w GDI++, a wiele programów miało tą bibliotekę wlinkowaną statycznie do execów. Z tego co pamiętam Ms wypuścił wtedy narzędzie, które przeszukiwało dysk w poszukiwaniu takich plików exe i je naprawiało.

zwiń wątek _qaz  15 listopada 2009 o godz. 23:10 #
Gravatar

wręcz przeciwnie – gdi+ istniało tylko jako biblioteka dynamiczna i jako taka była przez developerów dołączana do aplikacji ze względu na to, że defaultowo posiadał ją tylko XP,a nie posiadały jej windy 2000 i 9x. Tool, o którym piszesz był do bani;-) przeszukiwał wszystkie HDD w poszukiwaniu wystąpień starszej wersji tej dll-ki i zastępowaniu jej nowszą.

 
 
zwiń wątek Identyfikator Chwilo  15 listopada 2009 o godz. 21:44 #
Gravatar

> – lilo – czyli witaj z powrotem “ops. zapomniałem wydać komędę lilo

> przed restartem”? W grubie mam linię poleceń która nieraz ratowała

> system – w lilo jestem zdany na gorączkowe szukanie płyty z LiveCD.

Wystarczy przecież:

1. Pamiętać o wstukaniu "lilo", tudzież…

2. …żeby zawsze mieć w pogotowiu "System Rescue CD", oraz…

3. …pamiętać, że chodzi o komENdę, a nie "komędę".

 
 
zwiń wątek krzabr  14 listopada 2009 o godz. 20:01 #
Gravatar

Nawet jeśli to nie będzie aż taki cios dla urządzeń wbudowanych .

Tam raz się wstawia system operacyjny z niezbędnym softem i rzadko kiedy go się aktualizuje . Takie rozwiązanie jest tam przyjęte na dobre , nie trzeba bawić się w dynamiczne linkowanie czy mega zależności i to jest to .

Tylko jak pisałem przyda im się dobra obsługa procesów czasu rzeczywistego .

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek alesz  14 listopada 2009 o godz. 20:12 #
Gravatar

Początkowo brak initrd

To jedyne co by mi się w tym projekcie podobało. Pozostałe rzeczy to krok wstecz!

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Sławek  14 listopada 2009 o godz. 20:20 #
Gravatar

Przy aktualizacjach przez delty, to może to wypalić. Inaczej musielibyśmy aktualizować cały system w przypadku znalezienia jakiejś dziury w bezpieczeństwie. Z deltami – tylko różnice dla każdej paczki.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek bies  14 listopada 2009 o godz. 21:30 #
Gravatar

Ha(ck|r)cerstwo. Ale niech się bawią, może z ich zabawy wyniknie coś ciekawego (z dwm powstał awesome). Użyć tego raczej nie użyję.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek m  14 listopada 2009 o godz. 23:29 #
Gravatar

a moze warto uzyc KSM do oszczedzenia pamieci zespalajace identyczne stronice pamieci:
http://lwn.net/Articles/329123/

a jesli chodzi o nieuzywanie initrd to na pewno start systemu bedzie szybszy:
http://lwn.net/Articles/299483/

to co jest lepsze w shared library model to to, ze instalacja 100kB poprawki bezpieczenstawa naprawia "n" aplikacji (openssl, expat, itp..)

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek bies  15 listopada 2009 o godz. 22:06 #
Gravatar

KSM się nie nadaje bo: primo) będzie dopiero w 2.6.32, secundo) wymaga łatania źródeł (oczywiście autorzy mogą poprawiać każdy program — zdrowia życzę).

zwiń wątek m  16 listopada 2009 o godz. 11:55 #
Gravatar

możesz podać jakieś źródło dot. wymogu łatania źródeł?

 
 
 
zwiń wątek launchpad.net/~mgol  15 listopada 2009 o godz. 1:40 #
Gravatar

Katalog domowy roota w /home? A co to za idiotyczny pomysł?! Gdy skopie mi się partycja /home, nie mogę już się w ogóle zalogować do systemu i spróbować naprawić? Gratulacje.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Adam  15 listopada 2009 o godz. 13:31 #
Gravatar

Stalin? Oh well… :)

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek endrju  15 listopada 2009 o godz. 14:28 #
Gravatar

En wiki podaje troszke danych o TCC, ktorego tamci panowie pewnie wola od (harmful) GCC. Problem w tym, ze ich szybsze statyczne binarki nie beda szybsze, bo TCC produkuje wolny kod:
http://lists.gnu.org/archive/html/tinycc-devel/20
Moze i to stare dane, ale TCC od 2005 roku ruszyl sie z .23 do .25, totez pewnie rewolucja sie nie dokonala.

W ogole mam wrazenie, ze ich (lub wymieniony w liscie) cudowny soft ma 10% funkcjonalnosci tego harmful i innego bloated, i wtedy – rzeczywiscie – ma malo kodu i jest szybki. Ciekawe co bedzie, kiedy zrownaja sie funkcjonalnie…

(Tk i QT? *SQL i plain text?) Ponadto nie lubia tam chyba kobiet i dzieci. Z tym drugim to akurat dobrze, nie przekaza swoich aroganckich genow dalej. ;-)

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek el.pescado  16 listopada 2009 o godz. 10:51 #
Gravatar

W ogole mam wrazenie, ze ich (lub wymieniony w liscie) cudowny soft ma 10% funkcjonalnosci tego harmful i innego bloated

Mi się wydaje, że nie osiągnie nigdy tej funkcjonalności. Wygląda na to, że ten projekt jest kierowany do REAL MEN ™, czyli ludzi, dla których X11 służy do tego, żeby mieć otwarte 10 xtermów.

 
 
zwiń wątek Apage  15 listopada 2009 o godz. 17:52 #
Gravatar

Zaczynam rozumieć takie podejście. Zainstalowałem sobie Łubudubu Karmić Koala; niby wszystko pięknie ładnie ale po przyjrzeniu się z bliska desktop zawiera: mono, mysql server, buetooth, laptop-sraptop-foo, coś do PDA, Ruby i kilka innych dziwnych języków i niepotrzebnych programów. Jak bym chciał wszystkie te pakiety wypierdzielić w piz.. to dzięki niezwykle bogatym zależnościom pewnie nawet gruba by mi należało skasować

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek nat  15 listopada 2009 o godz. 18:43 #
Gravatar

Apage: polecam slackware.

 
zwiń wątek Maciej Piechotka  16 listopada 2009 o godz. 4:45 #
Gravatar

Gentoo można sobie dokładnie skroić (co jest IMHO znacznie wieksza zaleta niz szybsze o cale 0.01% ;) ). Zgaduje ze dystrybucje 'dla zaawansowanych' (Arch, Slackware, Gentoo…) sa znacznie lzejsze.

PS. Osobiscie nie moglbym sobie poradzic z brakiem zaleznosci w Slackware.

 
 
zwiń wątek krzabr  15 listopada 2009 o godz. 18:01 #
Gravatar

To zainstaluj sobie coś z *BSD , OpenSolarisa lub Jakąś minimalistyczną dystrybucje Linuxa , w nich nie masz śmietnika zależności :)

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek konraddo  15 listopada 2009 o godz. 20:47 #
Gravatar

wszystko fajnie ale nazwa kojarzy się ze Stalinem, bez obrazy dla nikogo :S

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek nat  15 listopada 2009 o godz. 21:39 #
Gravatar

tow. Dzugaszwili zaakceptowal te niefortunna zbieznosc nazw.

a wy, konraddo, poczytajcie u gory, juz sobie z tego na

posiedzeniu zartowalismy. "siedzi na sali egzekutywa

tlusta, ogromna, i pot z niej splywa" : )

 
 
zwiń wątek konraddo  15 listopada 2009 o godz. 21:49 #
Gravatar

faktycznie, wybaczcie :P nie chciało mi sie sprawdzić:S

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek nat  15 listopada 2009 o godz. 21:55 #
Gravatar

no.. pamietajcie, wrog czuwa!

 
 
zwiń wątek LIstat  16 listopada 2009 o godz. 15:28 #
Gravatar

I tak powstanie nowa wresja debiana…

poczemu poprawiac cos co juz jest bardzo dobre ?

tak samo jak by poprawiaz michaela jordana….

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Kemac  16 listopada 2009 o godz. 17:14 #
Gravatar

Jeden security issue w podstawowej bibliotece i mamy pół systemu i oprogramowania do wymiany. (Nie mówiąc juz o marnowaniu pamięci i masie innych problemów.)

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek riklaunim  17 listopada 2009 o godz. 4:11 #
Gravatar

Dystrybucja dla paru geeków, która zdobędzie 0,0000000000000000000000000000000001% rynku Linuksów. Nie używam i nie mam ochoty używać żadnej z wymienionych na http://suckless.org/misc/cool_programs aplikacji… serwer Nostromo… większego zapomnianego i bezużytecznego antyku nie mogli wykopać? Ktoś produkcyjnie użyje Nostrocośtam a nie Nginxa, Apache, czy Lighttpd?

nie tędy droga. Nie z tak bezużytecznym softem (i co ze sterownikami nVidii do monolitycznego kernela?)

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek morbit  17 listopada 2009 o godz. 13:36 #
Gravatar

Cieszę się z tego, że ludzie z suckless zabrali się za własną dystrybucję. Czytając ich stronę/filozofię zawsze dziwiłem się jak w ogóle mogą używać linuksa. Raczej na pewno nie będę jej używał, ale to nie szkodzi; byleby skupienie się na niej nie odbiło się na możliwości wyświetlania 10 xtermów przez dwm :P

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Ashley Khammixay  17 marca 2011 o godz. 21:41 #
Gravatar

This post seems to get a great deal of visitors. How do you promote it? It offers a nice unique spin on things. I guess having something authentic or substantial to give info on is the most important thing.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Vikki Gwynes  8 kwietnia 2011 o godz. 22:15 #
Gravatar

I’d have to okay with you one this subject. Which is not something I typically do! I enjoy reading a post that will make people think. Also, thanks for allowing me to comment!

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek car insurance  12 kwietnia 2011 o godz. 3:24 #
Gravatar

While I tend to side with the post I strongly believe that car insurance has become too complex for the average policy holder. Just like any serious purchase however you must perform due diligence and research the companies before you purchase.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Norman County Fire Departments  12 kwietnia 2011 o godz. 3:38 #
Gravatar

Having just been looking for useful blog posts for the research project I’ve been working on when I happened to find yours. Thanks for this helpful content! — Norman County Fire Departments

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Coupon Codes  12 kwietnia 2011 o godz. 4:30 #
Gravatar

Hello. remarkable job. I did not imagine this. This is a impressive story. Thanks!

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Testing for Diabetes  12 kwietnia 2011 o godz. 4:34 #
Gravatar

There is obviously a ton to know about this. I think you made some valid points in this post.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Get A Math Tutor  12 kwietnia 2011 o godz. 4:46 #
Gravatar

I simply wanted to send a remark so as to appreciate you for the magnificent instructions you are giving on this website. My particularly long internet search has now been recognized with professional knowledge to go over with my co-workers. I would claim that many of us readers actually are rather fortunate to exist in a superb community with very many lovely individuals with useful suggestions. I feel truly fortunate to have come across the website and look forward to so many more entertaining minutes reading here. Thanks once again for everything.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Wasserbetten kaufen  12 kwietnia 2011 o godz. 5:26 #
Gravatar

Everytime I just read your posts I feel much like your writting is enhancing, see it from the day one.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Beat Maker  12 kwietnia 2011 o godz. 6:11 #
Gravatar

Hi there just wanted to give you a quick heads up and let you know a few of the pictures aren’t loading properly. I’m not sure why but I think its a linking issue. I’ve tried it in two different internet browsers and both show the same results.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek United States Post Office - Florissant  12 kwietnia 2011 o godz. 6:38 #
Gravatar

There is obviously a lot to know about this. I think you made some great points in this post.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Negatives Scanner  12 kwietnia 2011 o godz. 6:49 #
Gravatar

Having just been looking forinformative articles for the research project I’ve been working on when I happened to find yours. Thanks for this informative material! — Negatives Scanner

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek praca nieruchomości poznań  12 kwietnia 2011 o godz. 8:10 #
Gravatar

I just stumbled on your blog when i was lookng on Google. I have to say that the knowledge here was the most complet that I found anyplace. I am definitly bookmarkin this to be bck and read later

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Wii Homebrew  12 kwietnia 2011 o godz. 9:53 #
Gravatar

Wii Homebrew is usually an unlock software for Wii. It allows you to get access to many other features and never have to tear your mechanism aside.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek blog  12 kwietnia 2011 o godz. 12:05 #
Gravatar

I stumbled onto an individual’s site on the internet and even determine a lot of the early threads. Prolong in the awesome deliver the results. I really even more improve RSS feed towards my very own Google Up-to-date information Site reader. Attempting to get toward looking through further within you subsequently!…

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Anti Aging  12 kwietnia 2011 o godz. 12:41 #
Gravatar

Hyaluronic acid is any necessary substance that hydrates your skin from the inside released, helping it retain moisture for a softer, suppler appearance.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek bike games  12 kwietnia 2011 o godz. 13:14 #
Gravatar

We will do something we need to if we stick with it long enough.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek buzz  12 kwietnia 2011 o godz. 14:04 #
Gravatar

I recently uncovered your entire blog on google also confirm some of their early threads. Safeguard the awesome do the job. I recently other boost your protein RSS feed if you want to my personal Bing Information Audience. In search of toward digesting various other within you later!…

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Rueben Breines  12 kwietnia 2011 o godz. 15:11 #
Gravatar

Thanks bro

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek colon cleanse review  12 kwietnia 2011 o godz. 15:16 #
Gravatar

This one is an inspiration personally to uncover out far more associated to this subject. I have to confess your data prolonged my sentiments in addition to I am going to right now take your feed to remain updated on every coming blog posts you would possibly presumably create. You’re worthy of thanks for a job completely completed!

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek e-katalog  12 kwietnia 2011 o godz. 16:34 #
Gravatar

I’ve been exploring for a bit for any high quality articles or blog posts on this sort of area . Exploring in Yahoo I at last stumbled upon this site. Reading this information So i am happy to convey that I’ve an incredibly good uncanny feeling I discovered exactly what I needed. I most certainly will make certain to do not forget this website and give it a look on a constant basis.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Russ Delancy  12 kwietnia 2011 o godz. 17:12 #
Gravatar

Thanks bro

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek auto detail equipment  12 kwietnia 2011 o godz. 17:43 #
Gravatar

Great blog. Lots of blogs like yours cover subjects that can’t be found in magazines and newspapers. I don’t know how we got by 12 years ago with just magazines and newspapers.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Wilmington NC Builder  12 kwietnia 2011 o godz. 17:59 #
Gravatar

There are some fascinating points in time in this article however I don’t know if I see all of them heart to heart. There’s some validity however I’ll take hold opinion until I look into it further. Good article , thanks and we want more! Added to FeedBurner as nicely

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek coach outlet  12 kwietnia 2011 o godz. 18:18 #
Gravatar

Do you have a spam problem on this website; I also am a blogger, and I was wondering your situation; we have developed some nice methods and we are looking to trade strategies with other folks, please shoot me an e-mail if interested.coach outlet

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Wasserbett  12 kwietnia 2011 o godz. 18:58 #
Gravatar

Hello, I had been researching the net & I discovered the web site. Maintain the superb work.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Katharine O. Rosenberg  12 kwietnia 2011 o godz. 19:51 #
Gravatar

Beneficial

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Leupold Rifle Scopes  12 kwietnia 2011 o godz. 19:59 #
Gravatar

Howdy! I simply wish to give an enormous thumbs up for the good info you could have right here on this post. I will be coming back to your weblog for extra soon.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek colon cleanse  12 kwietnia 2011 o godz. 20:26 #
Gravatar

Many thanks for posting this, It?s simply what I was researching for on bing. I?d rather a lot comparatively hear opinions from an individual, slightly than an organization web page, that?s why I like blogs so significantly. Many thanks!

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek base metals  12 kwietnia 2011 o godz. 20:35 #
Gravatar

There are actually a number of details like that to take into consideration. That could be a great point to bring up. I offer the ideas above as common inspiration but clearly there are questions like the one you convey up where crucial factor shall be working in sincere good faith. I don?t know if finest practices have emerged around issues like that, but I am sure that your job is clearly identified as a fair game. Both girls and boys really feel the impression of just a second’s pleasure, for the rest of their lives.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek driving instructor training  12 kwietnia 2011 o godz. 21:39 #
Gravatar

How do you fancy becoming your individual boss, choosing your own operating hours and meeting new persons every single day? Would you prefer to make excellent revenue and have the satisfaction of assisting men and women learn about anything new? It really is simple to determine why a lot of people from every single walk of life desire to be a driving instructor.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Nelson Terpstra  12 kwietnia 2011 o godz. 21:41 #
Gravatar

Wonderful post, I just bookmarked your site and I’ll definitely be back in the future. -Nelson Terpstra

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek h1n1 deaths  12 kwietnia 2011 o godz. 22:53 #
Gravatar

Men younger than 40 usually are rarely ever diagnosed along with prostate cancer but needs to be vigilant, never-the-less. The most familiar cancer in American adult men, excluding skin cancer, will be prostate cancer.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek gender predictor quiz  13 kwietnia 2011 o godz. 0:58 #
Gravatar

Cool

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Gasgrill  13 kwietnia 2011 o godz. 1:00 #
Gravatar

What is the purpose of this kind of post if you don’t mind me personally asking?

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek artificial insemination cost  13 kwietnia 2011 o godz. 1:34 #
Gravatar

Thanks bro

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek colon cleanse  13 kwietnia 2011 o godz. 1:40 #
Gravatar

I’m nonetheless learning from you, however I’m enhancing myself. I definitely love studying every thing that’s written in your blog.Keep the tales coming. I loved it!

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Erik Garden  13 kwietnia 2011 o godz. 5:25 #
Gravatar

I am looking forward to diggin more of your great articles.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Edith Thalman  13 kwietnia 2011 o godz. 6:01 #
Gravatar

Thanks for all your valuable efforts on this blog. My mother takes pleasure in making time for research and it’s simple to grasp why. My partner and i notice all regarding the powerful way you convey effective items by means of the website and as well welcome participation from others about this theme plus my simple princess is without question understanding a lot of things. Have fun with the remaining portion of the year. Your doing a glorious job.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Earn Money Resources  13 kwietnia 2011 o godz. 7:17 #
Gravatar

Aw, this was a really nice post. In idea I would like to put in writing like this additionally – taking time and actual effort to make a very good article… but what can I say… I procrastinate alot and by no means seem to get something done.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Wynajem Autobusów Sopot  13 kwietnia 2011 o godz. 10:42 #
Gravatar

This really answered my drawback, thanks!

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Bilety Autokarowe  13 kwietnia 2011 o godz. 12:50 #
Gravatar

Good day! I just want to give an enormous thumbs up for the nice data you might have here on this post. I will be coming again to your weblog for more soon.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Ramiro Scollan  13 kwietnia 2011 o godz. 13:04 #
Gravatar

Appreciate you sharing, great article post.Much thanks again. Keep writing.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek Jarred Kohlman  13 kwietnia 2011 o godz. 15:05 #
Gravatar

Thank you a lot for providing individuals with an extraordinarily wonderful possiblity to read in detail from this site. It is usually very nice and also full of a lot of fun for me personally and my office friends to visit the blog at a minimum thrice in a week to learn the new issues you have got. And of course, I’m always happy considering the dazzling points you give. Certain two ideas in this post are definitely the simplest I’ve had.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
zwiń wątek domain names  13 kwietnia 2011 o godz. 15:37 #
Gravatar

Domains provides web hosting, transfer domains, domain lookup, domnain names, and allows you to buy domain names.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 

Uwaga! Niektóre komentarze, m.in. te dodane przez niezalogowanych i nowych użytkowników, są ręcznie moderowane. Jeśli Twój komentarz nie ukaże się od razu, nie dodawaj go ponownie, tylko cierpliwie poczekaj na akceptację.

W komentarzach możesz używać prostych znaczników HTML. Przykłady:
  • Link: <a href="http://osnews.pl">OSnews: niusy IT</a>,
  • Wytłuszczenie: <strong>tekst pogrubiony</strong>,
  • Kursywa: <em>tekst pochylony</em>,
  • Przekreślenie: <strike>tekst przekreślony</strike>,
  • Kod: <code>printf("blok kodu");</code>,
  • Cytat: <blockquote>cytat</blockquote>
Uwaga: jeśli dodasz nieznany znacznik, będzie on niewidoczny, gdyż system filtruje takie znaczniki.

Wszystkie autorskie niusy w serwisie publikowane są na licencji Creative Commons Uznanie autorstwa 2.5 Polska.

Twoja sugestia