LINUX.ORG.RU

История изменений

Исправление wandrien, (текущая версия) :

Что продвинутый айтишник, разбирающийся в архитектуре, ожидал бы от дисплейного сервера будущего:

  • Программа типа tmux или twin, но пригодная не только для текстовых, то и для графических приложений. Ты можешь запустить программу на любом железе, а потом работать с ней с любого другого железа.

Что он получает:

  • Фреймбуфер на костылях с кучей бойлерплейта сверху.

Задача операционной системы – создавать высокоуровневые абстракции над оборудованием. Здесь абстрагирование не выполнено.

Отдельно умиляет аргумент, что «иксы эта сложна надо всё сложное выкинуть нахрен».

Да – системная разработка это сложно. А когда это было легко? Разработка подсистемы памяти в ядре – это сложно, разработка драйверов GPU — это сложно, проработка нетривиальных абстракций — это сложно.

Но это сложность, которая необходима, потому что она открывает новые пути и решения, которые ранее были невозможны. Собрав всю сложность, по смыслу связанную с «X», в одном месте, мы даём возможность остальному коду от неё избавиться. И ему уже не нужно будет заниматься сложными вещами «X», а вместо этого можно будет заняться сложными вещами «Y», то есть решать свою собственную задачу.

Исходная версия wandrien, :

Что продвинутый айтишник, разбирающийся в архитектуре, ожидал бы от дисплейного сервера будущего:

  • Программа типа tmux или twin, но пригодная не только для текстовых, то и для графических приложений. Ты можешь запустить программу на любом железе, а потом работать с ней с любого другого железа.

Что он получает:

  • Фреймбуфер на костылях с кучей бойлерплейта сверху.

Задача операционной системы – создавать высокоуровневые абстракции над оборудованием. Здесь абстрагирование не выполнено.

Отдельно умиляет аргумент, что «иксы эта сложна надо всё сложное выкинуть нахрен».

Да – системная разработка это сложно. А когда это было легко? Разработка подсистемы памяти в ядре – это сложно, разработке драйверов GPU — это сложно, проработка нетривиальных абстракций — это сложно.

Но это сложность, которая необходима, потому что она открывает новые пути и решения, которые ранее были невозможны. Собрав всю сложность, по смыслу связанную с «X», в одном месте, мы даём возможность остальному коду от неё избавиться. И ему уже не нужно будет заниматься сложными вещами «X», а вместо этого можно будет заняться сложными вещами «Y», то есть решать свою собственную задачу.