From owner-freebsd-hackers Tue Nov 17 00:48:31 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id AAA10599 for freebsd-hackers-outgoing; Tue, 17 Nov 1998 00:48:31 -0800 (PST) (envelope-from owner-freebsd-hackers@FreeBSD.ORG) Received: from relay.ucb.crimea.ua (relay.ucb.crimea.ua [194.93.177.113]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id AAA10438 for ; Tue, 17 Nov 1998 00:47:11 -0800 (PST) (envelope-from ru@ucb.crimea.ua) Received: (from ru@localhost) by relay.ucb.crimea.ua (8.8.8/8.8.8) id KAA19048; Tue, 17 Nov 1998 10:39:25 +0200 (EET) (envelope-from ru) Date: Tue, 17 Nov 1998 10:39:25 +0200 From: Ruslan Ermilov To: Mike Smith Cc: Robert Nordier , FreeBSD Hackers Subject: Re: FreeBSD on i386 memory model Message-ID: <19981117103925.A16673@ucb.crimea.ua> Mail-Followup-To: Mike Smith , Robert Nordier , FreeBSD Hackers References: <19981114191556.A17660@ucb.crimea.ua> <199811141904.LAA06709@dingo.cdrom.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.94.15i In-Reply-To: <199811141904.LAA06709@dingo.cdrom.com>; from Mike Smith on Sat, Nov 14, 1998 at 11:04:28AM -0800 X-Operating-System: FreeBSD 2.2.7-STABLE i386 Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Sat, Nov 14, 1998 at 11:04:28AM -0800, Mike Smith wrote: [...] > > > It seems that as(1) doesn't understand ``lcall $SECTION, $OFFSET''. > > At least on my 2.2.1, 2.2.5 and 2.2.7+ machines: > > No, it doesn't. You can either upgrade to a newer assembler, or > do it the "old" way: > > #define LCALL(x,y) .byte 0x9a ; .long y; .word x > > Note that on 3.0 systems we use int 0x80 for kernel entry, as it's > faster. > Could you please explain why it is _faster_ than ``lcall' and what is the difference between them? The only difference that I know of at the moment is that ``int 0x80'' will push EFlags, CS:EIP into stack, while ``lcall'' will only push CS:EIP pair. Where is the code that sets up protected mode and defines the layout of the kernel? Where is defined that syscall multiplexor is running on $7:$0? Thanks in advance, -- Ruslan Ermilov Sysadmin and DBA of the ru@ucb.crimea.ua United Commercial Bank +380.652.247.647 Simferopol, Ukraine http://www.FreeBSD.org The Power To Serve http://www.oracle.com Enabling The Information Age To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message