psDooM - zarządzaj swoimi procesami!
psDooM to monitor systemowy dla systemów Linuksowych. Z użytkownikiem komunikuje się poprzez wygodny i ładny interfejs graficzny (screen obok). Posiada funkcjonalność programów takich jak 'ps', 'renice' oraz oczywiście 'kill' :-).
psDooM (strona projektu) to implementacja XDoom jako środowiska do zarządzania procesami. Twórca projektu David Koppenhofer, nudząc się zapewne w pracy, przeglądał kod źródłowy Doom'a i dopisał do niego kilka funkcji bazujących na wywołaniach systemowych. Dlatego też w psDooM każdy potworek to określony proces z przyporządkowanym PID'em oraz nazwą. Jak widać na screenie powyżej nasze procesy zbyt grzeczne nie są... 'xv' potrafi dać w kość.
Niestety, psDooM posiada wiele błędów. Jeden z takich opiszę. Wyobraźmy sobie wielkiego i groźnego Basha szarżującego na nas i zasypującego gradem kul. My, w panicznej ucieczce chowamy się za pierwszy z brzegu proces, który całkowitym przypadkiem nazywa się 'init'. Kule groźnego Basha dosięgnęły niewinnego 'inita'. Chyba nie trzeba pisać co się stało z systemem? :-)
Dodatkowo: w systemie z wieloma uruchomionymi procesami psDooM staje się symulatorem hipermarketu w dzień świąteczny. Dodatkowym problemem staje się szef.. Bo jak mu wytłumaczyć, że właśnie zarządzamy największym klastrem w firmie a nie gramy w DooM'a? :-)
Z plusów psDooM'a autor wymienia:
- Stopniowe zarządzanie procesem. Admin może tylko zranić proces dając mu do zrozumienia, że zrobił coś źle.
- Młodzi admini mogą dostawać do ręki mniej niszczycielskie bronie, tym samym nie powodując szkód w najważniejszych procesach. Prawdziwi admini dysponują BFG.
- Bardzo obciążane systemy zyskują mechanizm samoregulacji. W przypadku zbyt zatłoczonej planszy potwory zabijają same siebie pozostawiając na placu boju najlepsze (najmocniejsze) procesy. Selekcja naturalna w GNU/Linux! Nigdy więcej zarządzania obciążeniem!
- SysAdmini mogą kooperować robiąc 'ustawki' na co gorsze procesy. Paczka Adminów może w końcu razem radzić sobie ze złą sytuacją na serwerach!
Cóż, nie można odebrać Davidowi dobrego poczucia humoru :-). psDooM to tylko ciekawostka i swoisty żart ze strony programisty//admina GNU/Linux. Pamiętajcie - używanie go w swoich systemach może prowadzić do niestabilności Twojego systemu. Zresztą oboje wiemy - po to go uruchamiasz ;-).
Oto strona, która opisuje sposób instalacji psDooM. A ja spadam. Chyba firefox-bin za bardzo urósł i się do Amaroka mi dobiera... EOT.
ENJOY! :-) ps. Niestety, psDooM to projekt zapomniany, David już się nim nie zajmuje. W chwili wolnego czasu chciałbym kontynuować jego pracę, dobrałem się do kodu źródłowego DooM'a (świetnie opisany!) oraz zaczynam rozumieć mechanizmy, które zaimplementował David. Może psDooM nie umrze - pomysł jest genialny! Zainteresowani?
Ciekawy pomysł. Cholernie szalony ...
3v1l 4dm1n g33k :P
Naprawdę wciąga - polecam :-) Można odpalać z użytkownika, wtedy procesy 'root' będą się respawnować. Ściągać wersję *-bin - działa.
Nigdy nie zrozumiem Linuksowców
Hehehe pomysł wręcz genialny. Pokazuje jakie możliwości ma Linuks i jak można nawet te głupie czynności zamienić w przyjemność ;-]
Btw, pewnie pod Windą też można było coś takiego zrobić, ale who care... ;-]
Pod Windą (szczególnie wszystkimi edycjami Home) taki program byłby niebezpieczny dla warstwy sprzętowej. Hybrydowe jądro Windows pozwala na dostęp do sprzętu dla procesów nieuprzywilejowanych.
Zapewne DAŁOBY się to zrobić. Nie byłoby to jednak proste. (tak proste jak pod Linuksem).
Na windowsie byłby to Saper, a koniec to byłby blow up ;-)
O, Seban fajnie to podsumował. :-) Zaznaczam, że pisałem o edycjach "Home". W pracy jestem zmuszony pracować na Windows 2003 Server (i zarządzać tym gównem...) i muszę przyznać - "Run as..." działa znakomicie. ;-)
Jaka szkoda że to działa tylko na GNU/Linuksach, a na Gentoo, Slackware, Red Hatach i SUSE już nie...
Fajne. Rozwaliłem całe KDE a potem X-y ;)
@Dozzie, czepiasz się!:D Wiesz doskonale, że "Linux" to po prostu jądro stworzone przez Linusa a wszystkie aplikacje jakie są na to nabudowane to spadek po systemie GNU, który jeszcze w '91 roku nie miał jądra (HURD obecnie).
Podążam za tym, co mówi RMS. Wszystkie systemy linuksowe to jądro Linusa obtoczone w aplikacjach GNU. Razem - GNU/Linux! Więc zadziała na WSZYSTKICH zgodnych architekturą systemach (w tym na Solarisach i Macach).
mozna prosic o instrukcje kompilacji?
Ostro żeś pojechał D4rky :-) Postaram się, ale to troszkę skomplikowane. W README jest napisane:
"See Udo's "INSTALL" file in ../xdoomsrc/doc for details on building from here on."
A jak będę miał chwilkę czasu - opiszę w ojczystym języku w komentarzach. Na razie mam na głowie przeprowadzkę...
night - nie pojechalem, po prostu make wywala sie po paru linijkach :>
I jeszcze coś - jak do cholery zwiększyć ekran do ludzkiego 640x480? :>
d4rky - sprawdź ten link http://psdoom.sourceforge.net/download.html ostatnie linijki. Pewnie masz ten błąd. :-)
Co do zwiększania ekranu - nie wiem :D:D:D Jakąś opcją przekazywaną w linii poleceń, ale jak? Jak to odpalam w "czystych" Xach na platformie z Debianem 4.0 który zajmuje niecałe 200MB i w życiu WM na oczy nie widział :-)
night - bo odpalasz przez svga, ktore u mnie dziala dosc kiepsko ;)
Z tym initem to nie błąd, to ficzer :D
Projekt jest fajny, ale ma już swoje lata. Szkoda że nikt nie zrobił psQuake wlbo psWarsow ;)
"jak do cholery zwiększyć ekran do ludzkiego 640x480?"
Trzeba uruchomić z parametrem -2, -3 lub -4 :)
AdamK - psWarCraft ? :>
psPong!
Fajne, ale ja z tych złych Windowsiarzy jestem :/
psArkanoid byłby też fajny :D
W zasadzie każdą grę na GPL można by tak zmodyfikować - to masa świetnej zabawy. Jednak psDooM ma taki swój spcyficzny, oldschoolowy klimat :-)
night - psReturnOfTheJedi, Lord Vader jest Xami a Imperator initem, przejscie gry = wylaczenie systemu :P
psMario albo psLemmings ;]
@d4rky - psROTJ byłby nudny. Nie jestem fanem StarWars :-) psLemmings - fajne :D Jednak wolę się skupić nad psDooM i pociągnąć ten projekt dalej (mail do autora już poszedł, czekam..). A potem w pracy z kumplami bawić się w podchody na biedne niczego nie świadome instancje bash'a :D
night - ja bym na podstawie tego napisal zupelnie nowa wersje oparta o znacznie bogatszego prbooma ;]
To też nie jest głupi pomysł. Trzeba się będzie pobawić. Tylko że kod XDoom już znam, prboom to tak daleko posunięta modyfikacja, że musiałbym posiedzieć nad tym. A tutaj zbliża się kolejny rok akademicki i... Ah, pomyślimy!
night - prboom jest o tyle fajny, ze ma zaimplementowane rowniez serwer-client, wiec jak bedziesz mial zdecydowanie za duzo czasu to mozesz sie pobawic w killowanie serwera po lanie :>
/etc/init.d/doom start ? :P
Ale to już naprawdę, jak będę mieć STANOWCZO zbyt dużo czasu. :-)
i zaminy graficzne: apacze + delfiny;)
night - nie, to ma prboom-game-server odpalany jako program (nie-daemon).
Ale z mniejszych przerobek, ktore moglbys zrobic to sortowanie programow wedlug pidow, bo jak wlaczylem to wszystkie potwory byly takie same. Ciekawiej by bylo gdyby init byl cyberdemonem, Xy np caco, a psi czy firefox zwyklym nupkiem ;)
Właśnie to jest pierwsza z modyfikacji, jaką chcę wprowadzić. Nie będzie to trudne - PID troszkę już nam mówi o procesie, do tego wystarczy pobrać CPUtime i MEM% aby mniej więcej uznać, czy proces jest ważny czy nie. Do tego wyrażenia warunkowe - if init then cyberdemon itp.
A zrobić z programu//serwera daemona to żaden problem przecież :-)
psDooM'em zajmę się wraz z moją kobietą, która jest już chętna na takie zabawy (bez skojarzeń:P). Jeśli ktoś chciałby do nas dołączyć - zapraszam!
Jeszcze co do innych modyfikacji - chciałbym stworzyć WAD'a, który będzie miał zamienioną pierwszą planszę na ogromny sześcian (lub coś podobnego), w którym procesy nie będą się aż tak tłoczyć. Do tego zmienić 'aggresora', czyli że proces zaatakuje tylko wtedy, gdy my go zaatakujemy, lub będzie agresywny gdy obciążenie procka będzie >60% (np. gcc :P). Troszkę pomysłów jest, na razie czekam na odpowiedź od Davida, czy mogę pozostawić nazwę psDooM i ogólnie co o tym sądzi :)
night - jesli chodzi o tworzenie IWADow, to troche liznalem temat dawno temu, ale moge sie jeszcze przyjrzec i sprobowac cos wykombinowac
Swego czasu też się bawiłem co nieco we własne "mini-mody" do gier, w tym do DooM'a (którego nota-bene naprawdę ubóstwiam).
Najpierw jednak zajmę się warstwą kodu - dopiero później będę myślał o podobnych zmianach (chyba do modyfikacji WADów na taką skalę potrzebna jest jakaś zgoda IDsoft.. to jest shareware w końcu. Sam nie wiem).
Oczywiście wydane będzie na GPL, żeby nieporozumień nie było (oprócz WADów - chyba mail do ID softa trzeba będzie klecić :P).
night - nie edytujesz WAD. Tworzysz tzw IWAD czyli wlasny pack map i elementow korzystajacy z tego gotowego. Nie potrzeba na to zadnej zgody ;)
WAD też można modyfikować (jak np. *.pak0 z Quake). Jednak jak i we wspomnianym Quake działają rozszerzenia na zasadzie *.pak666, tak w DooM zadziała iWAD. Damy radę :)
Kontynuować!! Podrzuce swojemu dretwemu adminowi, niech sie 'rozerwie' ;)
@FaUst - kontynuacja będzie na 100%. Nawet jeśli autor nie zgodzi się na kontynuację pod nazwą psDooM i nie odstąpi mi projektu na sourceforge skorzystam z jego implementacji i pociągnę to jako odrębny projekt. Ludzi już mam, dużo 'powera' do pracy także. A że projekt jest po prostu dobry (i śmieszny zarazem) na pewno znajdzie odbiorców. Szczególnie, gdy będzie dopracowany w każdym calu i "świeży".
I na marginesie - drętwy admin? :P Kurczę... jakiś ewenement :D Nie znam takowych :-)
night - a moze uzylbys lub zrobilbys cos na ksztalt sali Ksiecia Demonow z DOOM2? Nawiasem mowiac - ej, ten poziom naprawde byl taki hardkorowy? Przeszedlem cala gre, i ten ostatni byl dla mnie mocno odstresowujacy, przelazlem w niecale 3 minuty
Piszesz o MAP30: Icon of Sin czy o MAP29: The Living End? Pogubiłem się :-)
DooM II był prosty... Nie pamiętam już dokładnie całości, jednak wiem doskonale, że końcówka DooM I (ten moment jak "wskakujesz" pomiędzy masę demonów w ciemnościach) był dla mnie bardziej hardkorowy niż np. DooM II lub III :-)
iWAD i jego struktura później :-) Pewnie coś fajnego wymyślę, może sala z teksturami układającymi się w 1337 albo coś podobnego :P Może jakieś 'balkony' czy 'strzelnice'. :> To na razie projekt! Ważniejszy kod i optymalizacja (svga?).
night - o ta ,gdzie na poczatku dostajesz wszystkie bronie, jest lawa, spawnujace potwory i platforma z ktorej po drodze musisz trafic rakieta w leb potwora.
Co do svga itp - mowie, przeportuj na prbooma, jest lepszy. Duzo lepszy. Wersja SVGA ssie, bo sie tnie ;)
A co do planszy - moze arena z dwoma budynkami?
Kurczę, za dużo piję bo pamięć nie ta :-) Pewnie jakbym zagrał to bym sobie przypomniał, niestety... w głowie mam obraz końcówki Quake1 a nie DooM2...
prboom - trzeba pomyśleć. I to poważnie... Masz rację, tylko czy starczy sił?
O planszy myślałem mniej więcej takiej jak piszesz, tylko więcej budynków. Bo mi się CTFFace z UT przypomina :-) Raczej wolałbym coś na kształt wielkiego, wysokiego pomieszczenia z kilkoma wieżo-strażnicami. Pomysły się sypią :D Super :-) Cieszy mnie zainteresowanie tym projektem (kopnęli mnie na wykopie na główną... nieźle...)
night - moge byc betatesterem ! :P
Coz, prboom jest na chwile obecna chyba najpowazniejszym i najporzadniejszym przenosnym engine dooma (eh, dlaczego developerzy Skulltaga postawili na windowsa...). No, jest jeszcze doomsday, ale lubi sie sypac i nie wszedzie dziala (wymaga 3D). IMO przeportowanie psDooMa na prbooma polepszyloby jakosc rozgrywki, umozliwiloby dalszy rozwoj, no i byloby fajniejsze ;)
Ale to kwestia tego, czy dasz sobie rade ;)
Po tak długiej wymianie komentarzy betatestera masz gwarantowanego :-) I prawdę powiedziawszy nie chodzi o to czy "dam radę" (damy radę;)), a o to czy będę mieć czas... Programowanie akurat nie sprawia mi żadnego problemu, zrozumienie mechanizmów jądra już mam za sobą. Wszystko obraca się wokół czasu i zrozumienia nowego "engine'u".Nie ukrywam że nigdy nie ciągnęło mnie w stronę pisania gier, zawsze unikałem tego tematu. Teraz jednak nadarzył się projekt, dzięki któremu łącze przyjemne (DooM) z pożytecznym (Linux!) (bądź też na odwrót :P :P). Sprawdzę tego prbooma... Nie dziś nie jutro, sprawdzę :-)
night - w sensie "dasz/dacie rade" mialem wlasnie ma mysli "starczy ci czasu i checi" ;)
A co do projektu, jak pomolestuje chaxa to przy powazniejszym release bedziesz mial zrobione RPMki (i jak zdobede troche skilla to DEB) ;>
Sam tworzę DEB'y i RPMy (oraz TGZ) ;-) Co do paczkowania to akurat tym się zajmowałem jeszcze zanim zacząłem programować :-) Ale dzięki za chęci :)
night - alez zaden problem ;) Tym lepiej. Coz, trzeba bedzie sie zaznajomic z narzedziami do tworzenia map ;)
O, co do mapek nie będę narzekać :>
Samo kodowanie i zabawa z source potrwa swoje, więc nie liczcie że sa 3-4 tygodnie pojawi się psDooM2 ;-) Może w tym czasie wypłynąć wczesna alfa pomysłów//projektów, na pewno w tym czasie będzie też jakieś wiki czy inny system wymiany informacji między programistami.
Wiem wiem - za dużo pompy :P Całe życie tak idę i jeszcze źle na tym nie wyszedłem. Trzeba na całego! :)
night - polecam assembla.com . Jakos sie nie moglem przemoc do svn, a tu mam ladnie SVN+Trac+Wiki z powiadamianiem mailowym o zmianach itp
Szukałem takie serwisu już dawno! A tutaj jak pod nos :-) DZIĘKI! 100% skorzystam - właśnie TRAC+wiki+SVN to najważniejsze w takim projekcie rzeczy. thx!
night - no problem ;) A do SVN masz juz ulubiony program? Jak nie to polecam RapidSVN, wygodne cholerstwo :P
SVN'a używam już od bardzo dawna i nie znalazłem żadnego klienta, który by mnie satysfakcjonował. Dla mnie 'svn co', 'svn update', 'svn commit' itd. to najlepszy klient SVN w życiu :-)
Rapid używałem, poleciłem kolegom z pracy do użycia w projekcie. Jest najlepszy z graficznych - fakt. Ja jednak... naprawdę wolę konsolę!
Pozytywnie zakręcone :P
A sa może gdzieś dostępne kody? Najlepiej na niesmiertelnośc :)
OMG. psDoom rzadzi. Nie ma to jak wyladowac swoja frustracje na Photoshop'ie :).
Dobrze, ze jest port na Mac OS X'a :).
i co night, pogadales i nic nie zrobiles :P
i nadal nic :(
Słychać coś w związku z psDoom?