Здравствуйте, SaZ, Вы писали:
SaZ>Ещё раз, что значит "избыточны"?
Это значит, что содержат и/или требуют количества ресурсов, значительно превышающего объективно потребные.
24 колеса в городском автомобиле — избыточны. 567 клавиш на стандартной компьютерной клавиатуре — избыточны. Разрешение 13" экрана в 16000x10000 — избыточно. Всего этого не делают по единственной причине — это потребует заметно больше труда и создаст заметно больше проблем, нежели добавление нового шаблонного класса.
SaZ>Не используйте никакие ОС, пишите машинными кодами под bare metal.
По-Вашему, это единственный способ избавиться от многократной избыточности кода/данных?
SaZ>Не создавайте проблему на пустом месте.
Если разработчики 24-колесного городского автомобиля или 567-клавишной клавиатуры на Ваш вопрос "на хрена столько?" дадут Вам такой же ответ — чем станете крыть?
ЕМ>>большие расходы времени на отрисовку будут грузить процессор, а использование аппаратного ускорения нередко приводит к тому, что видеодрайвер надолго (по меркам ядра) зависает на повышенных приоритетах. Все это не идет на пользу стабильности звуковых потоков при коротких буферах.
SaZ>Пруф будет?
До хренища, даже подбирать не буду — гуглите хотя бы LatencyMon и его результаты на разном железе с разными драйверами.
SaZ>Такой софт как Virtual Dj мало того что рисует весь GUI через видеокарту, так они ещё используют GPU для создания звуковых эффектов в realtime.
Почти каждому разработчику такого софта приходится наступать на одни и те же грабли, и обходить их.
SaZ>Что вы понимаете под словом "потребного"?
Вам знакомо понятие "объективно"? Вот городскому автомобилю для уверенного передвижения потребны минимум три колеса, а четырех — достаточно. Добавление еще двух, десяти или двадцати колес не повышает устойчивости, надежности, комфорта и т.п., а даже снижает их. Это и есть объективная оценка потребного объема ресурсов.
SaZ>Повторюсь, почему вы не пишете машинными кодами под bare metal, а используете ОС и высокоуровневые языки?
ОС я использую потому, что их использует подавляющее большинство пользователей моих программ — так же, как подавляющее большинство автовладельцев использует дороги, и не нуждается в средствах передвижения, шагающих по бездорожью. Эти программы — не вещь в себе, они интегрируются в ОС, и без них не имеют смысла.
Высокоуровневые языки я использую потому, что умею их готовить. Избыточность по сравнению с машинными кодами составляет 10-15% в самых узких местах, и 20-30% — в наименее критичных. А ресурсоемкость изготовления машинного кода той же функциональности была бы в разы выше. Вот такая простая арифметика.
А какими
объективными факторами Вы можете оправдать избыточность кода/данных современного софта в десятки раз, кроме того, что "пипл хавает" и "не вижу проблемы"?