LINUX.ORG.RU

Сообщения wikaka

 

разъясните,пожалуйста,как происходит вычисление

скорректировал сам файл test.c:

#include <stdio.h>
#include <stdint.h>

int main(void) {
	uint32_t a;
	uint64_t b,c,d;
	a=1149952;
	printf("a=%ld\n",a);
	b=(a*4)/1024;
	c=(a*4096)>>20;
	d=(a*4096)/(1024*1024);
	printf("b=%lld c=%lld d=%lld\n",b,c,d);
	return 0;
}
компиллирую и запусаю в 32хбитной системе:
$ gcc test.c  -o test
$ ./test 
a=1149952
b=4492 c=396 d=396
почемы вфчисляется так?

wikaka
()

как сделать скриншот консоли без изменения текущего терминала?

при звгрузке линукса запускается обычно 7 терминалов. У меня иксы на 7ом.Я хочу, не прерывая свою работу в иксах сделать снимок со второго виртуального терминала. Просто снять экран можно так: chvt 2;sleep2; fbgrab ... но это прервет мою работу и сменит виртуальный терминал. Как же сделать скриншот того, чего нет в данный момент на экране? Как сделать скриншот консоли не переключая виртуальный терминал?

wikaka
()

библиотека libMagicCore Важна или нет?

Весь вопрос в том, зависит ли как либо работа X-сервера в общем от данной библиотеки. Я посмотрел на 6 имеющихся у меня линуксах. Везде есть, где есть X-server. Подскажите, всегда ли она есть в системе(libMagickCore) где установлены иксы.

Спасибо

wikaka
()

[c/c++] SCREENSHOT без доп. библиотек (возможно без xlib)

У всех есть как linux console, так и экземпляр X11 на каком-нить tty. Меня озаботило следующее. Как,универсальным образом, не прибегая к сторонним библиотекам типа Qt(но там с linux console не берется) снять снимок экрана.

Так вот задача. хочу: программа делает скриншоты с текущего экрана и неважно что на нем, linux console или иксы. что умею: с помощью framebuffer брать скрины с linux console.И вообще с экрана. НО. если фреймбуфер не настроен так же как и Иксы(разрешение или глубина цвета), то через него не получается получить полноценное содержимое экрана.

Умею с помощью Qt или совсем чисто на X библиотеках получать содержимое экрана, но это тянет за собой много зависимостей,в том числе и от версий библиотек. Используя только Xlib - не написал, но вместе с ImageMagick или Magick++ написал. Но я хочу, чтобы мое приложение должно иметь минимум зависимостей.

Приходит разумный вопрос: почему бы не настроить одинаково Иксы и фреймбуффер - потому что пользователь не должен заметить изменений в своей системе.Все это делается чтобы снимать скрины с машины, пользователь которой не знает, что его сейчас снимают и он не должен переживать =)

Что хочу спросить: в /dev есть такие устройства как nvidia0 nvidiactrl и т.д. Эти уустройства создаются драйвером видеокарты. Все что мне пока понятно - так это то, что они символьные =))) Как с ними взаимодействовать и через какие ioctl - непонятно. НО ведь как-то это возможно! Или же есть еще какой-нибудь механизм,кроме фреймбуффера для получения содержимого экрана.

Если кто знает или сталкивался с такой темой - поделитесь. Или же реализация скриншотов на чистой Xlib.

Спасибо.

wikaka
()

Помогите с дизассемлированием

вот инструкция в виде hex: ff 15 51 19 00 00 она расположена по адресу: ffffffffa00ee061

это вызов tmp.Объявлено это так ( на си) : int function2(int a); int (*tmp)(int )=function2;

Вот адрес функции и адрес, по которому хранится адрес tmp:ffffffffa00ee070 &tmp:ffffffffa00ef9b8

я никак не могу понять, как формируется смещение. Я попробовал разобраться в этой комманде. mod:0 reg:2 rm:5 смещение:0x00001967

на всякий случай, если поможет - значение регистра rdi :ffffffffa00ee030

wikaka
()

RSS подписка на новые темы