Pisząc "Znowu", mam na myśli, że już ktoś kiedyś próbował (http://4programmers.net/Forum/Java/170451-system_operacyjny_napisany_w_javie z pozdrowieniami od wujka Google, który znalazł ten temat sprzed 2 lat).
Ja miałbym w związku pytanie. Jeżeli wasza odpowiedź mnie zainspiruję, to może w coś takiego się pobawię (od pewnego czasu zastanawiam się nad systemem operacyjnym dla seniorów, tzn. łatwym do obsługi, przejrzystym itd.). Najpierw jednak, kilka informacji (jeżeli gdzieś się pomyliłem, to mnie poprawcie):
Programy w Javie odpala się za pomocą JVM (zwane także JRE). JVM to Java Virtual Machine, czyli maszyna wirtualna. Maszyna wirtualna to program symulujący działanie komputera (jak VirtualBox), dzięki któremu można przetestować inne systemy operacyjne. Taki trik Suna sprawił, że program z Javy powinien teoretycznie działać tak samo, bez względu na system operacyjny. Niestety, JVM nie posiada pojedynczej wersji, ale aż 4: Windows, Mac OS X, Linux i Solaris.
Zacząłem się zastanawiać, co z tym zdziałać, aż tu nagle jakimś cudem trafiłem do biblioteki miejskiej, gdzie znajdowały się komputery. Po uruchomieniu jednego, wyświetlały się teksty jak przy ładowaniu systemu, lecz co chwila przelatywało mi słowo "Linux". Pomyślałem sobie, że pewnie użyli go, bo jest darmowy. Nieoczekiwanie, zamiast normalnego ekranu, włączyła się natychmiastowo przeglądarka Chrome. Mimo dostępności przycisków maksymalizacji i minimalizacji, te przyciski nie działały. Działał jedynie przycisk zamknięcia programu, który całkowicie wyłączał komputer. W związku z tym, pomyślałem, że można tak napisać system w oparciu o jądro Linuxa, że będzie on mógł odpalić tylko jeden program. Poczytałem trochę o jądrze Linuxa i znalazłem to: http://pl.wikipedia.org/wiki/Linux_(j%C4%85dro)#Uruchamiane_oprogramowanie
Zainteresowało mnie tam zwłaszcza to, że jądro Linuxa może odpalać programy napisane w Javie poprzez maszynę wirtualną (tu chodzi chyba o JVM). W związku z tym, moje pytania do profesjonalistów jest następujące:
- Czy można utworzyć taką wersję Linuxa, który odpala tylko jeden program?
- Czy tym programem może być program napisany w Javie, odpalany przez zainstalowany w Linuxie JVM?
- Czy cały ten pakiet (jądro Linuxa + JVM + program w Javie) musiałby podlegać chociażby licencji GPL, czy też samo jądro Linux? (Linux jest na tej licencji, i wymaga zachowania licencji dla kopii bądź modyfikacji jądra)