Xref: utzoo alt.msdos.programmer:422 comp.lang.pascal:2380 Path: utzoo!attcan!uunet!bloom-beacon!bionet!apple!sun-barr!rutgers!psuvax1!psuhcx!wcf From: wcf@psuhcx.psu.edu (Bill Fenner) Newsgroups: alt.msdos.programmer,comp.lang.pascal Subject: Re: Multi-user BBS programmed with Turbo Pascal 5.5 Message-ID: <1672@psuhcx.psu.edu> Date: 27 Sep 89 16:30:00 GMT References: <89268.185440TBC101@PSUVM.BITNET> Reply-To: wcf@psuhcx.psu.edu (Bill Fenner) Organization: Engineering Computer Lab, Penn State University Lines: 27 In article <89268.185440TBC101@PSUVM.BITNET> TBC101@PSUVM.BITNET (Thomas B. Collins, Jr.) writes: |I am seriously considering writing a BBS. I'll probably be writing it |with Turbo Pascal 5.5 since I don't know C... I'd like to be able to |make it multi-user, and was wondering what I need to do as I |plan/program in order to allow for this. The only idea I've had so far |is to write it so that it will run under something like Desqview and |then a multiple copies of it for each 'Node' of the BBS. You could either do that, or write a multi-tasking kernel, which services I/O and other requests... then you can have one program running, no need for Desqview or any other multitasker... unfortunately, writing a multi-tasking kernel is a bear, and I certainly wouldn't want to try it. :-) So your best bet is probably to use a multi-tasker, run multiple copies of the program, and use *good* *un-limiting* locks on your files... pref. record-locking if you can figure out how... Make sure you kill all the locks when you reboot (I had a lot of troubles with this one time... a file was locked, I rebooted, and it was still locked so the board would hang waiting to read it... ugh.) ("the board" there refers to Lynx, which I was evaluating. Didn't choose it.) Bill -- Bitnet: wcf@psuhcx.bitnet Bill Fenner | aaaaaaaaa Internet: wcf@hcx.psu.edu | r UUCP: {gatech,rutgers}!psuvax1!psuhcx!wcf | g Fido: Sysop at 1:129/87 (814/238 9633) \hogbbs!wcf | h