pavia писал(а):
Это не обрезание. 1 МБ более чем достаточно, для 99% потребностей разработчиков прикладного ПО. А остальное можно восполнить сторонними библиотеками.
И графический интерфейс не сильно отличается от текстового.
Посмотрите на коммерчески успешные ОС - все они выросли фактически за счёт графического интерфейса. Сначала винда именно интерфейсом всех купила, потом маки ещё более удобным интерфейсом юзеров привлекли, потом айфон с андроидом опять ещё более удобным интерфейсом аудиторию собрали. И даже линукс набирает юзеров только за счёт всяческих 3Д штучек и тому подобных графических ухищрений. Даже чисто серверные ОС, такие как солярис например, давно обзавелись графической оболочкой. А уж линукс с виндой в серверном варианте и подавно рисуют графические окошки.
И даже если ориентироваться на чистых "гиков", привыкших к хардкору в командной строке, даже им для работы нужны, например, файловые системы. Какой объём занимает поддержка файловой системы NTFS ? Очень даже приличный. А помимо неё нужны ещё и FAT32 и серия ext-систем для линукса. И это только что бы иметь возможность работать с наиболее распространёнными форматами. А если подумать о распределённой файловой системе ? Для серьёзных серверов это крайне важная опция, без неё сервер просто не купят, ибо надёжность недостаточна. В результате только поддержка набора различных файловых систем отнимет гораздо больше мегабайта.
Ну и наконец такая мелочь, как удобный API для разработчиков. Эта штучка займёт минимум десятки мегабайт, а скорее всего даже сотни, просто потому что хардкорное программирование с регистрами и прочими радостями низкого уровня не даёт необходимой производительности. Поэтому создаются библиотеки, обязательно включаемые в состав ОС, что бы разработчик не думал где бы что скачать и будет ли это скачанное вообще работоспособно на оси, но просто брал бы документацию, находил бы наиболее удобный способ решения своей проблемы при помощи уже существующих библиотек (и гарантированно работоспособных), а потом бы просто приложив минимум усилий связывал вызовы библиотек в некоторую нужную ему последовательность. В результате скорость разработки, по сравнению с регистрами и прочим низкоуровневым шаманством, растёт на порядки. Поэтому от разработки и включения в состав ОС кучи библиотек ну ни как не уйти. Точнее, все ОС без библиотек никогда не будут коммерчески успешными, ибо тысячелетия потребуются на написание для них всего на низком уровне.
Ну и наконец замечу, что я совсем не против эффективного кода, который пишется на низком уровне с использованием всех возможностей железа, но к сожалению, такой код во первых очень трудоёмок, а во вторых - просто не по силам большинству программистов (без очень длительного переучивания), привыкших к безопасным языкам, которые всё делают за разработчика. Нужно понимать нишу низкоуровневого программирования, что бы не оказаться в ситуации "я потратил на разработку 10 лет, а меня ни кто не ценит!", просто потому что ну не нужны миру системы, на которые нужно тратить аж 10 лет что бы получить программы уровня Hello World (утрированно конечно, но мне кажется проблема показана).
pavia писал(а):
И почему-то на смартфонах, планшетах и ПК разные машины и код не всегда переносим.
Частично не переносим, да. Но это есть следствие решения Google отказаться от совместимости со стандартом Java. У гугла есть финансовая возможность продавить рынок и внедрить несовместимый с настольным вариант Java, но это не значит, что всем нужно смотреть на гуглов и бояться делать совместимый код.
pavia писал(а):
А ты придумай и докажи что до тебя это никто не сделал?!
А что тут доказывать ? Вот есть ОС, 100% которой написана на Java. Система обеспечивает полную независимость прикладного софта от железа и при этом этого самого прикладного софта - как грязи, ибо Java в мире одна из самых распространённых платформ для разработки.