Мысли вслух.
Настоящие мысли ни на что не претендуют. Возможно, они навеяны перечитанными где можно материалами, возможно все нижесказанное давно придумано. Я не специалист, и за термины не цепляться.
С момента появления "окон" мало что изменилось. Появляются новые "рюшечки", переносятся кнопочки с права налево, а смысл один и тот же. Пора думать о операционной системе (ОС) будущего.
Вот теперь и мысли...
Технология сервер-клиент, технология виртуализации и облака - это будущее (хотя можно сказать, что уже настоящее). Не даром Майкрософт быстренько побежал патентовать все идеи по виртуализации.
Главные критерии ОС - это безопасность, надежность, расширяемость... Вот из этих постулатов и начнем.
Разобьем ОС на составные части, это - ядро, база данных, хранилище (по требованию), интерфейс ОС (по требованию), клиентская часть ОС.
Ядро, оно и есть ядро.
База данных содержит системную информацию (пользователи, индексы файлов и пр. , все что касается ОС).
Хранилище отвечает за бэкап данных (в пределах одной физической машины, или отдельной).
Интерфейс - это веб, или иной интерфейс для настройки ОС (вполне подойдет консоль).
Клиентская часть ОС - позволяет через графический интерфейс подключаться к контейнеру приложения.
Оказывается сложно, мысли свести в понятный текст ...
ОС создает виртуальную среду для запуска приложений (не других ОС, а может и других ОС). Приложения запускаются в изолированной среде.
Каждое приложение имеет динамически выделенный участок памяти для работы и хранения данных. Приложение для ОС готовиться по типу контейнера OpenVZ. Одно приложение - одна виртуальная среда.
Полностью отказываемся от каталога HOME. Каждый файл (пользовательский) имеет индекс пользователя и контейнера приложения, и расположен он в контейнере приложения. Не важно где он расположен физически.
О памяти. Грядет эра твердотельных дисков. Растут возможности и объемы "быстрой" памяти. Мне кажется для будущей ОС понятие память будет включать в себя и "быструю" память, и диски и хранилища. Так что ОС сама должна распределять динамически размер памяти и место хранения информации в памяти (в быстрой или на диске).
О "окнах". Для десктоповских приложений нужен конечно графический интерфейс. Клиентская часть ОС, должна подключиться к контейнеру приложения и вывести данные на монитор. Рабочий стол должен больше приспособлен для работы через сенсорную панель (по типу смартфонов) или другие тактильные приспособления.
Такое построение ОС, позволит разворачивать её на 1 или более физических машин. Для ОС все машины выглядят как одна система. ОС сама размножает себя на машины подключенные к приватной сети, определяет железо, память и др. Взаимодействие с внешним миром происходит через другой сетевой интерфейс.
Изолированность приложений от ОС и друг от друга дает большую безопасность всей системы.
Конечно здесь много "но". Хотя мне кажется, что это выполнимо все уже сегодня. Если на базе линукса свести многие проекты и идеи в одну ОС.
p.s. Думаю, поймет ли кто мои мысли (или это бред...)


