barton@holston.UUCP (barton) (02/10/89)
When attempting to pipe tar output to dd for a larger blocking factor with the line: tar cf - . | dd obs=512k > /dev/rct0 I get an error from dd saying: arguement 512k out of range. This in on SCO 2.2.1 286 Xenix. Suggestion appreciated. Barton A. Fisk Voice: 318-439-5984 Barton A. Fisk & Co. PO Box 1781 Lake Charles, La. 70602-1781 UUCP: { texbell, uunet, killer }!warble!holston!barton ---------------------------------------------- +++++++ "Hal, open the pod-bay doors" - Dave ----------------------------------------------
cdold@starfish.Convergent.COM (Clarence Dold) (02/11/89)
From article <6@holston.UUCP>, by barton@holston.UUCP (barton): > When attempting to pipe tar output to dd for a > larger blocking factor with the line: > tar cf - . | dd obs=512k > /dev/rct0 > I get an error from dd saying: arguement 512k out of range. Two possibilities: 1) You're maximum process size precludes allocating a buffer of that size. ( You can probably find the max proc size at boot time ) 2) The DMA hardware for the tape drive can't handle a transfer of that size. Some DMA controllers have a transfer count register of 16 bits, good for 64k worth of transfers, which might correspond to 128k bytes to tape, and 33MB to disk. -- Clarence A Dold - cdold@starfish.Convergent.COM (408) 434-2083 ...pyramid!ctnews!professo!dold MailStop 18-011 P.O.Box 6685, San Jose, CA 95150-6685
edwin@ruuinf.UUCP (Edwin Kremer) (02/13/89)
In article <6@holston.UUCP>, barton@holston.UUCP (barton) writes: > When attempting to pipe tar output to dd for a > larger blocking factor with the line: > tar cf - . | dd obs=512k > /dev/rct0 > I get an error from dd saying: arguement 512k out of range. I checked the source code on our Harris HCX-9, see a part of the comments below: /* The BIG parameter is machine dependent. It should be a long integer */ /* constant that can be used by the number parser to check the validity */ /* of numeric parameters. On 16-bit machines, it should probably be */ /* the maximum unsigned integer, 0177777L. On 32-bit machines where */ /* longs are the same size as ints, the maximum signed integer is more */ /* appropriate. This value is 017777777777L. */ #define BIG 017777777777L The value 512k is checked against BIG to see if you're using a reasonable output buffer size. Well, dd concludes you're not :-) I guess you're on a 16-bit machine, sorry... --[ Edwin ]-- -- Edwin Kremer, Department of Computer Science, University of Utrecht Padualaan 14, P.O. Box 80.089, 3508 TB Utrecht, The Netherlands Phone: +31 - 30 - 534104 | UUCP : ...!hp4nl!ruuinf!edwin "I speak for myself ..." | INTERNET: edwin@cs.ruu.nl