[FreeVMS] Re: quick kernel diff and src guide


Subject: [FreeVMS] Re: quick kernel diff and src guide
From: Glenn and Mary Everhart (Everhart@gce.com)
Date: Sun Dec 16 2001 - 00:40:30 CET


I'm rather busy with other projects but be aware VMS does some priv
checks in the service dispatcher but does many more in individual
system services.

In i/o services you will want to ensure that layering is possible, a la
unix streams if convenient (no need really to duplicate the detailed
VMS driver structures if you can use existing ones). Many VMS facilities
can be done more cleanly with such layering than DEC ever did them
with special purpose code all over the place.

I will try to comment more later if I can break loose time to look over
the code...
Glenn Everhart
 

roart@nvg.ntnu.no wrote:
>
> Hi
>
> We really need some more people doing kernel stuff, so I put this stuff
> out as a little starter help. (CVS log shows little activity.
> How are the freshmeat downloads stats?)
>
> linux/arch/i386/kernel/entry.S
> Contains some new assembly routines, mainly for system calls/services and
> interrupts.
>
> linux/arch/i386/kernel/head.S
> An attempt to do system services the VMS way. (Need to set some permissions
> first).
>
> linux/arch/i386/kernel/i8259.c
> Had to get in some exceptions or else some new vectors would have been reset.
>
> linux/arch/i386/kernel/process.c
> Some stuff for the idle task.
>
> linux/arch/i386/kernel/traps.c
> Some VMS interrupt vectors.
>
> linux/include/asm-i386/current.h
> Changed current routine.
>
> linux/include/asm-i386/hw_irq.h
> Our new interrupt vectors.
>
> linux/include/asm-i386/unistd.h
> New system calls/services.
>
> linux/include/linux/linux_logo.h
> New logo.
>
> linux/include/linux/sched.h
> Lots of pcb stuff.
>
> linux/init/main.c
> Primarily a line of VMS data structure initialization.
>
> linux/kernel/sys.c
> Some test system calls and some system calls changes.
>
> linux/kernel/timer.c
> Scheduling related changes.
>
> The rest is mainly minor namechanges and interrupt/scheduling changes.
>
> About the rest in the ordinary VMS directories.
> (I am trying as well as I can to place things right).
>
> backup/src
> Read-only backup program.
>
> dcl
> DCL.
>
> lib/src
> Mainly kernel-related data structures.
>
> librtl/src
> RTL.
>
> pal/src
> Implementing things like queues and ipls.
>
> starlet/src
> The rest of the headers.
> Does also contain some system service interfaces. (Placed here until further).
>
> sys/src
> Scheduling routine is here in sched.c.
> Some system calls, too.
> Also, a starter for "set process". (Did not know where to put it)
> This will be the main kernel directory.
>
> This is not meant as a Linux kernel guide.
> I am using Scott Maxwell's book.
> Might be using some bits in the 4.4BSD book, because it contains some stuff
> about implementing stuff in software that was previously on the right cpu.
>
> -Roar Thronæs
>
> --
> Liste de diffusion FreeVMS
> Pour se désinscrire : mailto:freevms-request@ml.free.fr?subject=unsubscribe
>
>
>

-- 
Liste de diffusion FreeVMS
Pour se désinscrire : mailto:freevms-request@ml.free.fr?subject=unsubscribe



This archive was generated by hypermail 2b25 : Sun Dec 16 2001 - 00:34:38 CET