LINUX.ORG.RU

Графический режим


1

1

Предположим мы установили какой-нибудь дистрибутив Linux. Он не имеет графической оболочки, только консоль. Мы же имеем gcc или nasm. Вопрос, как сделать так, чтобы при запуске моего откомпилированного приложения на экране появилась графика? Графика без иксов, миров и вяленых. С чего начинаются разработки графических серверов? Как сделать черный экран? Hello World, понимаешь.

Здесь чисто спортивный интерес, дабы узнать, как работают такие графические сервера. Через какую технологию? Как заставить ядро это сделать? Как сформировать матрицу цветов в количестве точек на экране и передать видеокарте?

Заранее благодарен.

Например, на ARM, вообще нет текстовго режима. На x86 тоже используется графическая консоль (одна из причин - логотип Тукса).

Для простенькой программы достаточно будет писать во фреймбуфер, хотя современные графические окружения используют аппаратное ускорение. Есть мануал для Raspberry Pi, позволющий исползовать OpenGL без X-ов.

tlx ★★★★★
()
Последнее исправление: tlx (всего исправлений: 1)

расковыряй исходники xvesa

q11q11 ★★★★★
()

Он не имеет графической оболочки, только консоль.

define „графическая оболочка“

консоль тоже бывает разная равно как и железо и его модули видео.

Вопрос, как сделать так, чтобы при запуске моего откомпилированного приложения на экране появилась графика? Графика без иксов, миров и вяленых.

Используй framebuffer да графика будет но не будет никакого ускорения т.е. если что то и заработает то здравствуйте тормоза.

С чего начинаются разработки графических серверов?

С составления т.з. ?

Как сделать черный экран?

Консоль в linux по дефолту черный фон со светлыми буквами.

Hello World, понимаешь

> cat hello_world
#!/bin/sh

echo "Hello World !"

Здесь чисто спортивный интерес, дабы узнать, как работают такие графические сервера.

define „такие“

А вопрос:

Через какую технологию?

в поставленных выше условиях

Графика без иксов, миров и вяленых

не имеет смысла, поскольку единственной возможностью остаётся исключительно только framebuffer

Как заставить ядро это сделать?

А это вообще не имеет смысла поскольку ядру вообще насрать на графику.

init_6 ★★★★★
()

Вот ещё сходный вопрос чтобы тему не создавать. Как (если это возможно) сделать программу с GUI на qt4/qt5 чтобы она работала напрямую с фреймбуфером на обычной машине или ноуте?

// Гуглил несколько раз, всё как-то неудачно.

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

Вот ещё сходный вопрос чтобы тему не создавать. Как (если это возможно) сделать программу с GUI на qt4/qt5 чтобы она работала напрямую с фреймбуфером на обычной машине или ноуте?

подозреваю, что никак.

А что запускать с твоей программы Иксы с драйвером «fbdev» не?

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

Там довольно узкоспециализированная штука и иксы нужны только чтобы её запустить. Хотел их выкинуть вообще.

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

Спасибо, почитаю, хотя вроде это не совсем то. В идеале хотелось бы чтобы всё работало напрямую с фреймбуфером, но вряд ли такое возможно.

AlexKiriukha ★★★★
()

DirectFB тебя спасёт. Можно SDL для упрощения жЫзни

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

Вот ещё сходный вопрос чтобы тему не создавать. Как (если это возможно) сделать программу с GUI на qt4/qt5 чтобы она работала напрямую с фреймбуфером на обычной машине или ноуте?

Тут уже зависит от самого тулкита. И я увы про qt ничего не могу сказать а вот к примеру на gtk+ можно. К примеру Using GTK+ on the Framebuffer или Projects:GTK on DirectFB и будет вообще без иксов правда я хз как там тогда с раскладками и прочим.

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

Не могу сказать как оно работает там «внутри», но у меня на арм железке нет никаких иксов, только Qt и моя Гуевая программа, рисующая свой гуй с помощью Qt.

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

про qt ничего не могу сказать

был Qt Embedded который умел работать с костылями поверх fbdev.

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

Стрелял бы за такие ответы.

А я стрелял бы за такие вопросы.

ЗЫ: И да учитывая степень неадекватности вопроса - ответ просто великолепен.

init_6 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.