Linux-Development-Sys Digest #114, Volume #7     Fri, 27 Aug 99 01:14:13 EDT

Contents:
  Re: why not C++? (Phil Hunt)
  Re: I HATE LT WIN MODEM!!!!!!!!!!!!!!! (Spike!)
  Re: PROPOSAL: A secure, simple NIS replacement (Philip Brown)
  Re: Strange mount problem (Chris Mahmood)
  Re: HELP! - I've written a kernel module and I can't get it to load!    ******** 
HELP! ******** (John McKown)
  kernel and -m486 (Jacek =?iso-8859-2?Q?Pop=B3awski?=)
  Linux Fortran ("Rex Klopfenstein, Jr.")
  Important news about Corel, Amiga, And Linux ("psyfybre")
  Linux introduction article. ("Kim,Taesung")
  Re: Linux Fortran (J. Otto Tennant)
  User filesystems (Matthew Skala)
  Free Emachine eOne and Palm Pilot V ([EMAIL PROTECTED])
  Re: The optimization debate (was: why not C++?) (Christopher Browne)
  Re: high speed floating point coprocessor (Goran Devic)
  Re: Netgear FA310TX (dotsimo)
  Incorrect module use count. (Stephen Creswell)
  Re: Linux's faults (David Schwartz)

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

From: [EMAIL PROTECTED] (Phil Hunt)
Crossposted-To: comp.os.linux.development.apps,comp.os.linux.misc
Subject: Re: why not C++?
Date: Thu, 26 Aug 99 20:42:51 GMT
Reply-To: [EMAIL PROTECTED]

In article <[EMAIL PROTECTED]>
           [EMAIL PROTECTED] "Tristan Wibberley" writes:
> Johan Kullstam wrote:
> > one thing that bothers me in C++ is the lack of additional operations.
> > for example, in matrix math, you might want two kinds of
> > multiplication.  element-wise or as a matrix.  matlab uses .* and *
> > respectively.  C++ doesn't offer any new operators.  if C++ had a few
> > unnassigned operations, you could overload them with perhaps less
> > confusion than redefining something as basic as addition.
> 
> A general operator syntax, now that would be nice :)
> 
> 
>   C = A `x B;   // cross product
>   C = A `. B;   // dot product
> 
> or something like that - What trigraph would you use for that symbol,
> \\' maybe.
> 
>   C = A \\'x B;
>   C = A \\'. B;

You've got the source to GCC -- perhaps you might like to add it.

BTW, has anyone read Stroustrup's paper where he suggests overloading
the whitespace operator? It's quite an elegant idea, for example
mathematicians would be able to write:

   v = a x + b y + c z;

instead of the usual:

   v = a * x + b * y + c * z;

-- 
Phil [EMAIL PROTECTED]


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

From: Spike! <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.hardware,redhat.hardware.arch.intel
Subject: Re: I HATE LT WIN MODEM!!!!!!!!!!!!!!!
Date: Thu, 26 Aug 1999 21:17:02 +0100

[EMAIL PROTECTED] wrote:
> On Sun, 22 Aug 1999 22:40:15 -0400, george <[EMAIL PROTECTED]> wrote:

> Win modems are also known as controllerless modems. They rely on the
> system CPU to run the phone - computer interface. Traditional modems
> have an on board processor to handle this task. Depending on the
> machine and the amount of data being transferred, the system can take
> a significant performance hit when managing the modem. This is also
> true for certian sound cards which also rely on the system processor
> to do the work. Beware of inexpensive products. It likely doesn't
> perform as well as it's more expensive competitors.

Also beware of "modems" that have a minimum CPU requirement...
That usually indicates that the CPU will be doing most of the work...

-- 
______________________________________________________________________________
| [EMAIL PROTECTED] |                                                |
|    Andrew Halliwell BSc   |"The day Microsoft makes something that doesn't |
|             in            | suck is probably the day they start making     |
|      Computer Science     | vacuum cleaners" - Ernst Jan Plugge            |
==============================================================================
|GCv3.12 GCS>$ d-(dpu) s+/- a C++ US++ P L/L+ E-- W+ N++ o+ K PS+  w-- M+/++ |
|PS+++ PE- Y t+ 5++ X+/X++ R+ tv+ b+ DI+ D+ G e++ h/h+ !r!|  Space for hire  |
==============================================================================

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

From: [EMAIL PROTECTED] (Philip Brown)
Crossposted-To: comp.security.unix
Subject: Re: PROPOSAL: A secure, simple NIS replacement
Reply-To: [EMAIL PROTECTED]
Date: 26 Aug 1999 22:33:03 GMT

On Wed, 25 Aug 1999 14:43:01 GMT, [EMAIL PROTECTED] wrote:
>
>
>  [EMAIL PROTECTED] (Jonathan Abbey) wrote:
>
>> There have been several NIS-type ideas implemented... NIS, NIS+,
>> Kerberos/Hesiod, and the netinfo stuff that NeXT used.  We still use
>> NIS for almost everything because of the ubiquity of it, but a lot of
>> people are moving to LDAP for this sort of thing.
>
>NIS, NIS+, Kerberos/Hessiod and LDAP all have the same problem. I
>already have a user list on my system in some fashion. Its either in the
>passwd file, or broken out (e.g. shadow passwords), and I don't WANT to
>maintian another database.

That's why NIS+ exists.
What's so tough about typing

"nispopulate -F passwd"
after you add a user?
There is basically no additional maintainance after you get it set up,
if all you want to do is "a secure /etc/passwd distribution mechanism"


-- 
[Trim the no-bots from my address to reply to me by email!]
[ Do NOT email-CC me on posts. Pick one or the other.]
 --------------------------------------------------
The word of the day is mispergitude


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

From: Chris Mahmood <[EMAIL PROTECTED]>
Subject: Re: Strange mount problem
Date: 25 Aug 1999 18:33:21 -0700

"Norm Dresner" <[EMAIL PROTECTED]> writes:

> > The copy succeeds, but the cp program probably does a chmod() or chown()
> > on the copied file as well, and that fails since such an operation
> > doesn't make much sense on a DOS file system.
> > 
>       BUT the chmod()/chown() succeeds when the mounter is a user so I don't see
> why it would fail if the mounter is root.
But it doesn't work, that's the whole point.  If you did 'chmod 000
command.com' would that keep someone from deleting command.com when
you booted DOS?  Take Miquel's advice and use the 'quiet' option, it's 
there for reasons like this.
-ckm

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

From: [EMAIL PROTECTED] (John McKown)
Subject: Re: HELP! - I've written a kernel module and I can't get it to load!    
******** HELP! ********
Date: 27 Aug 1999 01:28:45 GMT

On Thu, 26 Aug 1999 19:10:25 GMT, [EMAIL PROTECTED] 
<[EMAIL PROTECTED]> wrote:
>
        [snip]
> ./chardev.o: unresolved symbol bad_user_access_length

I got out my copy of "Linux Device Drivers" and looked up that function in
the index. It referred me to page 102. About 1/3 of the way down the page,
it says: (heading is put_user(datum, ptr))

As a result, if ptr is a char pointer, 1 bytes is transferred, and so on for 
2, 4, and possibly 8bytes. If the data that is pointed to is not one of the
supported sizes, the compiled code calls the function bad_user_access_length.
If such compiled code is a module, it isn't loadable, as the symbol is
not exported.

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

From: [EMAIL PROTECTED] (Jacek =?iso-8859-2?Q?Pop=B3awski?=)
Subject: kernel and -m486
Reply-To: [EMAIL PROTECTED]
Date: Fri, 27 Aug 1999 00:55:33 GMT

  In every kernel I compile it's -m486 option. My question is - is it good
to compile kernel with that option? Why not -m586 ? I thought, that 486
optimisation for pentium is worse than no optimisation...

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

From: "Rex Klopfenstein, Jr." <[EMAIL PROTECTED]>
Subject: Linux Fortran
Date: Thu, 26 Aug 1999 21:02:14 -0400
Reply-To: [EMAIL PROTECTED]

I have a program that I am going to transfer to Linux, the only problem
is that it is written in Fortran.  Can anybody point me to a freeware
(or inexpensive) Fortran compiler.

--
Rex Klopfenstein, Jr.
Bowling Green, OH
[EMAIL PROTECTED]
http://www.wcnet.org/~rklopfen



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

From: "psyfybre" <[EMAIL PROTECTED]>
Crossposted-To: 
alt.binaries.warez.linux,alt.linux.slakware,alt.linux.sux,comp.os.linux.development
Subject: Important news about Corel, Amiga, And Linux
Date: Fri, 27 Aug 1999 03:01:09 +0100

there is important news about amiga, linux, and corel should you be
interested.

you can find the document under "linux" from my homepage, its in the news:

http://www.linuxwarez.dabsol.co.uk

any comments via email please.

laydahs

psyfybre













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

From: "Kim,Taesung" <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.advocacy,comp.os.linux.development.apps
Subject: Linux introduction article.
Date: Fri, 27 Aug 1999 11:13:22 +0900

Hello!
I have been asked to write a article about Linux.
I am looking for a good article that have linux history, sprit, distribution
and introduction.
Thanks for regard.



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

Subject: Re: Linux Fortran
From: [EMAIL PROTECTED] (J. Otto Tennant)
Date: Fri, 27 Aug 1999 02:37:15 GMT

"Rex Klopfenstein, Jr." <[EMAIL PROTECTED]> writes:

>I have a program that I am going to transfer to Linux, the only problem
>is that it is written in Fortran.  Can anybody point me to a freeware
>(or inexpensive) Fortran compiler.

Um ...

Let me quote the French:  "En principe, oui", which is a French phrase
meaning "No."

You have a couple of options, if your program is more or less written
in standard conforming Fortran.  You can try the GNU g77 directly,
or try using f2c followed by gcc.

I don't know of very many Fortran programs which are, in fact,
"standard conforming."

We need to know the dialect the program is written in.

I'll be happy to assist, but I need more information.


>--
>Rex Klopfenstein, Jr.
>Bowling Green, OH
>[EMAIL PROTECTED]
>http://www.wcnet.org/~rklopfen


--
J.Otto Tennant                                                   [EMAIL PROTECTED]
                   Forsan et haec olim meminisse juvabit.
              Charter Member of the Vast Right Wing Conspiracy

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

From: [EMAIL PROTECTED] (Matthew Skala)
Subject: User filesystems
Date: 26 Aug 1999 19:43:33 -0700

I want to write a filesystem.  I do know what that means and that it
really is what I want to do, so if you have it in mind to tell me what
writing a filesystem means or why I don't want to do it, don't bother.

Anyway, userfs seems to be dead (can't find any version later than
0.9.4.2, dated two years ago and targeted to the 2.0 kernels) as well as
being mostly undocumented and requiring either C++ or a totally undocumented
C library.  I found something called podfuk, which is more recent but is
also undocumented, includes a comment that "Notice this file is *evil*",
and appears to require either something weird involving a directory called
/overlay, or a hack involving special filenames with octothorpes in them
(I may be misjudging it, but there *isn't* enough information given in the
docs to understand it better than that without actually analysing the code).

Many archived mailing list messages seem to suggest that subverting the
CODA client mechanism, as podfuk does, is indeed the best way to do things
like userfs these days; but all the information I can find about CODA
seems to be for people who actually want to use the CODA caching and
networking filesystem thing.  I basically want just the functionality that
userfs used to provide, except with documentation so I can actually use
it.  Ideally, it'd have documentation of the *protocol* instead of just
the *library*, but I can live without that.

Does any such software exist?
-- 
Matthew Skala                        "Why should the fates of the groovy
[EMAIL PROTECTED]              and the creepy be intertwined?"
http://www.islandnet.com/~mskala/                      - Valerie Solanas


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

From: [EMAIL PROTECTED]
Subject: Free Emachine eOne and Palm Pilot V
Date: 27 Aug 1999 01:35:30 GMT


Visit http://www.address.com and enter to win.   Tell them [EMAIL PROTECTED] sent 
you!!!


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

From: [EMAIL PROTECTED] (Christopher Browne)
Crossposted-To: comp.os.linux.development.apps,comp.os.linux.misc
Subject: Re: The optimization debate (was: why not C++?)
Reply-To: [EMAIL PROTECTED]
Date: Fri, 27 Aug 1999 03:10:12 GMT

On 26 Aug 1999 10:50:58 -0400, Paul D. Smith <[EMAIL PROTECTED]> wrote:
>%% [EMAIL PROTECTED] (Randall Parker) writes:
>  rp> I would argue that good coding styles, once one has internalized
>  rp> them, are not much if any additional effort to practice. So why
>  rp> not do them everywhere?
>
>For example, I completely agree with you that all optimization shouldn't
>be left to the end: that is, _macro_ optimizations, or optimizations of
>high-level algorithms, should obviously be considered up-front.  But
>that's a much harder thing to do, and I think many programmers
>substitute _micro_ optimizations instead, and feel like they're
>accomplishing something.
>
>I don't believe micro-optimizations buy you much at all, generally, and
>they often take longer to program, have more bugs because they're more
>complicated than they need to be, and are harder to read, understand,
>and maintain for the same reasons.

"Optimization hinders evolution."  -- Alan Perlis

>On a micro level, I believe the best way is to write the code the most
>straightforward way possible first, _then_ when it all works, come back
>and see where you can tweak it to be faster.  Remember, slower, working
>code is always better than faster, broken code.

... And slower, working code that does straightforward things will be
easier to modify than "pre-tuned" code where any change that you make
is likely to break it.

>That being said, if you like to count down and that's your style, that's
>great.  I have no issue with people cultivating styles that are more
>likely to lead to more efficient code!  I, myself, quite often use
>temporary pointers to walk through arrays rather than incrementing a
>counter and using array indexing.  I actually do it because I find the
>code simpler to understand that way, but it's probably faster, too.

The use of "alternative looping styles" has the merit that it bashes
people in the head about preconceived notions about the forcible
ordering of a loop.

It is quite common for programmers to *assume* that there is One True
Loop Ordering.  That restricts their thinking, and probably downright
*prevents* optimizations.

The Common Lisp LOOP macro/language is a pretty interesting scheme for
managing loops, and displays a way of providing optimization by Doing
The Optimization For You.

(loop for x from 1 to 100
           for y = (* x x)
           until (>= y 729)
           finally return (list x (= y 729)))

expands automagically, in CLISP, to

(MACROLET ((LOOP-FINISH NIL (SYSTEM::LOOP-FINISH-ERROR)))
  (BLOCK NIL
    (LET NIL
      (LET ((X 1))
        (PROGN
          (LET ((Y NIL))
            (MACROLET ((LOOP-FINISH NIL '(GO SYSTEM::END-LOOP)))
              (TAGBODY SYSTEM::BEGIN-LOOP
                (PROGN (WHEN (> X 100) (LOOP-FINISH)) (PSETQ Y (* X X)))
                (PROGN (WHEN (>= Y 729) (LOOP-FINISH)))
                (PROGN (PSETQ X (+ X 1))) (GO SYSTEM::BEGIN-LOOP)
                SYSTEM::END-LOOP
                (MACROLET
                  ((LOOP-FINISH NIL (SYSTEM::LOOP-FINISH-WARN)
                      '(GO SYSTEM::END-LOOP)
                  ))
                  (RETURN-FROM NIL (LIST X (= Y 729))))))))))))

The point of the exercise here is that the CL system is permitted a
fair bit of latitude in rewriting the loop so as to optimize it.

The code that it expands to looks like it would be just about as
efficient as it can get, at least in terms of what CLISP can do.

The bonus is that in that the looping system rejects *your* doing much
reasoning about it, it has the "right" to transform the code as it
sees fit.  It could, potentially, generate some tuned assembler code
for parts of it, if it were so implemented.  I'd expect a Common LISP
implemented for a particular processor architecture to do that sort of
thing...

For much the same reason, FORTRAN compilers tend to provide
considerably faster code than C particularly in the context of tight
loops that are working on FP arrays.  

C specifies enough of the behaviour of individual operations that
loops cannot be finely tuned by the compiler, whereas the FORTRAN

      DO 10 I=1,N
     C DO SOMETHING WITH ARRAY A
10    CONTINUE
         
permits considerable latitude for the compiler to "reason" about the
loop.

In effect, C doesn't have any looping control structure; it instead
has control structures that can be used to *implement* looping control
structures.  That pushes the burden of tuning the implementation onto
the developer.
-- 
"The problem might possibly be to do with the fact that asm code written
for the x86 environment is, on other platforms, about as much use as a
pork pie at a jewish wedding."-  Andrew Gierth in comp.unix.programmer
[EMAIL PROTECTED] <http://www.hex.net/~cbbrowne/lsf.html>

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

From: Goran Devic <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.hardware,comp.os.linux.misc
Subject: Re: high speed floating point coprocessor
Date: Fri, 27 Aug 1999 03:46:38 GMT

Nope.

goran.at.3dfx.com

[EMAIL PROTECTED] wrote:

> Would it be possible to utilize a 3dfx 3d-accelerator as
>
> a high speed floating point coprocessor, not necessarily
>
> for displaying anything?
>
> -Jeff
>
> ------------------  Posted via CNET Linux Help  ------------------
>                     http://www.searchlinux.com


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

From: dotsimo <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux.networking,comp.os.linux.hardware,linux.dev.net
Subject: Re: Netgear FA310TX
Date: Fri, 27 Aug 1999 03:31:06 GMT

Try the netgear web sites: 
http://netgear.baynetworks.com/support/support_fa310tx/fa310tx_faqs.shtml
http://www.netgearinc.com/support/support.shtml#nc

The first site explains what the newest FA310TX drivers support
(including Linux) and the second site has the actual driver.

Mikie

Robert McGwier wrote:
> 
> Is there a driver for FA310TX (10/100 PCI card) in existence or development?

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

From: Stephen Creswell <[EMAIL PROTECTED]>
Subject: Incorrect module use count.
Date: Thu, 26 Aug 1999 13:49:30 +0100

Hi,

I have written a char-device driver module for a data-acquisition card
(based heavily on examples courtesy of A. Rubini's excellent book).

I am running RedHat 6.0 (2.2.5-15 kernel) and manually loading and
unloading the driver module from the kernel.

The problem I am experiencing is in a small application which spawns
child processes to handle network socket based access to the
data-acquisition file interface.  The /dev/* files are opened by the
parent process prior to any child process being forked which increments
the use count (n) seen in /proc/modules - OK so far.  When the child
process completes, it decrements the module use count back down to 0
which means that the use count goes down to -n when the parent process
exits!  I am then left unable to unload the module.

According to documentation in A. Rubini's book and elsewhere, the
forking of the child process does not "open" the device driver files
(they are "dup"ed) and should increment the shared file struct use
count.  The child process (when exiting) "closes" the file descriptors
which it inherited but does not call the the module "release" function
as the file struct use count will not be 0.

This all seems logical but would not appear to be happening.

Has anyone got any ideas, information sources they could recommend?

Thanks in advance,

Stephen Creswell


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

From: David Schwartz <[EMAIL PROTECTED]>
Subject: Re: Linux's faults
Date: Thu, 26 Aug 1999 21:10:42 -0700

XuYifeng wrote:

> I think you misunderstand something,  the fd_set structure  uses bitmap
> structure,
> it can only hold max file handle No. is 1023,  even you increase
> max_file_open limit,
> and can open 1024th file and close all file handle except this 1024th
> file handle,
> there is still  no way to put this 1024th file No.  into this structure
> and call select()

        So? Allocate a larger structure and pass it to select. That works just
fine out to about 3,000 file descriptors.

> function, you are rejected out of the door, someone may think I can use
> poll() functions,
> but remember poll() function is not thread-safe, and Linux Pthread
> Library does not
> support it!

        Current versions LinuxThreads on current kernels support poll perfectly
fine. Poll works out to about 15,000 file descriptors last I checked.

        DS

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


** 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 PROTECTED]

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

    Internet: [EMAIL PROTECTED]

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

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

Reply via email to