Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 26 Jun 1998 08:41:11 -0700 (PDT)
From:      David Wolfskill <dhw@whistle.com>
To:        newbies@FreeBSD.ORG
Subject:   Re: Reference: Unix in 20-30 years
Message-ID:  <199806261541.IAA09741@pau-amma.whistle.com>
In-Reply-To: <35932437.48E4@concentric.net>

next in thread | previous in thread | raw e-mail | index | archive | help
>Date: Thu, 25 Jun 1998 22:31:51 -0600
>From: ML Duke <mlduke@concentric.net>

>Its actually somewhat difficult for a single user with over 8 megs of
>ram to keep the cpu busy if its over 486/66.

??!?

OK... I'll grant that this is -newbies -- but sometimes I think a bit of
a reality check is in order.

About the only way for the CPU to be idle is to ensure that it doesn't
have enough work to do.

This may be accomplished by either a lack of work queued, or a
bottleneck that prevents the work form getting to the CPU.

An example of the former might be a machine that's being used for nothing
more demanding than a sole person playing solitaire; most of the time is
spent waiting for input.  (This is exacerbated in a non-X environment,
since X needs to be concerned about all kinds of external events --
mouse movements, button pushes, & the like, which a "dumb TTY" interface
just waits for characters (essentially).)

Examples of the latter would be a machine that is starved for real
memory (so it needs to swap processes in & out of memory; in extreme
cases, this can lead to such an imbalance that the machine spends so
much time swapping that it doesn't spend enough resources actually doing
the desired work to get it done; this is known as "thrashing"), or that
is waiting on (say) disk or tape I/O.  (Actually, these two can be
combined in truly "interesting" ways to exacerbate each other; this is
one reason a fast I/O subsystem is important to total system design --
it does no good as far as getting a program run quickly if you've got
the fastest CPU in the world, but you can't get the data into the CPU
at a reasonable rate:  the process, as a whole, will have I/O as a
bottleneck.  And swapping is a form of I/O....)

In practice, for example, I might have picked up a new program (for
example, the "ssh" distribution), unpack it, start the configuration for
it; once that's started, open up another window & fetch (say) the
"amanda" distribution.  Go back to "ssh" & type "make", then go back to
amanda, unpack that & configure it.  Start reading news, go back to
amanda & type "make"....

Or, if you just want to burn CPU cycles, there's an algorithm for
summing the reciprocals of the factorials -- works out to be "e" (the
base of natural logarithms, a transcendental irrational number, the
value of which (in decimal) is approximately 2.718281828459045...).  I've
calculated it to several thousand decimal places....  :-)

Cheers,
david
-- 
David Wolfskill		UNIX System Administrator
dhw@whistle.com		voice: (650) 577-7158	pager: (650) 371-4621

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-newbies" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199806261541.IAA09741>