Path: sparky!uunet!mcsun!corton!cnet!roy From: r...@gismo.cnet-pab.fr (Jean-Michel ROY) Newsgroups: comp.lang.perl Subject: Problem using pipes with MS-DOS perl. Message-ID: <1992Jan09.071230.393@cnet.fr> Date: 9 Jan 92 09:22:00 GMT Sender: roy@gismo (Jean-Michel ROY) Organization: CNET Lines: 54 Each time, I run the folowing program, it create a temporary file like : SWP00929 in my TEMP directory which is never cleaned. Is there a solution to clean this TEMP file in my perl script ? The version of MS-DOS perl : $RCSfile: perl.c,v $$Revision: 4.0.1.4 $$Date: 91/06/10 01:23:07 $ Patch level: 10 The program : @REM=(qq! @perl %0.bat %1 %2 %3 %4 %5 %6 %7 %8 %9 @goto end !) if 0 ; # foreach $i (0..$#ARGV) { print "$i $ARGV[$i]\n"; if ($ARGV[$i] =~ /^-/) { $params .= $ARGV[$i] . " "; } else { $fichiers[$f++] = $ARGV[$i]; } } open (VP, "| rsh gismo lpr $params"); foreach $i (0..$#fichiers) { if (-T $fichiers[$i]) { print "Traitement de $fichiers[$i]\n"; if ($nbfic++ > 0) { print VP "\f"; } open(FIC, "$fichiers[$i]") || die "Impossible d'ouvrir $fichiers[$i] :$!\n"; while(<FIC>) { print VP; $nblig++; } close(FIC); } } close(VP); print "\n$nbfic fichiers traites, representant un total de $nblig lignes\n"; #system "rsh ygerne lpq @ARGV"; # @REM=(qq! :end !) if 0 ;
Path: sparky!uunet!mcsun!uknet!acorn!unipalm!ian From: i...@unipalm.uucp (Ian Phillipps) Newsgroups: comp.lang.perl Subject: Perl under MS-DOS with VROOMM. Message-ID: <1992Jan13.155215.29220@unipalm.uucp> Date: 13 Jan 92 15:52:15 GMT References: <1992Jan09.071230.393@cnet.fr> Organization: Unipalm Ltd., Hardwick, Cambridge CB3 7QJ, England Lines: 31 r...@gismo.cnet-pab.fr (Jean-Michel ROY) writes: > Each time, I run the folowing program, it create a temporary file like : > SWP00929 in my TEMP directory which is never cleaned. Don't know which version that is, but it isn't the one I have. Mine runs out of memory before it does a pipe at all! However - I've a partly-working version ready compiled with the Borland C++ 3.0 compiler, which can take advantage of the Virtual Realtime Object Overlay Memory Manager (is that right? Anyhow, Borland's demand-paged overlay system) to reduce the memory required. I have a configuration which uses a 128k code-swapping arena and totals out at 280k resident without scripts, when ec; the I.e. difference between show mem free and perl -e "system 'show mem free';" is 280k bytes. It's possible to run with an arena of 64k bytes, if you're patient. I'll post the diffs needed to get it going, once I've solved a couple of residual problems and hacked the tests so they don't need perl-calls-perl (it's not THAT small). -- Ian Phillipps, Unipalm Ltd, 216 Science Park, Phone +44 223 420002 Milton Road, Cambridge, CB4 4WA, England. Phax +44 223 426868 Do signatures Have to be three lines?
Path: sparky!uunet!think.com!mips!pacbell.com!tandem!av8r!stu From: s...@av8r.Tandem.com (Stuart Phillips) Newsgroups: comp.lang.perl Subject: Re: Perl under MS-DOS with VROOMM. Message-ID: <1992Jan14.020723.16795@tandem.com> Date: 14 Jan 92 02:07:23 GMT References: <1992Jan09.071230.393@cnet.fr> <1992Jan13.155215.29220@unipalm.uucp> Sender: n...@tandem.com Reply-To: s...@Tandem.COM Organization: Tandem Computers, Cupertino - USA Lines: 54 Nntp-Posting-Host: av8r.tandem.com In article <1992Jan13.155215.29...@unipalm.uucp>, i...@unipalm.uucp (Ian Phillipps) writes: |> |> However - I've a partly-working version ready compiled with the Borland |> C++ 3.0 compiler, which can take advantage of the Virtual Realtime |> Object Overlay Memory Manager (is that right? Anyhow, Borland's |> demand-paged overlay system) to reduce the memory required. |> |> I have a configuration which uses a 128k code-swapping arena and totals |> out at 280k resident without scripts, when ec; the |> I.e. difference between |> show mem free |> and |> perl -e "system 'show mem free';" |> is 280k bytes. |> It's possible to run with an arena of 64k bytes, if you're patient. |> I've completed a port of Perl 4.019 to Borland C++ V3.0 and have it all working except for the inclusion of a DOS port of GNU-ndbm to complete the functionality. Using a 128K arena I have some 300 Kbytes of memory available for scripts; I implemented two user extensions using the usersub.c hooks for free heap and free stack. My version uses a version of spawn that pages the whole enchilada out to extended memory or disk and leaves about 1.5K of itself resident. The results of a 'system("mem");' under DOS-5 shows about 602K available for running programs on my 386 machine. If there's interest I can make the changes (and executable) available via anonymous FTP. |> I'll post the diffs needed to get it going, once I've solved a couple of |> residual problems and hacked the tests so they don't need |> perl-calls-perl (it's not THAT small). |> |> -- I'd like the tests; I've run all the tests and analyzed the results but hacked tests would be nice. Note that using BC++ and the full speed optimizations (I think -O2) found a problem when using the optimization that converts intrinsic functions such as strcmp() etc. to in-lines. I havent done any more exploration of the problem beyond disabling this specific optimization. |> Ian Phillipps, Unipalm Ltd, 216 Science Park, Phone +44 223 420002 |> Milton Road, Cambridge, CB4 4WA, England. Phax +44 223 426868 Are all the people who port Perl to DOS: a) Brits ('cos I am and I presume he is) b) Called Phillips (or Philips or Phillipps or ......) Happy Hacking ! Stu
Path: sparky!uunet!caen!zaphod.mps.ohio-state.edu!qt.cs.utexas.edu! cs.utexas.edu!rutgers!cunixf.cc.columbia.edu!em21 From: e...@cunixf.cc.columbia.edu (Eben Moglen) Newsgroups: comp.lang.perl Subject: Re: Perl under MS-DOS with VROOMM. Message-ID: <1992Jan14.023215.11834@cunixf.cc.columbia.edu> Date: 14 Jan 92 02:32:15 GMT Organization: Columbia University Lines: 20 In article <1992Jan14.020723.16...@tandem.com>, Stuart Phillips writes: >I've completed a port of Perl 4.019 to Borland C++ V3.0 and have it all >working except for the inclusion of a DOS port of GNU-ndbm to complete >the functionality. Using a 128K arena I have some 300 Kbytes of memory >available for scripts; I implemented two user extensions using the >usersub.c hooks for free heap and free stack. > >My version uses a version of spawn that pages the whole enchilada out >to extended memory or disk and leaves about 1.5K of itself resident. >The results of a 'system("mem");' under DOS-5 shows about 602K available >for running programs on my 386 machine. > >If there's interest I can make the changes (and executable) available >via anonymous FTP. I can't imagine any encouragement is really needed, but for my money you're sitting on one of the most important tools I could possibly have right now, and if you release it in the form you say you can, you will be my hero.
Path: sparky!uunet!sun-barr!cs.utexas.edu!swrinde!mips!pacbell.com!tandem!av8r!stu From: s...@av8r.Tandem.com (Stuart Phillips) Newsgroups: comp.lang.perl Subject: Perl 4.019 under MS-DOS using VROOM [ftp info] Message-ID: <1992Jan14.162829.22453@tandem.com> Date: 14 Jan 92 16:28:29 GMT References: <1992Jan14.023215.11834@cunixf.cc.columbia.edu> Sender: n...@tandem.com Reply-To: s...@Tandem.COM Organization: Tandem Computers, Cupertino - USA Lines: 73 Nntp-Posting-Host: av8r.tandem.com In article <1992Jan14.023215.11...@cunixf.cc.columbia.edu>, e...@cunixf.cc.columbia.edu (Eben Moglen) writes: |> |> In article <1992Jan14.020723.16...@tandem.com>, Stuart Phillips writes: |> |> >I've completed a port of Perl 4.019 to Borland C++ V3.0 and have it all |> > ..... |> I can't imagine any encouragement is really needed, but for my money you're |> sitting on one of the most important tools I could possibly have right now, |> and if you release it in the form you say you can, you will be my hero. I always wanted to be a hero ! Alright folks, you can anon-FTP my attempts from tandem.com [in pub/perl]. Here is the text of the README file thats contained in the same directory. This is a port of Perl 4.019 to MS-DOS using Borland C++ V3.0. It will NOT compile with versions of BC++ prior to 3.0. The port is complete given the functionality of DOS versus UNIX. Support will be added in the future for ndbm() routines using GNU-ndbm (when I get around to it !). The port makes use of Borland's VROOM technology and pretty much *requires* access to extended memory. There is approx. 300+ Kbytes of memory available for Perl scripts. The amount of memory available can be checked using two user subroutines added via Larry Wall's usersub.c hook. &heapfree() - returns size of far heap in bytes &stkfree() - returns size of free stack The port also makes use of xspawn() (available from Simtel or Wuarchive if you look hard enough) and will swap itself to either extended memory or disk when Perl invokes the system() call. This leaves about 605 Kbytes of memory available for DOS apps on my 386 machine running DOS 5.0. I've run this port of Perl against all the test cases supplied in the normal Perl release. They all work except those that call perl again (not enough memory !) or have specific UNIX dependencies (that dont work on DOS - too bad !). I've only tested this port on 386 class machines; it should work just fine on any machine with extended memory. As per the Artistic and GNU licenses, you get what you paid for and your on your own ! There are two files herein: bcdos_perl-4.019.zoo Contains all the source files as well as perl library. There are only one or two files that have changed from the standard 4.019 release (nice job lwall on portable code !). bcdos_perl-4.019E.zoo Contains the executeable for perl PERL.EXE and all the library files for perl. If you don't intend to re-build PERL, then THIS IS THE FILE FOR YOU ! Nota bene re extended memory; This port attempts to reserve 128K bytes of extended memory for the VROOM arena; it will take more if it can get it but is reasonably frugal. A 64K arena ran like a DOG so this is about the optimum size of memory versus speed. If you can run Windows on your machine then this port should run *just fine*. Happy hacking ! Stuart G. Phillips N6TTO/G8HQA/DA4BM/OZ... (you get the idea) [s...@tandem.com]