*BSD News Article 39996


Return to BSD News archive

Xref: sserve comp.unix.sys5.r4:8965 comp.unix.pc-clone.32bit:7925 comp.unix.misc:15321 comp.unix.bsd:15765 comp.sys.powerpc:30799 comp.sys.intel:27290 comp.os.misc:3614 comp.os.linux.misc:32502 comp.os.linux.development:21846 comp.os.386bsd.misc:4586 comp.os.386bsd.development:2933
Newsgroups: comp.unix.sys5.r4,comp.unix.pc-clone.32bit,comp.unix.misc,comp.unix.bsd,comp.sys.powerpc,comp.sys.intel,comp.os.misc,comp.os.linux.misc,comp.os.linux.development,comp.os.386bsd.misc,comp.os.386bsd.development
Path: sserve!newshost.anu.edu.au!harbinger.cc.monash.edu.au!msunews!uwm.edu!news.moneng.mei.com!howland.reston.ans.net!usenet.ins.cwru.edu!wariat.org!kf8nh!bsa
From: bsa@kf8nh.wariat.org (Brandon S. Allbery)
Subject: Re: Interested in PowerPC for Linux / FreeBSD / NetBSD?
Message-ID: <1994Dec29.225921.23979@kf8nh.wariat.org>
Organization: Brandon's Linux box and AmPR node, Mentor, OH
Date: Thu, 29 Dec 1994 22:59:21 GMT
References: <3dv5oj$ibd@usenet.srv.cis.pitt.edu> <NEWTNews.21154.788736098.muzaffer@omer1.smixedsignal.com>
Lines: 38

Also sprach muzaffer@smixedsignal.com (<NEWTNews.21154.788736098.muzaffer@omer1.smixedsignal.com>):
+---------------
| (Of course, I may be terribly mistaken here. If there is something wrong with
| the first paragraph, please tell me and I will shut up).
+------------->8

All NT programs (and, for that matter, all MS-Windows 3.1 programs) go though
several interfaces including a DLL call interface and a set of device drivers
in order to perform GUI operations.  This means that you can change the
mapping between the call interface and the actual GUI operations by replacing
the DLL(s), the drivers, or both.

Replacing the DLLs is a bit tricky in 3.1 (it's probably impossible), since
the "DLL" being called is in fact the MS-Windows kernel and (as far as I can
determine, but then I'm not much of an MS-Windows programmer) there's no way
to interpose your own DLLs to replace system DLLs like Solaris (!) has; but
Sun's Wabi and the Wine development effort might count as examples of this
method.  Replacing the drivers for this purpose has already been done
(Quarterdeck's DESQview/X) and it works fine, if a little slowly.

NT supposedly has the ability to replace the module that sits between the
call-level interface and the graphics drivers with a module that can do other
protocols, e.g. to reroute graphcs requests to an X server.  Check the January
1995 COMPUTER LANGUAGES for an article about NT's graphics subsystem which
specifically discusses X interfacing (from the opposite direction, but some
mention is made of the possibility of mapping NT calls to X requests).

Remember, Xlib doesn't define X; the X protocol defines X.  Xlib is merely a C
library which performs X protocol requests for the program, insulating it from
the details of the X protocol and the network connection.  There's no
particular reason that the standard Xlib calling interface couldn't be
replaced with the NT calling interface...

++Brandon
-- 
Brandon S. Allbery KF8NH	 [44.70.248.67]		bsa@kf8nh.wariat.org
Linux development:  iBCS2, JNOS, MH					 ~\U
Controlling application developers is like herding cats. --Oracle DBA Manual