[Zygomatic-cvs] zygoma/include process.h,NONE,1.1 processmanager.h,NONE,1.1 marrow.h,1.1,1.2 memorym
Status: Pre-Alpha
Brought to you by:
bregmasoft
From: Stephen M. W. <bre...@us...> - 2006-02-25 13:13:36
|
Update of /cvsroot/zygomatic/zygoma/include In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12500/include Modified Files: marrow.h memorymanager.h Added Files: process.h processmanager.h Removed Files: processdescriptor.h Log Message: Initial process manager work. --- NEW FILE: process.h --- /** * @file process.h * Arch-independent process interface. * @ingroup kernel_control */ /* * Copyright (C) 2006 Bregmasoft * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation; either version 2 of the License, or (at your option) any later * version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. * * You should have received a copy of the GNU General Public License along with * this program; if not, write to the Free Software Foundation, Inc., 59 Temple * Place, Suite 330, Boston, MA 02111-1307 USA */ #ifndef ZYGOMA_PROCESS_H_ #define ZYGOMA_PROCESS_H_ namespace Zygoma { class Process { }; } // namespace Zygoma #endif // ZYGOMA_PROCESS_H_ --- processdescriptor.h DELETED --- Index: memorymanager.h =================================================================== RCS file: /cvsroot/zygomatic/zygoma/include/memorymanager.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** memorymanager.h 29 Aug 2005 15:15:45 -0000 1.1 --- memorymanager.h 25 Feb 2006 13:12:32 -0000 1.2 *************** *** 24,27 **** --- 24,29 ---- #define ZYGOMA_MEMORYMANAGER_H_ + #include "addressspace.h" + namespace Zygoma { *************** *** 31,38 **** * * Once it's initialized, the only job of the memory manager is to allocate ! * and deallocate page frames (chunks of physical memory). */ class MemoryManager { }; } // namespace Zygoma --- 33,44 ---- * * Once it's initialized, the only job of the memory manager is to allocate ! * and deallocate page frames (chunks of physical memory) and to set up and ! * manage address spaces for processes. */ class MemoryManager { + public: + /// Creates a new address space for a process. + AddressSpace createAddressSpace(); }; } // namespace Zygoma Index: marrow.h =================================================================== RCS file: /cvsroot/zygomatic/zygoma/include/marrow.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** marrow.h 1 Oct 2004 21:12:18 -0000 1.1 --- marrow.h 25 Feb 2006 13:12:32 -0000 1.2 *************** *** 30,33 **** --- 30,35 ---- namespace Zygoma { + class MemoryManager; + /** * The central core of the zygoma kernel. *************** *** 42,45 **** --- 44,49 ---- static Marrow* autoDiscover(); + MemoryManager& memoryManager(); + protected: Marrow() --- NEW FILE: processmanager.h --- /** * @file processmanager.h * Arch-independent process manager interface. * @ingroup kernel_control */ /* * Copyright (C) 2006 Bregmasoft * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation; either version 2 of the License, or (at your option) any later * version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. * * You should have received a copy of the GNU General Public License along with * this program; if not, write to the Free Software Foundation, Inc., 59 Temple * Place, Suite 330, Boston, MA 02111-1307 USA */ #ifndef ZYGOMA_PROCESSMANAGER_H_ #define ZYGOMA_PROCESSMANAGER_H_ namespace Zygoma { class MemoryManager; class ProcessManager { public: ProcessManager(MemoryManager&); protected: MemoryManager& m_memoryManager; }; } // namespace Zygoma #endif // ZYGOMA_PROCESSMANAGER_H_ |