LINUX.ORG.RU
решено ФорумTalks

Почему драйвер видеокарты не сидит в видеопамяти?

 


0

1

Что мешает-то? Драйверы винчестеров в них самих и сидят, например, и сетевые принтеры тоже самоходные. И вообще, почему все железки не делают со встроенным драйвером, чтобы наружу только интерфейсы торчали?

★★★
Ответ на: комментарий от firkax

Вы зачем этот бессмысленный вопрос задали?

anc ★★★★★
()

Драйверы винчестеров в них самих и сидят

Вот это поворот!

Black_Shadow ★★★★★
()

Потому что драйвер - это прослойка между устройством и операционной системой. Соответственно он должен быть написан под стандарты операционной системы на которой работает.

Кроме того «драйвер» - это понятие растяжимое.

Просто картинку выводить - в PC-совместимых компьютерах драйвер вообще не нужен.

- - -

То что сидит в винчестере - не драйвер, а фирмварь. Отличие от драйвера в том, что фирмварь управляет компонентами устройства по отдельности и транслирует в интерфейс только нужные данные. Сможет ли операционная система вовремя крутнуть шаговый двигатель на градус, когда на 7-й датчик придет единица? Возможно. Но тогда 50% пропускной способности шины будет забито командами крутилок.

В видеокартах такая фирмварь тоже есть. У тебя ж что-то преобразует содержимое видеопамяти в набор нулей и единиц HDMI-я, или RGB\vsync сигналы VGA? Вот этим и занимается фирмварь.

- - -

Поэтому тезисно мешает:

- Отсутствие стандартов зоопарка ОС в области исполняемого кода;

- Невозможность ОС контролировать работу отдельных компонентов устройства в режиме реального времени. Это в интернетике ты можешь получить байт на две секунды позже. В случае видеокарты для разрешения 640х480@60 сигнал изменяется 25 миллионов раз в секунду. Любой лаг или опережение приведет к искажению изображения;

- Появление большого количества лишней, паразитной информации в интерфейсе. Одно дело послать команду «считать байты из сектора 2345», и совсем другое дело послать сотню команд на сдвиг головки, включение, переход в чтение, чтение, запоминание позиции, и так далее;

- Лаги связанные с скоростью движения электронов + плюс перекрестные помехи. 300 000 км\с - это весьма высокая скорость для человека. Но на огромных частотах для огромных объемов передачи данных, этой скорости уже недостаточно: передатчик успевает послать единицу раньше чем до приемника дойдет предыдущий ноль. Отсюда все эти размещения памятей поближе к процу и прочие читерства. Поэтому большое количество несжатых данных выгоднее передавать на наименьшем расстоянии, а на большее передавать уже систематизированную информацию.

windows10 ★★★★★
()
Последнее исправление: windows10 (всего исправлений: 1)
Ответ на: комментарий от windows10

Просто картинку выводить - в PC-совместимых компьютерах драйвер вообще не нужен

Есть https://en.wikipedia.org/wiki/Video_BIOS который исполняется на процессоре компьютера. Это вроде бы firmware, но обычно под firmware понимают код, который исполняется на самой видеокарте, а не на компьютере.

MOPKOBKA ★★★★★
()
Ответ на: комментарий от MOPKOBKA

Не совсем. Скорее специальная область. Такие области в принципе допустимы организацией памяти x86, и присутствуют не только в видеокартах, а например еще в рейд-контроллерах. И вроде сетевухи могут от себя вносить PXE-меню.

Но так или иначе гонять стопку gpio.write на центральном процессоре - идея так себе.

windows10 ★★★★★
()
Ответ на: комментарий от windows10

Не совсем. Скорее специальная область.

А что «не совсем»? Не хватается цитирования, это к чему относится? Область это не так важно по моему, драйвер откуда угодно может грузиться. Главное где исполняется, с чем работает.

MOPKOBKA ★★★★★
()

У видеокарт памяти и так мало. Пора уже делать видеокарты со вставляемыми плашками.

MOPKOBKA ★★★★★
()
Ответ на: комментарий от Wapieth

X-терминалом. И такие терминалы подключались к мейнфрейму

Да ладно?! Неужели к IBM System z?

futurama ★★★★★
()
Ответ на: комментарий от MOPKOBKA

У видеокарт памяти и так мало. Пора уже делать видеокарты со вставляемыми плашками.

Так это баян, ещё в прошлом веке были видяхи с кроватками под видеопамять.

anc ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)