From owner-freebsd-emulation Wed Sep 10 18:13:30 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id SAA12372 for emulation-outgoing; Wed, 10 Sep 1997 18:13:30 -0700 (PDT) Received: from freebie.lemis.com (gregl1.lnk.telstra.net [139.130.136.133]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id SAA12367 for ; Wed, 10 Sep 1997 18:13:23 -0700 (PDT) Received: (from grog@localhost) by freebie.lemis.com (8.8.7/8.8.5) id KAA28622; Thu, 11 Sep 1997 10:41:39 +0930 (CST) Message-ID: <19970911104139.00351@lemis.com> Date: Thu, 11 Sep 1997 10:41:39 +0930 From: Greg Lehey To: Sean Eric Fagan Cc: gallatin@CS.Duke.EDU, emulation@FreeBSD.ORG, jkh@time.cdrom.com, mike@smith.net.au, sos@sos.freebsd.dk Subject: Re: Net posting: SCO gets Linux emulation References: <199709110105.SAA09151@kithrup.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.81e In-Reply-To: <199709110105.SAA09151@kithrup.com>; from Sean Eric Fagan on Wed, Sep 10, 1997 at 06:05:10PM -0700 Organisation: LEMIS, PO Box 460, Echunga SA 5153, Australia Phone: +61-8-8388-8250 Fax: +61-8-8388-8250 Mobile: +61-41-739-7062 WWW-Home-Page: http://www.lemis.com/~grog Fight-Spam-Now: http://www.cauce.org Sender: owner-freebsd-emulation@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk On Wed, Sep 10, 1997 at 06:05:10PM -0700, Sean Eric Fagan wrote: >>> Well, its somewhat interesting because it runs entirely in userland >>> and traps system calls via a SEGV handler. >> Ugh. Is this what we have come to expect of SCO? > > That is both unfair and rude. (Bit of a warning here... I've known the > author ever since I interviewed at SCO, and I happen to like him.) Well, in fact, I left the question open. I was wondering. Sure, it works (well, the concept works, and I assume the emulator does), but it's not exactly the way to get high performance. > I looked at the program; it's interesting, but not terribly exciting. > However, I might have done the iBCS2 emulation the same way, if I could > have -- however, trapping the system call vector in a user-mode program is > hard. If 386BSD had used a different entry vector... It's a question of performance. If I understand it correctly, you do a SIGSEGV for every system call. > Mike also probably would have done the program using LDT manipulation, > except for the fact that the IDT is global. Yes, I'm sure that there are constraints which made him choose this method. >>> And because of this, I imagine that its a good bit slower. Also, >>> their '$LINUX_ROOT' path remapping is interesting if only for its >>> flexibility, but their choice of what paths to remap is very >>> haphazard compared with the {Free,Net}BSD approach. >> Doesn't sound like a serious implementation effort to me. > > To a large degree, it isn't. He did it as a quick&dirty way to be able to > run the Linux port of Acrobat Reader (there is/was no SCO version), and > apparantly convinced SCO to allow him to release it under a Berkeley-style > license. > > All told, it probably took Mike about a day to write this. OK, basically you're agreeing with me. My thoughts were "this is a cheap way to get functionality. It won't bring performance". I've written plenty of that category in my time, and some of them have been great successes. Greg