[devel] linux-libc-headers & vm86.h

Sergey Vlasov vsu на altlinux.ru
Чт Июл 13 21:46:19 MSD 2006


On Thu, Jul 13, 2006 at 09:26:28PM +0400, Konstantin A. Lepikhov wrote:
> Hi Led!
> 
> Thursday 13, at 08:22:59 PM you wrote:
> 
> > В сообщении от 13 июля 2006 20:18 Konstantin A. Lepikhov написал(a):
> > > Hi Led!
> > >
> > > Thursday 13, at 08:07:43 PM you wrote:
> > > > Отсутствие asm/vm86.h в сборке linux-libc-headers для x86_64 -
> > > > преднамеренно?
> > >
> > > для x86_64 vm86() неактуально.
> > 
> > Неактуально или невозможно?
> на уровне ia32_syscall оно поддерживается.

Нет - x86_64 вообще не поддерживает vm86():

long sys32_vm86_warning(void)
{ 
	struct task_struct *me = current;
	static char lastcomm[sizeof(me->comm)];
	if (strncmp(lastcomm, me->comm, sizeof(lastcomm))) {
		printk(KERN_INFO "%s: vm86 mode not supported on 64 bit kernel\n",
		       me->comm);
		strncpy(lastcomm, me->comm, sizeof(lastcomm));
	} 
	return -ENOSYS;
} 

Единственный возможный способ выполнения кода для реального режима
8086 на x86_64 - полная программная эмуляция процессора.  В частности,
соответствующий код (x86emu) есть в xorg (там он используется для
выполнения кода из BIOS видеоадаптера).
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 191 байтов
Описание: отсутствует
Url     : http://lists.altlinux.org/pipermail/devel/attachments/20060713/1fe28b79/attachment.bin 


Подробная информация о списке рассылки Devel