Re: Illegal use of reserved word in system.h

From: Richard B. Johnson
Date: Thu May 19 2005 - 11:08:50 EST


On Thu, 19 May 2005, Steven Rostedt wrote:

On Thu, 2005-05-19 at 17:19 +0200, Andreas Schwab wrote:
"Richard B. Johnson" <linux-os@xxxxxxxxxxxx> writes:

It's also hard to see what is happening in 'C'. When I execute
this:

#include <stdio.h>
#include <stdlib.h>

int main(int cnt, char *argv[], char *env[], char *aux[])
{
printf("Aux 0 = %s\n", aux[0]);
// printf("Aux 1 = %s\n", aux[1]);
}

There is no pointer to the aux table passed to main, you have to skip past
the environment. Also, the aux table is an array of key/value pairs.

This shows that ld-linux.so, that got called first, didn't
preserve the vector.

It does.


Here's a simple program to show you your pages size ;-), Now I don't
know enough about the elfinfo size and such to make this a real program,
but it should at least prove a point!

#include <stdio.h>

int main(int argc, char **argv, char **env)
{
int i;
long *p;

for (i=0; env[i]; i++);
p = (long*)(&env[i+1]);
for (i=0; i < 10; i++) {
long type = *p++;
if (type == 6)
printf("pagesz = 0x%lx (%ld)\n",*p,*p);
p++;
}

return 0;
}

-- Steve

Well this just shows that the table is somewhere on the stack
after the environment.


Cheers,
Dick Johnson
Penguin : Linux version 2.6.11.9 on an i686 machine (5537.79 BogoMips).
Notice : All mail here is now cached for review by Dictator Bush.
98.36% of all statistics are fiction.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/