From owner-freebsd-questions Tue Aug 15 19:38:50 1995 Return-Path: questions-owner Received: (from majordom@localhost) by freefall.FreeBSD.org (8.6.11/8.6.6) id TAA28432 for questions-outgoing; Tue, 15 Aug 1995 19:38:50 -0700 Received: from cs.weber.edu (cs.weber.edu [137.190.16.16]) by freefall.FreeBSD.org (8.6.11/8.6.6) with SMTP id TAA28425 ; Tue, 15 Aug 1995 19:38:47 -0700 Received: by cs.weber.edu (4.1/SMI-4.1.1) id AA08347; Tue, 15 Aug 95 20:30:50 MDT From: terry@cs.weber.edu (Terry Lambert) Message-Id: <9508160230.AA08347@cs.weber.edu> Subject: Re: Netware gateway. To: msmith@atrad.adelaide.edu.au (Michael Smith) Date: Tue, 15 Aug 95 20:30:49 MDT Cc: msmith@atrad.adelaide.edu.au, gary@palmer.demon.co.uk, paul@freebsd.org, questions@freebsd.org In-Reply-To: <199508160010.JAA27070@genesis.atrad.adelaide.edu.au> from "Michael Smith" at Aug 16, 95 09:40:33 am X-Mailer: ELM [version 2.4dev PL52] Sender: questions-owner@freebsd.org Precedence: bulk > > > Um. What address restrictions? If the IP all happens on a private network > > > and everything is proxied, what assignment restrictions are there? > > > > Well, I think running the extra stack will take more memory. > > Yeees... a few hundred K at most. It's a VxD, so despite all it's other > faults, when you're not using it it will be swapped out. Huh? Maybe I'm corrupted by Win95, but... Most VxDs like to be pinned if they are going to be taking interrupts: #pragma code_seg("_LTEXT", "LCODE") #pragma data_seg("_LDATA", "LCODE") I think you are thinking the default: #pragma code_seg("_PTEXT", "PCODE") #pragma data_seg("_PDATA", "PDATA") Which is usually overruled in the linker .DEF file anyway, and is forced to be locked. You might use something like this for a split queue in/out serail driver, if you wanted to take the speed hit. The only other option is really: #pragma code_seg("_ITEXT", "ICODE") #pragma data_seg("_IDATA", "ICODE") Which is used for the real mode init system message and is unloaded immediately by the default loader (or by the VPE loader VXDLDR.VXD), #pragma code_seg("_STEXT", "SCODE") #pragma data_seg("_SDATA", "SCODE") Which are static segments used for things like the callback tables registered with IFSMgr_RegisterMount(), which is too stupid to be able to deregister code, so you have to leave it there in case it gets called back into, and #pragma code_seg("_DBOCODE", "DBOCODE") #pragma data_seg("_DBODATA", "DBOCODE") Which are only there for debug versions of the VxDs (and are locked too). The main advantage of a VxD is that it can live in high memory, not that it's typically pageable (especially a VxD for a network driver that gets called as a result of IFSMgr requests to a registered interface by way of IFSMgr_RegisterNet()). Net and file system VxD's are very, very different. Anyway, it's been pointed out that you aren't using a multihop Novell NetWork from the clients to the gateway, so it's really a moot point at best. Happy sailing, Terry Lambert terry@cs.weber.edu --- Any opinions in this posting are my own and not those of my present or previous employers.