sys/src/shell.c File Reference

for pagetable and user space - TODO still more doc More...

#include <linux/linkage.h>
#include <linux/sched.h>
#include <linux/completion.h>
#include <linux/personality.h>
#include <linux/mm.h>
#include <linux/module.h>
#include <system_data_cells.h>
#include <descrip.h>
#include <ipldef.h>
#include <phddef.h>
#include <pqbdef.h>
#include <prcdef.h>
#include <pridef.h>
#include <rdedef.h>
#include <secdef.h>
#include <ssdef.h>
#include <starlet.h>
#include <linux/bootmem.h>
#include <linux/mman.h>
#include <linux/slab.h>
#include <asm/pgalloc.h>
#include <asm/mmu_context.h>
#include <misc_routines.h>
#include <mmg_routines.h>
#include <internals.h>

Go to the source code of this file.

Defines

#define _PAGE_NEWPAGE   0
#define _PAGE_NEWPAGE   0
#define _PAGE_NEWPAGE   0
#define allocate_mm()   (kmem_cache_alloc(mm_cachep, SLAB_KERNEL))
#define _PAGE_NEWPAGE   0

Functions

long phys_pte_addr (struct _pcb *pcb)
void init_p1pp_long (unsigned long addr, signed long offset, signed long val)
void init_p1pp_long_long (unsigned long addr, signed long offset, signed long long val)
void init_p1pp_data (struct _pcb *pcb, struct _phd *phd, signed long offset)
 initialization of p1 data
int shell_init_other (struct _pcb *pcb, struct _pcb *oldpcb, long addr, long oldaddr)
 initialization of p1 space when not(?) forking
void init_sys_p1pp ()
void init_p1pp (struct _pcb *pcb, struct _phd *phd)
int init_fork_p1pp (struct _pcb *pcb, struct _phd *phd, struct _pcb *oldpcb, struct _phd *oldphd)
 initialization of p1 space when forking


Detailed Description

for pagetable and user space - TODO still more doc

Author:
Roar Thronęs

Definition in file shell.c.


Define Documentation

#define _PAGE_NEWPAGE   0

#define _PAGE_NEWPAGE   0

#define _PAGE_NEWPAGE   0

#define _PAGE_NEWPAGE   0

 
#define allocate_mm (  )     (kmem_cache_alloc(mm_cachep, SLAB_KERNEL))

Referenced by init_fork_p1pp().


Function Documentation

int init_fork_p1pp ( struct _pcb *  pcb,
struct _phd phd,
struct _pcb *  oldpcb,
struct _phd oldphd 
)

initialization of p1 space when forking

Parameters:
pcb new process pcb
phd new process phd
pcb old process pcb
phd old process phd

Definition at line 428 of file shell.c.

References _PAGE_NEWPAGE, _pcb, allocate_mm, ctl_gl_chindx, ctl_gl_lnmdirect, ctl_gl_lnmhash, ctl_gq_procpriv, dup_stuff(), init_p1pp_data(), init_p1pp_long(), init_p1pp_long_long(), IPL__MMG, mem_map, mm_init(), mmg_ininewpfn(), pte_alloc(), and SPIN_MMG.

Referenced by exe_creprc().

void init_p1pp ( struct _pcb *  pcb,
struct _phd phd 
)

void init_p1pp_data ( struct _pcb *  pcb,
struct _phd phd,
signed long  offset 
)

initialization of p1 data

Parameters:
pcb process pcb
phd process phd
offset an offset

Definition at line 83 of file shell.c.

References CHANNELCNT, ctl_gl_ccbbase, ctl_gl_chindx, ctl_gl_pcb, ctl_gl_phd, and init_p1pp_long().

Referenced by init_fork_p1pp(), init_p1pp(), and init_sys_p1pp().

void init_p1pp_long ( unsigned long  addr,
signed long  offset,
signed long  val 
)

Definition at line 66 of file shell.c.

Referenced by init_fork_p1pp(), and init_p1pp_data().

void init_p1pp_long_long ( unsigned long  addr,
signed long  offset,
signed long long  val 
)

Definition at line 71 of file shell.c.

Referenced by init_fork_p1pp().

void init_sys_p1pp (  ) 

long phys_pte_addr ( struct _pcb *  pcb  ) 

Definition at line 43 of file shell.c.

int shell_init_other ( struct _pcb *  pcb,
struct _pcb *  oldpcb,
long  addr,
long  oldaddr 
)

initialization of p1 space when not(?) forking

Parameters:
pcb new process pcb
phd new process phd
pcb old process pcb
phd old process phd

Definition at line 100 of file shell.c.

References _PAGE_NEWPAGE, IPL__MMG, mem_map, mmg_ininewpfn(), pte_alloc(), and SPIN_MMG.

Referenced by exe_creprc().


Generated on Fri Oct 9 10:26:01 2009 for FreeVMS by  doxygen 1.5.5