My Project
Loading...
Searching...
No Matches
Namespaces | Macros | Functions | Variables
vspace.cc File Reference
#include "vspace.h"
#include "kernel/mod2.h"
#include <cstddef>
#include <cstdlib>
#include <unistd.h>
#include <sys/mman.h>
#include <sys/stat.h>

Go to the source code of this file.

Namespaces

namespace  vspace
 
namespace  vspace::internals
 

Macros

#define metapageaddr(field)    ((char *) &vmem.metapage->field - (char *) vmem.metapage)
 

Functions

static void vspace::internals::lock_allocator ()
 
static void vspace::internals::unlock_allocator ()
 
static void vspace::internals::print_freelists ()
 
void vspace::internals::vmem_free (vaddr_t vaddr)
 
vaddr_t vspace::internals::vmem_alloc (size_t size)
 
void vspace::internals::init_flock_struct (struct flock &lock_info, size_t offset, size_t len, bool lock)
 
void vspace::internals::lock_file (int fd, size_t offset, size_t len)
 
void vspace::internals::unlock_file (int fd, size_t offset, size_t len)
 
void vspace::internals::lock_metapage ()
 
void vspace::internals::unlock_metapage ()
 
void vspace::internals::init_metapage (bool create)
 
static void vspace::internals::lock_process (int processno)
 
static void vspace::internals::unlock_process (int processno)
 
static ProcessInfo & vspace::internals::process_info (int processno)
 
bool vspace::internals::send_signal (int processno, ipc_signal_t sig, bool lock)
 
ipc_signal_t vspace::internals::check_signal (bool resume, bool lock)
 
void vspace::internals::accept_signals ()
 
ipc_signal_t vspace::internals::wait_signal (bool lock)
 
pid_t vspace::fork_process ()
 

Variables

size_t vspace::internals::config [4] = { METABLOCK_SIZE, MAX_PROCESS, SEGMENT_SIZE, MAX_SEGMENTS }
 

Macro Definition Documentation

◆ metapageaddr

#define metapageaddr (   field)     ((char *) &vmem.metapage->field - (char *) vmem.metapage)

Definition at line 580 of file vspace.cc.