Subject: Linux-Development Digest #292
From: Digestifier <[email-masked]>
To: [email-masked]
Date: Tue, 11 Oct 94 21:13:18 EDT

Linux-Development Digest #292, Volume #2         Tue, 11 Oct 94 21:13:18 EDT

Contents:
  [Q] How to start a new development (Billy the Kid)
  SCSI generic driver woes. (M. K. Shenk)
  Re: Korn Shell '93 Now Available from AT&T (Darin Johnson)
  Linux 1.1.50+ cache scheme sucks (what happened to me?) (Byron Faber)
  Re: Suggestion: comp.os.linux.channelecho.* (Matthias Urlichs)
  Re: ext2fs vs. Berkeley FFS (Matthias Urlichs)
  Re: A badly missed feature in gcc (Chris Bitmead)
  Re: Linux 1.1.52 (Lies, Damned Lies, and Benchmarks) (Jeff Kuehn)
  Re: Term blocks modem, switching to VT and back restores? (Rafal Kustra)
  Re: Looking for X graphics/ Plotting libraries (Dimitris Evmorfopoulos)
  Re: Looking for X graphics/ Plotting libraries (CookieMonster)
  How about Madge Token Ring?? (was Re: IBM Token Ring Support?) (Daniel Tager)
  Re: umount problem! (Kurt M. Hockenbury)
  Re: Suggestion: comp.os.linux.channelecho.* (H. Peter Anvin)
  Question about ext2fs ("Eric Jeschke")

----------------------------------------------------------------------------

From: [email-masked] (Billy the Kid)
Subject: [Q] How to start a new development
Date: 11 Oct 1994 12:43:52 -0700

To anyone who would like to assist, I have the following questions:

1.  Is there a FAQ or HOWTO on developing a new application/device for
Linux.  I would like to start development on a Token Ring addition for
Linux, and I am not shure where to start.  I also would like to know about
any documents pertaining to the GNU public lisence or special requirements
for Linux module/kernel development. 

2.  Are there any good books that describe the syntax for writing 
assembly for Unix in general?  I'm not looking for processor 
instructions, I know x86 assembly, but I'm not familiar with the 
procedure for writing assembly in Unix.  Is there a assembler that mimics 
MASM, or TASM as far as macros or data declaration? Are there any 
software interrupts created for Linux that resemble the DOS int 21h 
family? Is there a FAQ on this?

I think that Linux is the coolest thing since sliced bread, but it's not 
teaching material at my college.  The Token Ring driver, at this point, 
just research for my Jounior Project.  The goal is to hook Linux w/ X up 
to a ring of workstations and use the design applications over the network.

Please don't mail-bomb me if I've asked the wrong question or screwed up 
somehow, this is my first attempt at a Usenet posting and at doing 
assembly for Unix.

Thanks for any help,
Davin Petersen

please relpy to:
[email-masked]
-- 
[email-masked]  Public Access User --- Not affiliated with TECHbooks
Public Access UNIX and Internet at (503) 220-1016 (2400-14400, N81)

------------------------------

From: [email-masked] (M. K. Shenk)
Subject: SCSI generic driver woes.
Date: 10 Oct 1994 10:53:01 GMT

O.K.  I have been working on getting a flatbed SCSI scanner working under
Linux.  A nice person told me I could avoid a bunch of work by using the
SCSI generic character driver, and sent me some sample code.  It all
looks pretty easy now, IF I could get Linux to recognize the scanner
(does not come up at bootup) and figure out how minor numbers on major
21 (for scsi generic) relate to devices.  I have 8 major 21 entries in
/dev, minors 0-7, which leads me to believe that perhaps the minor is
the scsi id of the device.  However:

dune:/dev# cat sg*
cat: sga: Permission denied
cat: sgb: Permission denied
cat: sgc: No such device or address
cat: sgd: No such device or address
cat: sge: No such device or address
cat: sgf: No such device or address
cat: sgg: No such device or address
cat: sgh: No such device or address   

These go from minor 0-7 as letters go from a-h.  So the system seems to think
the entries w/minors 0 and 1 relate to some device, and the other don't.  
Things looked good for a minute: the scanner is on id 1.  However, I
could not get it to respond to an inquiry.  And then there is the fact that
that entry with minor 0 seems to 'exist' to the system.  And the fact
that at powerup, my AHA-1742 recognizes all 3 devices on my SCSI bus, 
but Linux only gets the HD and the DAT.  (id's 5 and 2, resp.) 

I could have something up and scanning within an evening--if only I
could get past this hurdle.  Once I can send packets to the scanner, I'm
homefree, as I have this nice little pamphlet on the scanner describing
all the commands.  

There is no documentation on scsi generic except the source.  Most of it
seems pretty understandable, except I cannot (yet) find out for certain
how minors are being mapped to devices (tho I have a good idea) and
cannot figure out this non-recognition problem.  

Can someone provide a helpful hint, a pointer to some documentation, 
something, anything?  

I can successfully send an inquiry packet to /dev/sda and /dev/sdb
(21 0 and 21 1 resp.) without any problems--i.e. the program runs
without bombing--but I get no reply to the inquiry.  I sent a self-test
code and got nothing as well.  I combed logs looking for kernel
messages providing a clue--nothing.  Can someone tell me why these two
devices seem to 'exist' but the others don't?  Booting with or without
the scanner powered on makes no difference--they always seem to
mean something to Linux, leading me to believe my scanner is NOT getting
the packets I'm sending...

arg, help!

Thanks in advance,
Craig.

------------------------------

From: [email-masked] (Darin Johnson)
Subject: Re: Korn Shell '93 Now Available from AT&T
Date: 07 Oct 1994 02:35:59 GMT

> When
> it comes to 'advanced' programming features: stick to the good old
> bourne shell so that your scripts will run everywhere. If you really
> need more advanced facilities then you'd better use a 'real'
> programming language (such as perl or C etc.).

True enough.  I've found that the most common use for the
advanced features of ksh and derivatives is to put it in your
.profile!  That's the only place it is going to be reasonably
portable.  If you use it to create a shell script, then you're
dependent upon having that shell everywhere the script will
run.  If you do find a shell script using extra file descriptors
and such, then you're better off using something other than the
shell to run it.
--
Darin Johnson
[email-masked]  --  Toy cows in Africa

------------------------------

From: [email-masked] (Byron Faber)
Subject: Linux 1.1.50+ cache scheme sucks (what happened to me?)
Date: 11 Oct 1994 19:58:05 GMT

Ok, here's a general question.  Maybe its me:

Recently I got a bigger HD, so I made a 16 meg swap partition.  This
is in addition to my 8 meg ram.  However, while using 1.1.5x, it seems
that my buffers NEVER fall below 2 meg.  And I mean NEVER.  Not unless
I'm almost out of ram. (out of everything, including virtual)

This seems kinda annoying as I need to swap much more out of memory now,
so that Linux can have its 2 meg Buffer region.

Is this a factor of using Linux 1.1.53, or has it always been like this?
(I used to have a 12 meg swap partition & never thought it swapped 
this bad).

Thanks,
Byron Faber

-- 
Real programmers don't comment their code.  It was hard to write, it
should be hard to understand.
                        [email-masked] & http://www.cen.uiuc.edu/~bf11620

------------------------------

From: [email-masked] (Matthias Urlichs)
Subject: Re: Suggestion: comp.os.linux.channelecho.*
Date: 11 Oct 1994 09:14:04 +0100

In comp.os.linux.development, article <[email-masked]>,
> # Linux gated mailing lists
> linux.act.*:[email-masked]
> linux.*:[email-masked]
> 
Thank you.

> > (b) Why the *censored* are they using moderated newsgroups instead of a
> >     reasonable bidirectional gateway?
> 
> Because the linux-activists mailing list strips message-ID information
> when digestifying, and hence it is not possible to prevent your
> message from getting posted again when it comes back from the mailing
> list.
> 
Ah. I was under the impression that the linux-activists lists are gated at
the point where the digest is assembled, which would have made this a
non-problem, among others (like, for instance, good References: headers).

Frankly, I think this is unfortunate as it makes linux.act.* _less_
reliable than the mailing lists. Grumble. You might note that several
development efforts (like Debian) have set up their own mailing lists
because of that. 

> Of course, I started this as a way for myself to read linux-activists
> in a bit more manageable form, then I started getting requests for
> feeds when someone saw my followup line posted... but I really didn't
> expect to feed this many sites all over the world... from my Linux
> box, to boot.  :-)
> 
Most new and interesting things on the net start that way...

Well, the cat's out of the bag now.

Now for the next problem -- how the *** do I unsubscribe myself from these
mailing lists? (Don't tell me the official answer; it doesn't work.)

-- 
"Can I have some applesauce?"
               -- Homer in _Call_of_the_Simpsons_ while being kept for 
                  observation and gnawing on a raw pork chop, from The Simpsons
-- 
Matthias Urlichs        \ XLink-POP Nürnberg  | EMail: [email-masked]
Schleiermacherstraße 12  \  Unix+Linux+Mac    | Phone: ...please use email.
90491 Nürnberg (Germany)  \   Consulting+Networking+Programming+etc'ing     42
          PGP: 1B 89 E2 1C 43 EA 80 44  15 D2 29 CF C6 C7 E0 DE 
      Click <A HREF="http://smurf.noris.de/~urlichs/finger">here</A>.

------------------------------

From: [email-masked] (Matthias Urlichs)
Subject: Re: ext2fs vs. Berkeley FFS
Date: 11 Oct 1994 09:43:32 +0100

In comp.os.linux.development, article <[email-masked]>,
  [email-masked] (Patrick Schaaf) writes:
> 
> That's a perfectly valid filename; why waste one character?
> 
>               fd1 = open("MyDataFile/ICON",O_RDONLY);
> 
> If memory serves, this is the way CAP, a Mac filesystem on Unix package,
> maps Mac file forks.
> 
Actually, the resource fork for file /foo/bar/baz is stored in
/foo/bar/.resource/baz. Likewise, all the auxiliary information is in
/foo/bar/.finderinfo/baz.

Apple has published a different standard for storing Mac files called
AppleDouble, where all the non-data fork things are in /foo/bar/%baz, in a
list of variable-length typed records. (The standard covers things like
MS-DOS file attributes, too.) A related standard, AppleSingle, has the data
fork encoded in that variable-length scheme; the file is called
/foo/bar/baz but you have to use an access library to skip the non-data
stuff at the front (and possibly at the end, too).

AppleSingle/Double encoding is supported by MIME and by the NFS/Share
NFS client for the Mac. It's slightly ugly because all the typed data
snippets must be contiguous, meaning that you have to shuffle data around
when one of the chunks gets bigger.

To get this discussion back on track, I don't think Linux (or any other OS)
needs direct support for multiple-fork files. The only problem with storing
lots of itty-bitty attributes in lots of itty-bitty files is the space/time
wastage you incur when you do it, which can be fixed within the file system
independent of whatever other problems we might have. ;-)
Given that it's conceivable for each of these itty-bitty things to have
their own file attributes, access lists, et al., why invent a whole new
scheme of doing things when you can easily map your ideas onto the old
scheme?

-- 
Why is it that people who know nothing are so quick to prove it?
-- 
Matthias Urlichs        \ XLink-POP Nürnberg  | EMail: [email-masked]
Schleiermacherstraße 12  \  Unix+Linux+Mac    | Phone: ...please use email.
90491 Nürnberg (Germany)  \   Consulting+Networking+Programming+etc'ing     42
          PGP: 1B 89 E2 1C 43 EA 80 44  15 D2 29 CF C6 C7 E0 DE 
      Click <A HREF="http://smurf.noris.de/~urlichs/finger">here</A>.

------------------------------

From: [email-masked] (Chris Bitmead)
Subject: Re: A badly missed feature in gcc
Date: 11 Oct 94 17:27:58

In article <wcreator.781655152@kaiwan009> [email-masked] (Steven M. Doyle) writes:

>In <[email-masked]> [email-masked] (Rob Janssen) writes:
>
>>It has always amazed me how many people try to remove pieces of coding for
>>debugging purposes using "comment" constructs...
>>This may be required in other languages, but is not in C.  C compilers
>>traditionally have had the luxury of the pre-processor, so you can just
>>use:
>>#if 0
>>#endif
>
>       To each his own.  I personally use both in debugging my programs,
>for one reason.  I see no reason to add the #if/#endif when one or three
>lines of code is being commented out.  It's much simpler just to use /**/ or
>//.

Using comments is foolish IMO. With ifdef you can easily grep though the
code to remove or look at commented out code. With C comments, it just
gets lost.

------------------------------

From: [email-masked] (Jeff Kuehn)
Subject: Re: Linux 1.1.52 (Lies, Damned Lies, and Benchmarks)
Date: 11 Oct 1994 15:23:46 GMT

Michael O'Reilly ([email-masked]) wrote:
: Jeff Kuehn ([email-masked]) wrote:
: : Hi All!
: [ ... ]

: : 1.1.51|1. |1. |1. |1.1|1.2| .8| .8| .6| .9| .7|1. |1.1| 1. |1. |1. | .9|15.2
: : 1.1.52|1. |1. |1. |1.1|1.2| .8| .8| .6| .8| .5| .7|1.1| 1. |1. |1. | .5|14.1
:                                                                     ^^^
: This makes no sense at all. There was no changes to the syscall
: interface from 51 to 52 (at least, that I saw in a glance thru the
: diff). I think I'll take those figures with a very large pinch of
: salt.

: Any change you could run the test twice on 52 and 51 again and see how
: stable the results are? i.e. whats the variance in these numbers?

: Michael.
: -- 
: Michael O'Reilly @ iiNet Technologies, Internet Service providers.
: Voice (09) 307 1183, Fax (09) 307 8414. Email [email-masked]
: GCS d? au- a- v* c++ UL++++ L+++ E po--(+) b+++ D++ h* r++ u+
:        e+ m+ s+++/--- !n h-- f? g+ w t-- y+ 

I have run several of the tests twice to get a feel for the variance in the
results.  In all cases, I have not observed a variance of greater than 0.1
in the individual results (not the sums).  The arithmetic and dhrystone
tests do provide some level of sanity check... notice that they don't vary
at all from one run to the next.  The variation in syscall performance may
be due to the particular syscalls that were used in the test rather than the
interface itself.  The syscalls used in this particular test were:

        dup, close, getpid, getuid, umask
        (no fair optimizing these to get a better score on the benchmark :-)

The benchmark is structured to "even out" the variances by calling these 5
syscalls in a tight while loop for 1 minute to produce a single timing
measured in loops per second.  This is then repeated for a total of 6
timings and the geometric mean of the 6 results is recorded as the "score"
for that category.

As a sanity check, I will rerun the tests for 1.1.50 through 1.1.53 (now
released), however, I do not expect to see much variation in the results.

--Jeff Kuehn, NCAR/SCD

------------------------------

Crossposted-To: comp.windows.x.i386unix
From: [email-masked] (Rafal Kustra)
Subject: Re: Term blocks modem, switching to VT and back restores?
Date: 11 Oct 94 14:22:59 GMT

OOps forgot to mention. Using term2.0.1 on both ends.

                        Rafal

------------------------------

From: [email-masked] (Dimitris Evmorfopoulos)
Crossposted-To: gnu.gcc.help
Subject: Re: Looking for X graphics/ Plotting libraries
Date: 11 Oct 1994 21:39:21 GMT

CookieMonster ([email-masked]) wrote:

: I am working on a small project, and need some library routines to do 
: some simple X windows graphics: Pop open a window, take some disk data, 
: and graph the data in the window with auto-scaling, axis, etc. SInce I 
: want to spend more time on the data producing side of the program, I need 
: a package that can do the plotting for me.

: Thanks,
: Pratik

: +++++++++++++++++++++++++++++++++++++++++++++++++
: + Pratik R. Patel -> [email-masked]    +
: + ->[email-masked]                          +   
: + ->[email-masked]              +
: + -_-_-_-_-_-_Applied Science major_-_-_-_-_-_-_+
: +    Journeyman for hire on the e-Frontier    +
: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Why dont you spawn gnuplot to do this lob for you ?

--
 ______      _______
|  __  \    |  _____|      [email-masked] Dimitris Evmorfopoulos
| |  \  |   | |___         (312)-296-6034
| |   | |   |  ___|      
| |___| |   | |_____       I saw a GNU Hurd once !. There were lots of  
|_______| * |_______| *    little GNU's running all together like crazy.

------------------------------

From: [email-masked] (CookieMonster)
Crossposted-To: gnu.gcc.help
Subject: Re: Looking for X graphics/ Plotting libraries
Date: 11 Oct 1994 23:01:26 GMT

>: a package that can do the plotting for me.
>
>Why dont you spawn gnuplot to do this lob for you ?

Well, I don't need that much "firepower", and want to use all the 
processor time on my measly 486DX50 to chew on the data to be graphed. I 
simply need to plot the data in 2D, with auto-scaling, nothing fancy, 
really:->

Pratik

------------------------------

From: [email-masked] (Daniel Tager)
Subject: How about Madge Token Ring?? (was Re: IBM Token Ring Support?)
Date: 6 Oct 1994 18:00:04 GMT

Is anyone working on a driver for a madge token ring card?

------------------------------

From: [email-masked] (Kurt M. Hockenbury)
Subject: Re: umount problem!
Date: Thu, 6 Oct 1994 18:06:22 GMT

[email-masked] wrote:
: In article <[email-masked]>, [email-masked] (Mark D. Roth) writes:
: > I just encountered a weird problem with umount.  I am using the umount
: > that comes with the binary distrib of util-linux-1.10 under linux
: > 1.1.51.  When I mount a floppy and move files to it (the filesystem
: > was ext), and then umount it
: > 
: > Anyway, I dunno what's causing this.

: You are not allone in the dark, I have similar problems after upgrading 
: the kernel.
: And I have not any idee what causing it.
: So people help us please.

There was a bug with the floppy code in 1.1.51; get the floppy fix, or get
1.1.52.
        -Kurt Hockenbury

------------------------------

From: [email-masked] (H. Peter Anvin)
Subject: Re: Suggestion: comp.os.linux.channelecho.*
Reply-To: [email-masked] (H. Peter Anvin)
Date: Tue, 11 Oct 1994 14:35:59 GMT

Followup to:  <[email-masked]>
By author:    [email-masked] (Matthias Urlichs)
In newsgroup: comp.os.linux.development
> 
> Now for the next problem -- how the *** do I unsubscribe myself from these
> mailing lists? (Don't tell me the official answer; it doesn't work.)
> 

Forge a message using 
/usr/lib/sendmail -f from-address [email-masked]

Note: requires root access, and you to type in all relevant headers.

        /hpa

-- 
INTERNET: [email-masked]             --- Allah'u'abha ---
IBM MAIL: I0050052 at IBMMAIL     HAM RADIO:   N9ITP or SM4TKN
FIDONET:  1:115/511 or 1:115/512  STORMNET:    181:294/1 or 181:294/101
init: Received SIGNUKE, killing all users

------------------------------

Crossposted-To: comp.os.linux.help
From: "Eric Jeschke" <[email-masked]>
Subject: Question about ext2fs
Date: Tue, 11 Oct 1994 15:03:13 -0500

Can someone with some knowledge of the ext2fs internals tell me
how intensive the disk activity is to certain blocks like the
superblock and inode bitmap blocks?  extfs is working fine, but
I'm afraid I have a poor quality disk (Seagate) that is not able
to handle the intense repeated disk activity to these blocks.

I am slowly developing bad blocks on various inode bitmap blocks
(and now the superblock).  The kernel complains about getting a
"short read" on those blocks.  I am able to map them out successfully
using the -L option with ext2fs and the system recovers admirably,
but sooner or later the problem recurs with another block.  The
latest victim is the superblock on the root partition.  I am able
to e2fsck the partition using the -b 8193 option and averything seems
fine, however the system fails to mount it at bootup even though
I added sb=8193 to the mount options in /etc/fstab for /.

How can I successfully boot from this partition now?

I am running Slackware Linux 1.0.8.  Planning to upgrade when 1.2
kernel is released.

Thanks for any information.

-- 
Eric Jeschke                      |          Indiana University
[email-masked]            |     Computer Science Department

------------------------------

** FOR YOUR REFERENCE **

The service address, to which questions about the list itself and requests
to be added to or deleted from it should be directed, is:

    Internet: [email-masked]

You can send mail to the entire list (and comp.os.linux.development) via:

    Internet: [email-masked]

Linux may be obtained via one of these FTP sites:
    nic.funet.fi				pub/OS/Linux
    tsx-11.mit.edu				pub/linux
    sunsite.unc.edu				pub/Linux

End of Linux-Development Digest
******************************