Linux-Development-Sys Digest #167, Volume #7 Tue, 7 Sep 99 17:14:24 EDT
Contents:
Re: TAO: the ultimate OS ("Vladimir Z. Nuri")
Re: Shutdown Problem (Chris Butler)
Re: Flamage - Why? ("Vladimir Z. Nuri")
Re: developing gdb interface for JTAG (Stan Shebs)
Re: Flamage - Why? ("Vladimir Z. Nuri")
Re: system calls ? (Gregory Hayrapetian)
Re: Max threads and TCP connections? (Kaz Kylheku)
Re: TAO: the ultimate OS ("Vladimir Z. Nuri")
Getting Kernel panic on boot!?!? (Russell Suter)
need help on ptrace (Virginie Galtier)
Call for Authors: OPL book on kernel programming (Gary Lawrence Murphy)
Re: glibc-2.1.2 (Andreas Jaeger)
Re: Problem porting to LINUX (Kaz Kylheku)
----------------------------------------------------------------------------
From: "Vladimir Z. Nuri" <[EMAIL PROTECTED]>
Crossposted-To: alt.os.linux,comp.os.linux.advocacy,comp.os.misc,comp.unix.advocacy
Subject: Re: TAO: the ultimate OS
Date: 7 Sep 1999 19:04:08 GMT
In comp.os.misc EdToy <[EMAIL PROTECTED]> wrote:
: Right, so the way to "mine" for them is to create some really good
: marketing campaign and hope a few of the naive "contributors" will come
: up with something. Can you say "open source"?
this is a problem that linux also has to solve. all I can
say is that having the code open is one pretty powerful
prevention against exploitation. I do agree that it
does not rule it out completely. it leads to a sort
of "stealth exploitation" or "pseudo exploitation" in
which the work of others can still be sold without
supporting them.
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
state of the art OS research email http://www.egroups.com/groups/os-edge/
Tao OS / Taos / the transcendental OS http://www8.pair.com/mnajtiv/tao.html
------------------------------
From: [EMAIL PROTECTED] (Chris Butler)
Crossposted-To: comp.os.linux.development.apps,comp.os.linux.misc,comp.os.linux.x
Subject: Re: Shutdown Problem
Date: 7 Sep 1999 17:26:21 +0100
[comp.os.linux.development.apps - 6 Sep 1999 18:28:04 -0500] * Peter wrote *
> are in many smaller systems. /etc does need to be in / for bootstrap
> and recovery reasons (have to read /etc/fstab pretty early...) but /var
A rather ugly (but possible) hack:
Create a /lib/bootstrap-etc directory (or similar), place in it everything
needed to get to the point where filesystems are mounted, including fstab.
Have an /etc directory in the root partition, which contains symlinks to the
files in /lib/bootstrap-etc. [0]
Create a partition for /etc, and mount it _over the top of_ the /etc
directory. [1]
Modify startup scripts to mount /etc instead of remounting / read-write. It
should handle it fine from there.. [2]
[0] This just makes it possible to edit the bootstrap files once the /etc
filesystem has been mounted.
[1] In Linux (at least), mounting a filesystem on a directory that contains
files will "hide" the files in that directory..
[2] The same issues exist here as with a read-only root FS (as it is initially
read-only on boot). The startup scripts should make sure that the
/etc/mtab file is accurate after the root fs has been remounted..
--
Chris Butler
<[EMAIL PROTECTED]>
------------------------------
From: "Vladimir Z. Nuri" <[EMAIL PROTECTED]>
Crossposted-To: alt.os.linux,comp.os.linux.advocacy,comp.os.misc,comp.unix.advocacy
Subject: Re: Flamage - Why?
Date: 7 Sep 1999 19:08:10 GMT
In comp.os.misc James Andrews <[EMAIL PROTECTED]> wrote:
: As for my disagreement with your method, its more down to the level of
: abstraction. I'm a firm believer that everything should have a schemata
: attached which seems tangible.
totally agree with you that everything needs
to be fleshed out.
: Yes, people in general like to see the colour of money. And it seems
: code is the currency of acceptance on this group, hence I have yet to
: officially announce my project (but dont worry non-believers, for the
: time is almost at hand ;-). I'm finding it hard to scrape together some
: time, but soon that will change.
imho "attention"/participation is the real currency. code is currency also,
and significantly more valuable than either of the two, but all
of it contributes.
: I agree that any major OS project should be a combined effort by as many
: people as possible, but there are obvious concerns. Firstly, the
: skeptics will be quick to point out that few people will work for
: nothing.
not a problem I intend to solve or needs to be solved imho. linux
proves it is possible to do so. I'm starting out on the
assumption it is possible.
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
state of the art OS research email http://www.egroups.com/groups/os-edge/
Tao OS / Taos / the transcendental OS http://www8.pair.com/mnajtiv/tao.html
------------------------------
From: Stan Shebs <[EMAIL PROTECTED]>
Subject: Re: developing gdb interface for JTAG
Date: 07 Sep 1999 11:49:18 -0700
pontneuf <[EMAIL PROTECTED]> writes:
> As someone already know, ARM (ARM7TDMI) processor has a JTAG port that
> can be used to examine the contents of internal registers, to set
> breakpoints and watchpoints at specific address, and to insert several
> instructions in the processor core. These rich set of debugging
> functionality can be achieved without any software stub code which is
> mandatory in remote-debugging through serial port.
I'd certainly like to get a direct interface to ARM's JTAG pins -
currently one has to go through their EmbeddedICE or Multi-ICE boxes,
which are expensive. Presumably in your case you're going to add some
onboard circuitry that controls JTAG pins via the PCI bus, then you
can define interaction in terms of memory reads/writes.
To make GDB use this, you have a couple choices. One is to write a
new "target vector" for GDB that implements a couple dozen methods
for interacting with targets. See remote*.c in the sources for various
examples ranging from the simple to the complex.
The other choice is to write a separate program that interacts with
the card, and speaks to GDB via the standard remote protocol. You
can start with the code in gdb/gdbserver as an example of how to
write a Unix program that implements the target side of the protocol.
The advantage to this scheme is that you can develop the interaction
with your specialized board and not have to get involved with the
complexities of GDB internals.
> Currently I'm just standing at the starting point looking for a right
> direction to get started with hacking gdb.
> Simply, I'm just lack of information about gdb internals. Can somebody
> help me release this situation?
> I would really appreciate any comment, information from gdb GURU.
GDB internals are documented to some extent in the file
gdb/doc/gdbint.texinfo in the GDB source distribution. Also, there is
a discussion list [EMAIL PROTECTED] that is good for this kind
of topic; everybody who's anybody in the GDB world :-) is on that
list, usually deep in discussion on the next set of changes that we
should be making to GDB.
Stan Shebs
Cygnus Solutions
[EMAIL PROTECTED]
------------------------------
From: "Vladimir Z. Nuri" <[EMAIL PROTECTED]>
Crossposted-To: alt.os.linux,comp.os.linux.advocacy,comp.os.misc,comp.unix.advocacy
Subject: Re: Flamage - Why?
Date: 7 Sep 1999 19:10:14 GMT
In comp.os.misc James Andrews <[EMAIL PROTECTED]> wrote:
: A computer, as a tool to the software
: engineer, is like an artist with his canvas, you can never tell exactly
: how good the artist is going to be, and every now and then one stuns you
: by creating a masterpiece beyond your wildest imagination.
absolutely. and possibly this could even be achieved collaboratively.
like Linux. like the NextBigThing.
I for one say hurray, keep up your idealism james!!
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
state of the art OS research email http://www.egroups.com/groups/os-edge/
Tao OS / Taos / the transcendental OS http://www8.pair.com/mnajtiv/tao.html
------------------------------
From: Gregory Hayrapetian <[EMAIL PROTECTED]>
Subject: Re: system calls ?
Date: Tue, 07 Sep 1999 18:25:07 +0200
[EMAIL PROTECTED] wrote:
> hi,
> When a user process calls a system call the parameters are pushed into
> the user stack ( ss3:esp3 in x86). Then the process switches into kernel
> mode using int 0x80 (if ive understood the code correctly) and goes to
> the entry point system_call. From here the actual system call is called.
> My question is :- how does the actual system call function get the
> parameters other than simple copy (memcpy_from_fs)
>
> Sent via Deja.com http://www.deja.com/
> Share what you know. Learn what you don't.
A system call is generated with the _syscallX macros in unistd.h.
(X is the number of parameters)
So a syscall with two parameters looks like:
#define _syscall2(type,name,type1,arg1,type2,arg2) \
type name(type1 arg1,type2 arg2) \
{ \
long __res; \
__asm__ volatile ("int $0x80" \
: "=a" (__res) \
: "0" (__NR_##name),"b" ((long)(arg1)),"c" ((long)(arg2))); \
__syscall_return(type,__res); \
}
The number of the syscall is put in eax. The first parameter is in ebx
and the second in ecx.
When the user task calls the int 0x80 it comes to the system_call entry
in entry.s. Then it saves all registers with holds the parameters of
the syscall. After that it calls the right system call with lies in a table.
The system call simply takes the parameters back from stack, which
the trap handler put in.
-- Greg
------------------------------
From: [EMAIL PROTECTED] (Kaz Kylheku)
Subject: Re: Max threads and TCP connections?
Reply-To: [EMAIL PROTECTED]
Date: Tue, 07 Sep 1999 16:27:15 GMT
On Tue, 7 Sep 1999 09:21:30 +0300, Andrey Fisunenko <[EMAIL PROTECTED]>
wrote:
>>
>>Bill LN wrote:
>>>
>>> Is it possible to maintain 1 million TCP connections from a single
>>> Linux box? What would the bandwidth and memory and OS ramifications be
>>> if I try to hold 1 million TCP connections open at once ?
>>
>> In my experience, 16,000 seems to be the maximum. I encountered some
>>nasty memory allocation problems in the Linux kernel above that.
>>
>
>
>We try to run sleeping threads by call pthread_create (on Red Hat with
>kernel 2.2.5)
>and increase limitations by set-limits.
>But we can't get more then about 400 ptrheads.
>What's wrong?
>How you got 16000? Those test compiled and executed under FreeBSD creates
Read more carefully: Bill LN is talking about TCP connections, not
threads.
>pthreads while system has enough memory.
>
>It seems to be one of the weakest sides of Linux?
No, it's a weakness among junior programmers to get so excited about threads
that they want thousands of them.
>And all tend to reply in book manner -
>"You don't need that amount of thread".
Which is true.
>But "if stars light in night someone needs that".
>_There are_ tons of tasks where threads are more natural than fork or
>something like that.
>Some tasks can not be solved without threads at all.
What task cannot be solved without requiring hundreds of threads on one
machine?
------------------------------
From: "Vladimir Z. Nuri" <[EMAIL PROTECTED]>
Crossposted-To: alt.os.linux,comp.os.linux.advocacy,comp.os.misc,comp.unix.advocacy
Subject: Re: TAO: the ultimate OS
Date: 7 Sep 1999 19:28:31 GMT
In comp.os.misc Peter Samuelson <[EMAIL PROTECTED]> wrote:
: By "fiat" I am not talking about merely asserting something. I am
: talking about rejecting someone else's position, a position for which
: he gives evidence, without any counter-evidence but merely with your
: own assertions.
fair enough. however I don't consider suggesting that someone
has low imagination an "ad hominem attack". it is an observation
relevant to the debate. many programmers have low imagination.
it can be a very pedestrian/mundane job. many programmers never
are involved in higher level design problems in which the
approach is not fixed & specified beforehand.
: The instance I was commenting on was where I gave my reasons for why I
: don't believe a user interface can be one-size-fits-all.
hmmm. I think the issue I raised was, can an OS be useful/helpful/
pleasant to both the newbie/novice & professional/advanced.
I think you are pulling a switcheroo on me.
the reason I consider this possible is related to what you hint
at. any interface can be put on top of any OS. I believe the
problem of usability/helpfulness/pleasantness lies in the
interface. Q.E.D. you see? here are my assertions
1. an os is a set of features
2. those features can be accessed in different ways
3. some ways are useful/helpful/pleasant to the novice.
others are for the experienced user.
4. an interface to the OS can be created which combines the
two, such that neither group need be aware of the
other's interface.
Q.E.D.
what do you object to in the above line of reasoning?
:> > > I believe an OS that is equally pleasing to the novice as well as
:> > > the power programmer is inherently possible. I will continually
:> > > reject the false dichotomies suggesting otherwise.
you call it opinion when I assert it is possible. well, why is
it not opinion when you assert it is impossible?
: Since you don't seem to understand the difference between arguing using
: evidence and examples and arguing with bald opinions, I don't think I
: have anything more to argue about.
hehehe "bald opinions".. perhaps this could all be easily
resolved if we just found some Rogaine.
: You may not be "declaring" things by fiat, but you continue to imply
: that your opinions (with only your will to back them up) are so
: self-evident that anyone who rejects them is small-minded or openly
: hostile. As I said, to me your entire argument style is fallacious and
: if that's all you know how to do I don't believe I have anything more
: to say.
j'accuse
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
state of the art OS research email http://www.egroups.com/groups/os-edge/
Tao OS / Taos / the transcendental OS http://www8.pair.com/mnajtiv/tao.html
------------------------------
From: Russell Suter <[EMAIL PROTECTED]>
Subject: Getting Kernel panic on boot!?!?
Date: Tue, 07 Sep 1999 07:35:13 -0600
Hello,
I don't know if this is a kernel problem or a problem with lilo. I've
reciently installed RedHat 6.0
on my laptop. Now, when I boot, if I let lilo timeout (5 seconds), I
get the following:
VFS: Cannot open root device 00:30
Kernel panic: VSF: Unable to mount root fs on 00:30
If I hit return before lilo times out, the machine boots fine. I don't
see this on my desktop.
Anyone have any ideas?? -- TIA
------------------------------
From: Virginie Galtier <[EMAIL PROTECTED]>
Crossposted-To: comp.os.linux,comp.os.linux.misc
Subject: need help on ptrace
Date: Tue, 07 Sep 1999 16:15:26 -0400
Hi !
I read that when a process A traces another process B, process B is
detached from its original parent and re-attached to its controlling
process by modifying the pointer p_pptr.
Thus I think that a getrusage(RUSAGE_CHILDREN, ru) in the A process
should give me the resources used by its children, including B.
But my program always returns 0 value. Does anyone have any idea of why?
Virginie
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/ptrace.h>
#include <errno.h>
#include <asm/user.h>
#include <sys/resource.h>
void printPtraceErr(char *request, int err)
{
printf("ptrace %s err: %m\n", request);
}
void printCpuUsage() {
struct rusage cpu;
if (getrusage(RUSAGE_CHILDREN,&cpu) == -1) {
printf("pb with getrusage\n");
} else {
printf("getru: utime: %lu.%lu stime: %lu.%lu
\n",cpu.ru_utime.tv_sec,cpu.ru_utime.tv_usec,cpu.ru_stime.tv_sec,
cpu.ru_stime.tv_usec);
}
}
int main(int argc, char* argv[])
{
int pid;
long scn; /* number of the system call */
struct user myuser;
if (argc < 2) {
printf("Usage %s pid \n", argv[0]);
return -1;
}
pid = atoi (argv[1]);
printf ("pid of the process to trace: %i\n", pid);
if ( ptrace(PTRACE_ATTACH, pid, 0, 0) == -1) {
printPtraceErr("ATTACH",errno);
} else {
printf("%i attached successfully\n", pid);
}
while (1)
{
if (ptrace(PTRACE_SYSCALL, pid, 0, 0)== -1){
printPtraceErr("SYSCALL",errno);
} else {
printCpuUsage();
wait(0);
if ((scn = ptrace(PTRACE_PEEKUSER, pid,((int)&myuser.regs.orig_eax -
(int)&myuser), 0)) < 0) {
printPtraceErr("PEEKUSER",errno);
} else {
printf("scn: %ld \n", scn);
printCpuUsage();
}
}
}
return 0;
}
------------------------------
From: Gary Lawrence Murphy <[EMAIL PROTECTED]>
Subject: Call for Authors: OPL book on kernel programming
Date: 07 Sep 1999 12:50:50 -0400
Reply-To: [EMAIL PROTECTED]
Logic and Reason have prevailed: Macmillan has agreed to publish our
Kernel Programming Book under the OPL, and I have agreed to use docbook
as the authoring process to ease later migration of all sections of the
book back into the LDP.
This is not a "module programming" book; Alessandro is much better at
that than I could ever hope to be, and that is the way it should
be. "Professional Linux Kernel Programming" is a guide for people who
need to get under the hood and leverage the freedoms of the GPL in
employing Linux for specialized applications. There will be material
on driver programming, but this is not the primary focus of this book.
The book will also focus on the 2.2/2.3 kernels and while we hope to
also include whatever is known about 2.4/2.5, there is very little need
to support 2.0/2.1 (Beck & al have already done this admirably)
We are looking at a Dec deadline for all submissions, and we are
currently seeking contributing authors for sections including
- the network layer and the network devices
- SMP, IPC and Memory management
- salvaging investments in NT drivers
- kernel programming tools, debugging and 'best practices'
- the sound systems
When we are done, we hope to leave behind a complete opus of papers in
the LPD to cover programming issues in the entire kernel (on all
supported architectures). Anyone interested in participating in this
project is invited to contact me directly at [EMAIL PROTECTED] or by
phone at 519-422-2723
People interested in writing about other aspects of open source and free
software are invited to visit http://www.teledyn.com/authors.shtml
--
Gary Lawrence Murphy <[EMAIL PROTECTED]> TeleDynamics Communications Inc
Business Telecom Services : Internet Consulting : http://www.teledyn.com
Linux/GNU Education Group: http://www.egroups.com/group/linux-education/
"Computers are useless. They can only give you answers."(Pablo Picasso)
------------------------------
From: Andreas Jaeger <[EMAIL PROTECTED]>
Subject: Re: glibc-2.1.2
Date: 07 Sep 1999 21:35:50 +0200
>>>>> A Guy Called Tyketto writes:
> I see the full release of glibc-2.1.2 is now on egcs.cygnus.com,
> and alpha.gnu.org. I've found no docs, or announcements that it has been
> released (granted it was Labour Day here in the US on Monday).. Anyone
> tried this yet? Any thoughts on stability? bugs? fixes?
The announcement has been send - as usual - to linux-gcc@vger and
libc-alpha. You can check the mail archives (the later via
http://sourceware.cygnus.com/glibc).
glibc 2.1.2 has a number of important bug fixes, for details read the
announcement. It has been tested by a number of users and should be
stable.
Andreas
--
Andreas Jaeger [EMAIL PROTECTED] [EMAIL PROTECTED]
for pgp-key finger [EMAIL PROTECTED]
------------------------------
From: [EMAIL PROTECTED] (Kaz Kylheku)
Subject: Re: Problem porting to LINUX
Reply-To: [EMAIL PROTECTED]
Date: Tue, 07 Sep 1999 17:12:46 GMT
On Tue, 07 Sep 1999 17:07:59 GMT, Kaz Kylheku <[EMAIL PROTECTED]> wrote:
>diff -urNp csource-orig/c_maske.c csource/c_maske.c
Oops, sorry. I should have e-mailed this crud rather than posted
to the newsgroup. Apologies.
------------------------------
** 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
******************************