Linux-Development-Sys Digest #190, Volume #7 Mon, 13 Sep 99 21:14:09 EDT
Contents:
Re: interrupt times on SMP pentium, linux 2.2.9 (bill davidsen)
klogd crashes after dialing isp (quark)
Re: Max threads and TCP connections? (bill davidsen)
getting 2.3.xx experimental kernel (ntser1)
Re: Lexmark Printer ("Ricky Duke")
Re: journaling: (was Re: EROS, persistency, ext3fs?) (Joseph H Allen)
Re: Max threads and TCP connections? (Joseph H Allen)
Re: threads (David Schwartz)
incorrect kernal version error? (Rich Gear)
Re: Flamage - Why? (Christopher Browne)
help.. How to use copy_from_user(), nearly there (Karlo Szabo)
Re: Flamage - Why? (Bill Anderson)
Re: insmod linux driver error -- init_module: Invalid argument. (Rich Gear)
Re: 497.2 days ought to be enough for everybody (David Schwartz)
Re: getting 2.3.xx experimental kernel (Karlo Szabo)
Re: Max threads and TCP connections? (David Schwartz)
Re: Max threads and TCP connections? (David Schwartz)
----------------------------------------------------------------------------
From: [EMAIL PROTECTED] (bill davidsen)
Subject: Re: interrupt times on SMP pentium, linux 2.2.9
Date: 13 Sep 1999 22:44:44 GMT
In article <7r67md$q1o$[EMAIL PROTECTED]>, <[EMAIL PROTECTED]> wrote:
| =======================================================================
| The machine was kept busy with two find commands:
| % find /
| % find /
| ========================================================================
Thank you for the research and presentation of the information. Have you
tried this on a machine with a cpu load, as opposed to the find load
which is likely to be i/o bound?
--
bill davidsen <[EMAIL PROTECTED]> CTO, TMR Associates, Inc
I thought I had forgotten how to throw a boomerang, but it's
all coming back to me...
------------------------------
From: [EMAIL PROTECTED] (quark)
Subject: klogd crashes after dialing isp
Date: Mon, 13 Sep 1999 19:59:39 GMT
Hi !
I have a P200 MPP System (2 Processors) with Suse 6.2 installed.
Kernel is 2.2.12 or 2.2.10. With both kernels I have the same problem:
After dialin my ISP over ISDN the klogd crashes.
If I start the klogd to write the messages into an own file
(option -f) it is better, but not perfect.
Anyone an idea?
------------------------------
From: [EMAIL PROTECTED] (bill davidsen)
Subject: Re: Max threads and TCP connections?
Date: 13 Sep 1999 23:12:24 GMT
In article <[EMAIL PROTECTED]>,
David Schwartz <[EMAIL PROTECTED]> wrote:
| Both "many threads" and "many processes" are bad architectures for the
| vast majority of cases. You usually want approximately as many active
| threads as you have processors (since more just incur extra context
| switches for no benefit) and as few inactive threads as possible (since
| they waste memory).
Could you point me to the programs you have written to demonstrate
where we have all gone wrong? I'd like your news server to replace INN,
your web server to replace Apache, and your mail server which replaces
sendmail to start, then I'll look at your other applications.
--
bill davidsen <[EMAIL PROTECTED]> CTO, TMR Associates, Inc
I thought I had forgotten how to throw a boomerang, but it's
all coming back to me...
------------------------------
From: ntser1 <[EMAIL PROTECTED]>
Subject: getting 2.3.xx experimental kernel
Date: 13 Sep 1999 22:55:48 GMT
Hi Gteeting,
I wonder if this is the right news group as I am having only 1
week experience on Linux.
Sorry, if this is consider off-topic.
I would like to try a feature that can only runs on 2.3.x
experiemental kernel, so,
a) appreciate pointer on where to find documentation and instruction
HOW-TO etc, for getting the new kernel (where is the offcial
download site for experiemental kernel)
b) how to re-compile it
c) Most importantly, after re-compiling, where should I store the
new kernel so that I can have the OLD kernel un-modified. That is, I
want to be able to choose either to boot from the OLD kernel (2.2.9
from Mandrake Linux 6.0 dist.) or the new one. In this way, I can
fall back to the OLD kernel in case the new one fails.
Is that a right understanding that the OLD and new kernel has to be
stored under different directory tree and the LILO can be directed
to either one to boot from?
Thanks in advance, appreciate email reply also.
Simon Kwan
------------------------------
From: "Ricky Duke" <[EMAIL PROTECTED]>
Subject: Re: Lexmark Printer
Date: Mon, 13 Sep 1999 20:12:55 -0000
I ment Mandrakes Linux, which is runs Redhat 6.0
Ricky Duke
Peter Samuelson wrote in message <7rel3i$13g$[EMAIL PROTECTED]>...
>[Ricky Duke <[EMAIL PROTECTED]>]
>> Is their anyway I can get my Lexmark 5700 printer to work under Linux
6.0?
>
>When did Linux make it to version 6.0? I downloaded 2.3.18 this afternoon.
>
>--
>Peter Samuelson
><sampo.creighton.edu!psamuels>
------------------------------
From: [EMAIL PROTECTED] (Joseph H Allen)
Subject: Re: journaling: (was Re: EROS, persistency, ext3fs?)
Date: Mon, 13 Sep 1999 23:15:18 GMT
It would be nice if the user could bracket transactions. At the very least,
it would be nice if the user could prevent buffer syncs for a specified
file- this would simplify providing logging in a fast memory mapped
database.
--
/* [EMAIL PROTECTED] (192.74.137.5) */ /* Joseph H. Allen */
int a[1817];main(z,p,q,r){for(p=80;q+p-80;p-=2*a[p])for(z=9;z--;)q=3&(r=time(0)
+r*57)/7,q=q?q-1?q-2?1-p%79?-1:0:p%79-77?1:0:p<1659?79:0:p>158?-79:0,q?!a[p+q*2
]?a[p+=a[p+=q]=q]=q:0:0;for(;q++-1817;)printf(q%79?"%c":"%c\n"," #"[!a[q-1]]);}
------------------------------
From: [EMAIL PROTECTED] (Joseph H Allen)
Subject: Re: Max threads and TCP connections?
Date: Mon, 13 Sep 1999 23:24:36 GMT
In article <7rk0co$bem$[EMAIL PROTECTED]>,
bill davidsen <[EMAIL PROTECTED]> wrote:
>In article <[EMAIL PROTECTED]>,
>David Schwartz <[EMAIL PROTECTED]> wrote:
>
>| Both "many threads" and "many processes" are bad architectures for the
>| vast majority of cases. You usually want approximately as many active
>| threads as you have processors (since more just incur extra context
>| switches for no benefit) and as few inactive threads as possible (since
>| they waste memory).
> Could you point me to the programs you have written to demonstrate
>where we have all gone wrong? I'd like your news server to replace INN,
Actually, I've been wanting to rewrite news for years. The articles should
be stored in a big circular buffer made out of a raw disk partition instead
of as separate files. The lifetime of the article would be set by how many
times it is forwarded around the ring. Of course you always need enough ram
for the article id index... Then maybe news would be in a high enough
performance situation where the connection architecture would actually
matter (beyond overcoming tcp/ip connection establishment overhead anyway).
--
/* [EMAIL PROTECTED] (192.74.137.5) */ /* Joseph H. Allen */
int a[1817];main(z,p,q,r){for(p=80;q+p-80;p-=2*a[p])for(z=9;z--;)q=3&(r=time(0)
+r*57)/7,q=q?q-1?q-2?1-p%79?-1:0:p%79-77?1:0:p<1659?79:0:p>158?-79:0,q?!a[p+q*2
]?a[p+=a[p+=q]=q]=q:0:0;for(;q++-1817;)printf(q%79?"%c":"%c\n"," #"[!a[q-1]]);}
------------------------------
From: David Schwartz <[EMAIL PROTECTED]>
Subject: Re: threads
Date: Mon, 13 Sep 1999 13:24:46 -0700
Leslie Mikesell wrote:
>
> I'm missing something here... How can 2 system calls be cheaper
> than one? The only reason to select() is if you have something
> to do when there is no input, and a well-designed server program
> often doesn't. A blocking read lets the kernel schedule some
> equally important other process at a time when this one is
> idle.
Because a read that blocks is equivalent to two system calls plus a
context switch. There is the 'entry' half of the system call (up to
where we decide to block), the block itself and reschedule, and then the
'return' part of the system call after the wakeup (when we decide what
to return).
Imagine if ten connections are ready for I/O. Consider first a case
where ten processes (each in a blocking read) handle them:
We have:
1) The ten reads that blocked.
2) Ten wakeups/context switches when the data comes in
3) The ten reads that now complete.
Now imagine if one process blocks in 'poll' or 'select' and then does
all ten I/Os in a non-blocking fashion.
We have:
1) The one poll or select that decided to block.
2) One context switch to that process.
3) The 'other half' of that poll or select (when it returns).
3) Ten non-blocking reads that now complete.
See? 10+10+10 is MUCH greater than 1+1+1+10. In general, the context
switches are more expensive than the system calls, so it's really
comparing 10 to 1. (Although exactly how the math works out is
platform-dependent, but the second case will nearly always be far better
than the first.)
Note that a 'thread per connection' model is more like the first case
than the second! This is part of why using on thread per connection is
bad.
> > There no excuse for wasing the CPU, whether or not there's plenty of it
> >to go around. It's senseless to have to switch contexts ten times just
> >because ten connections have received I/O. It's much nicer to wake one
> >process which can run in a non-blocking fashion and do all ten I/Os.
>
> How do you do ten i/o's at once when you are processing faster than
> the i/o? You'll service the first one, complete it, sit in select,
> service the next, and so on, doing 2 system calls on every input
> instead of the one it would take seperate processes doing blocking
> reads.
Yes, this is what will happen when you aren't under stress. But really,
in a good design, you optimize for the hard cases, not the easy ones.
And your '2 to 1' math is way off because blocking system calls are more
expensive than non-blocking ones.
> >It's nicer to all the other processes too since the total CPU used is
> >less.
>
> I'm not conviced, but would like to know why you think this is true.
> Are there any benchmarks that test both approaches to see if there
> is some level of i/o where the select() method makes it likely
> that you can read() bigger chunks and start saving system calls?
The short answer is, if you don't care about performance, do whatever
you want. If you do care about performance, you can't have one
thread/process blocking in read for every client. It just WILL NOT
SCALE.
DS
------------------------------
From: Rich Gear <[EMAIL PROTECTED]>
Subject: incorrect kernal version error?
Date: Tue, 14 Sep 1999 00:10:02 GMT
I recently upgraded my kernel from v2.2.1 to v2.2.12. I also installed
modutils v2.1.121.
Then I tried running the "hello world" sample driver from Rubini's book,
Linux Device Drivers.
Somhow, I don't think the kernel version was updated everywhere because
I get a wierd kernel message...
Anyone know where I need to change the version?
[root@sleepy hello]# more hello.c
#define MODULE
#include <linux/module.h>
int init_module()
{
printk("<1>Hello, world\n");
return 0;
}
void cleanup_module()
{
printk("<1>Goodbye cruel world!\n");
}
[root@sleepy hello]# gcc -c hello.c
[root@sleepy hello]# /sbin/insmod hello
./hello.o: kernel-module version mismatch
./hello.o was compiled for kernel version 2.2.12
while this kernel is version 2.2.1.
[root@sleepy hello]# /sbin/insmod -f hello
Warning: kernel-module version mismatch
./hello.o was compiled for kernel version 2.2.12
while this kernel is version 2.2.1
[root@sleepy hello]# /sbin/lsmod
Module Size Used by
hello 304 0 (unused)
[root@sleepy hello]# /sbin/rmmod hello
[root@sleepy hello]#
Sent via Deja.com http://www.deja.com/
Share what you know. Learn what you don't.
------------------------------
From: [EMAIL PROTECTED] (Christopher Browne)
Crossposted-To: alt.os.linux,comp.os.linux.advocacy,comp.os.misc,comp.unix.advocacy
Subject: Re: Flamage - Why?
Reply-To: [EMAIL PROTECTED]
Date: Tue, 14 Sep 1999 00:26:02 GMT
On Sun, 12 Sep 1999 16:38:57 GMT, Stephen Harris
<[EMAIL PROTECTED]> wrote:
>James Andrews ([EMAIL PROTECTED]) wrote:
>: anticipated. We had previously thought that the complexity of certain
>: types of software made them "impossible" to implement. Just maybe we're
>: still standing on the doorstep to this whole arena of discovery. As
>
>[ snippage ]
>
>Has anybody in this thread actually got a grounding in CS theory? The word
>"impossible" actually has a specific meaning there, which has nothing to do
>with the complexity of the algorithm. The halting problem is "impossible".
>A "difficult" problem such as prime factorisation is not.
This may represent the difference between something being impossible,
and being merely "impossible," one or the other being less literally
true than the other...
It doesn't look like very many of the participants in TAO-related
discussions are sufficiently initiated in computer science as to know
the difference between things that are:
a) Not computable,
b) NP complete versus P complete versus NP hard versus...
Of course, much of the contention has surrounded issues that are not
so clearly matters relating to the theory of computer science.
For instance, in the "sandbox" discussions, there are two main
directions in which one may go:
a) Try to prove analytically that a particular program is "safe," or
b) Try to establish that a particular security scheme is
sufficiently expressive to, at run time, protect from an
interesting set of exploits.
The former direction sure *looks* like a form of the Halting Problem.
Actually *proving* it to be such is a challenge I'll stay out of,
particularly when my marks in "Theory of Computing" weren't *all* that
impressive... :-)
It's still safe to say that the bits of discussion of this approach
haven't provided anywhere *near* enough detail to make it reasonable
to frame this in terms that could be formally analyzed.
The latter direction seems to me to be the essence of what one would
expect to use a "sandbox" for, and the proper topic of discussions
about "sandboxes." Again, the discussions haven't provided *near*
enough detail to do analysis of what sorts of exploits any of the
suggested approaches would or would not protect from.
Those that would like to discuss such in any sort of useful way would
be well-advised to make themselves familiar in a reasonably deep way
with:
a) How traditional UNIX security works (e.g. - GCOS fields -
world/group/user),
b) How ACL systems have been implemented on systems like TOPS, UNIX,
Windows NT,
c) How capability systems have been implemented and used (e.g. -
KeyKOS, Hydra, EROS, capability systems in BSD 386),
d) How Kerberos is intended to work,
e) How Sun designed the "sandbox" notion in Java, and how the security
scheme has evolved between version 1, 1.1, and 1.2...
f) Bruce Schneier's analysis of cryptographic security and the
exploits possible in public key schemes,
g) Some familiarity with the DOD Rainbow Series.
The point here is that in order to *competently* discuss the design of
security schemes, it is necessary to be reasonably literate with the
relevant literature.
Once a particular scheme has been established to be usefully robust,
it is hopefully not mandatory for users to be thus literate (although
it appears that in order to maintain *high* levels of security on Real
Secure Systems, this *is* necessary).
But in order to have any competence to *design* a system, the
"literacy requirements" are considerably higher.
I can claim only general familiarity with the above sets of past
research, as opposed to having a "deep" understanding of the material.
"General familiarity" is, however, quite enough to recognize when
others are making ridiculous claims based on a complete *lack* of
familiarity with past practice...
>A problem is only defined as "impossible" if it can be proven that no
>algorithm _can_ exist to solve the problem (mathematical proof of a
>contradiction is generally the way to demonstrate this). Also note that
>these words are further limited in scope by assuming a Turing equivalent
>machine; a new architectural design that is not Turing equivalent will
>have a different mathematical basis and problems impossible in one system
>may turn out to be merely difficult in another.
Are there systems proven to be conceptually more powerful than Turing
machines?
There are a number of sorts of automata that are provably *less*
powerful, such as FSAs, DPDAs, NDPDAs, and such; I wasn't aware of
successful research into automata that can do things that TM's can't.
--
Obversely, a lot of verbal mileage can also be gotten by sending out
incomprehensible, cryptic, confusing or unintelligible messages, and
then iteratively "correcting" the "mistaken interpretations" in the
replys.
-- from the Symbolics Guidelines for Sending Mail
[EMAIL PROTECTED] <http://www.ntlug.org/~cbbrowne/computing.html>
------------------------------
From: Karlo Szabo <[EMAIL PROTECTED]>
Subject: help.. How to use copy_from_user(), nearly there
Date: Tue, 14 Sep 1999 10:02:04 +1000
Hi,
I'am having a bit of trouble with this copy_from_user function.
My write function in the module is defined as:
static int z_write(struct inode *node,
struct file *file,
const char *buf,
int count)
{
char c[BUF_SIZE];
if(copy_from_user(&c,buf,count)) return -EFAULT;
The copy_from_user always returns a number <0, indicating that there was
an error with one of
the buffers??
If I do:
printk(KERN_NOTICE "count passed to write function is %i\n", count);
I always get a large negative number.
But If i do
int cnt=buf;
It will always return the correct number of bytes in the buf passed to
the function.
same goes for the copy_to_user in the read function.
The way I use my module from another program is:
err=open("dev/z",O_RDWR);
write(err,buf,sizeof(buf);
where buf is decleared as:
unsigned char buf[8].
:note that BUF_SIZE in the module is defined to be greater then 8.
thanks
karlo
------------------------------
From: Bill Anderson <[EMAIL PROTECTED]>
Crossposted-To: alt.os.linux,comp.os.linux.advocacy,comp.os.misc,comp.unix.advocacy
Subject: Re: Flamage - Why?
Date: Mon, 13 Sep 1999 14:27:21 -0600
James Andrews wrote:
>
> Yes, but surely that proves the point I was originally trying to make.
> Whilst it may be an unreasonable amount of effort, you laugh and scoff,
> but it can be done. Lead into Gold is not a good analagy because we
> know enough about chemistry and physics to say that within our *current*
> knowledge, there is no simple way to do it.
Depends upon your definition of simple. :-)
After all, we can 'create' gold, and have done so. :
> But within computing it
> works slightly differently, as I'm sure you are aware. Any process that
> can be defined logically can be written on a computer. For any given
> logical process, there are an infinite amount of possible software
> solutions, given infinite resources. Because of this, many algorithms,
> even very commonly used ones, have not been explored entirely within the
> current scope. And chances are that for any given algorithm, there will
> be a better way of implementing it. For these reasonings, it is never a
> foregone conclusion as to the viability of a concept within computing,
> sometimes something can be judged as far too processor intensive ahead
> of time, but generally you never know. Because of this, we should
> discuss conceptual ideas just as that, conceptual. My point all along
> is that a perfect sandbox system *is* possible, and in my opinion, not
> that difficult to achieve. You also have to remember, we are theorising
> a system from the ground up, so literally anything is possible with
> enough time and effort, the important factor is how, and thats what I
> joined this thread to discuss.
But you must also remember Godel's Incompletness Theorum is working
against you.
--
Bill Anderson Linux/Unix Administrator, Security
Analyst
ESBU (ARC) [EMAIL PROTECTED]
My opinions are just that; _my_ opinions.
------------------------------
From: Rich Gear <[EMAIL PROTECTED]>
Subject: Re: insmod linux driver error -- init_module: Invalid argument.
Date: Tue, 14 Sep 1999 00:18:32 GMT
> I had no problems compiling, but when I tried to install the module
> using insmod, I got some interesting errors. First, the version
> information did not match. Then, after forcing an install w/o
checking
> for version information using the -f paramter, I still get some module
> heder size errors. Does someone know the source of this error?
This error was due to having an earlier version of the modutils package
than is required by the software. In my case, v2.0.?? was being used
and v2.1.129 should have been used. After updating the modutils
package, this error went away.
Get the latest modutils by going to
ftp://ftp.kernel.org/pub/linux/kernel/v2.1/modutils-2.1.121.tar.gz
Sent via Deja.com http://www.deja.com/
Share what you know. Learn what you don't.
------------------------------
From: David Schwartz <[EMAIL PROTECTED]>
Subject: Re: 497.2 days ought to be enough for everybody
Date: Mon, 13 Sep 1999 17:05:19 -0700
There were numerous jiffy wrap bugs. It's possible that when the wrap
occured, you just weren't near any of the problem code.
DS
bill davidsen wrote:
>
> In article <[EMAIL PROTECTED]>,
> David Schwartz <[EMAIL PROTECTED]> wrote:
>
> | Had they thought about having jiffies wrap, they could have ensured
> | that the system is at least rebooted once every 497.2 days. It just
> | shows how the Linux people have more ideas than the NT people.
>
> Is this a new problem introduced in the 2.x series? I have a DNS
> server sitting in a corner on a UPS, running 1.2.13, and I swear it's
> been up since 1.2.13 came out. You can tell how often I look at it, DNS
> works so the system is up ;-)
>
> There's no i/o going on except network, and very little of that, if
> drivers are the only issue the chance of a hit is small.
>
> --
> bill davidsen <[EMAIL PROTECTED]> CTO, TMR Associates, Inc
> I thought I had forgotten how to throw a boomerang, but it's
> all coming back to me...
------------------------------
From: Karlo Szabo <[EMAIL PROTECTED]>
Subject: Re: getting 2.3.xx experimental kernel
Date: Tue, 14 Sep 1999 10:30:57 +1000
>
> Hi Gteeting,
> I wonder if this is the right news group as I am having only 1
> week experience on Linux.
> Sorry, if this is consider off-topic.
Much better then windozze world, huh.
>
> a) appreciate pointer on where to find documentation and instruction
> HOW-TO etc, for getting the new kernel (where is the offcial
> download site for experiemental kernel)
Sorry?
>
> b) how to re-compile it
steps to take: Note these down somewere as they will be needed again,
may I suggest
to stick it on the side of your monitor.
cd /usr/src
rm linux (Which is a pointer to the current kernel)
mkdir linux-2.3.(what ever version)
ln -s /usr/src/linux-2.3.x linux
tar -zxvf linux-2.3.x.tar.gz
cd linux
make mrproper
make xconfig (Now choose what you want in the kernel)
make dep
make clean
make zimage (Or bzimage if zimage is too big)
make modules
make modules_install
Your kernel has been built
>
> c) Most importantly, after re-compiling, where should I store the
> new kernel so that I can have the OLD kernel un-modified. That is, I
> want to be able to choose either to boot from the OLD kernel (2.2.9
> from Mandrake Linux 6.0 dist.) or the new one. In this way, I can
> fall back to the OLD kernel in case the new one fails.
This is linux, off course you can.
after the above steps do:
cd arch/i386/boot (This is where the image gets copied to after
compiling)
cp zimage /boot
rename it to say new_kernel
cd /etc
vi lilo.conf
Your lilo should look something like
image=/boot/new_kernel
label=2.3.x
root=/dev/hda? (What ever your boot partition is)
read-only
image=/boot/vmlinuz-2.0.36-0.7
label=linux-old
root=/dev/hda? (What ever your boot partition is)
initrd=/boot/initrd-2.0.36-0.7
read-only
other=/dev/sda1
label=crappy-OS (Dos or wincrap)
table=/dev/sda
now do:
lilo
and reboot, all done.
karlo
>
> Is that a right understanding that the OLD and new kernel has to be
> stored under different directory tree and the LILO can be directed
> to either one to boot from?
>
> Thanks in advance, appreciate email reply also.
>
> Simon Kwan
>
------------------------------
From: David Schwartz <[EMAIL PROTECTED]>
Subject: Re: Max threads and TCP connections?
Date: Mon, 13 Sep 1999 17:37:58 -0700
bill davidsen wrote:
> Could you point me to the programs you have written to demonstrate
> where we have all gone wrong? I'd like your news server to replace INN,
> your web server to replace Apache, and your mail server which replaces
> sendmail to start, then I'll look at your other applications.
I'm a little curious also why you would resort to an argument from
authority. Everything I've said has been accompanied by argumentation.
I don't think you should listen to me because of who I am and what
experience I've had. And I don't think you should ignore someone else
because of who they are or their lack of experience.
If you are competent to do so, you should evaluate what everyone has to
say and the argumentation they can provide to support their view. It's
really poor form to respond to a cogent argument with the rough
equivalent of 'sez who'?
DS
------------------------------
From: David Schwartz <[EMAIL PROTECTED]>
Subject: Re: Max threads and TCP connections?
Date: Mon, 13 Sep 1999 17:10:24 -0700
Go to http://www.webmaster.com/
I am the Director of Software Development for WebMaster, Incorporated.
Our web server outperforms Apache pretty handily, but it's lacking a
lot of Apache's features (so it's hard to know what to credit). The chat
server handily outperforms every other chat implementation I've every
seen. On Windows NT, it can handle 16,000 clients without a problem.
Very little else that I've written is publically avialable. Most of it
is used internally only, coded under contract for specific customers.
I've consulted on architectural issues for designing high-efficiency
network servers for about 10 years.
David Schwartz
bill davidsen wrote:
>
> In article <[EMAIL PROTECTED]>,
> David Schwartz <[EMAIL PROTECTED]> wrote:
>
> | Both "many threads" and "many processes" are bad architectures for the
> | vast majority of cases. You usually want approximately as many active
> | threads as you have processors (since more just incur extra context
> | switches for no benefit) and as few inactive threads as possible (since
> | they waste memory).
>
> Could you point me to the programs you have written to demonstrate
> where we have all gone wrong? I'd like your news server to replace INN,
> your web server to replace Apache, and your mail server which replaces
> sendmail to start, then I'll look at your other applications.
>
> --
> bill davidsen <[EMAIL PROTECTED]> CTO, TMR Associates, Inc
> I thought I had forgotten how to throw a boomerang, but it's
> all coming back to me...
------------------------------
** 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
******************************