[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Some Hurd and Mach programming questions



Mach/MIG related :

1.
How accurate are 1987-1989 CMU Mach papers if GNU Mach is considered.

2.
Are filesystem protocol and other basic client-to-server protocols
hard-coded in Mach or reside completely in Hurd ?

3.
How good is MIG ?
What special, non-obvious features are really in use if
compared to interface build on :
  write (port, (int)sizeof(request), sizeof(int));
  write (port, request, sizeof(request));
and    
  read (port, &size, sizeof (int))
  request = malloc (size);
  read (port, request, size);

4.
How good is MIG-generated code (size, speed);

5.
Does using lowest level Mach calls for IPC make any sense ?

6.
How hard-wired is 1 GB max partition size.
I suppose this is due to lack of process' vm adress space
that needs to be used for mmaping the whole partition.
Is switching to diskspace-range-request-based store io
only way of having bigger partitions than processors' adress space ?

7.
What would be needed for Linux-based microkernel to replace Mach if
it had nice support of user-space filesystems and Hurd uids ?

8.
Does it make any sense to move most device drivers (scsi/ide)
    from Mach to user-space.
I suppose than PCI bus etc. would still need to be in kernel.

Hurd related :

9.
Is this possible for fs translator to use its clients' data,
so we could for example implement something like /current/task/ with
env/ (as directory !), cwd, vmstat etc. files in it.

10.
Is this possible for fs translator to use its' client's user's data
so we could for example implement something like /current/user/ with
home/, shell, mailbox, etc/ etc.



Reply to: