⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vcs.map

📁 C++ 编写的EROS RTOS
💻 MAP
字号:
/* -*- Mode: c -*- *//* * Copyright (C) 1998, 1999, 2001, Jonathan S. Shapiro. * * This file is part of the EROS Operating System runtime library. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This library 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 Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, 59 Temple Place - Suite 330 Boston, MA 02111-1307, USA. *//********************************************************* * PRIMORDIAL VIRTUAL COPY SEGMENT/FRESH SEGMENT * *  In which we built up a read-only segment of zeros *  of maximal LSS, which is currently 17 (spans a 96 bit  *  address) *********************************************************/zero_pg = new ro page;zero_03 = new sense node with lss 1;zero_04 = new sense node with lss 2;zero_05 = new sense node with lss 3;zero_06 = new sense node with lss 4;zero_07 = new sense node with lss 5;zero_08 = new sense node with lss 6;zero_09 = new sense node with lss 7;zero_10 = new sense node with lss 8;zero_11 = new sense node with lss 9;zero_12 = new sense node with lss 10;#if (MAX_BLSS == 13) || defined(USE_SMALLER_BLSS) && (MAX_BLSS == 11)primary_zero_seg = new sense node with lss 11;#elsezero_13 = new sense node with lss 11;zero_14 = new sense node with lss 12;zero_15 = new sense node with lss 13;zero_16 = new sense node with lss 14;primary_zero_seg = new sense node with lss 15;#endifzero_03 all slots = zero_pg;zero_04 all slots = zero_03;zero_05 all slots = zero_04;zero_06 all slots = zero_05;zero_07 all slots = zero_06;zero_08 all slots = zero_07;zero_09 all slots = zero_08;zero_10 all slots = zero_09;zero_11 all slots = zero_10;zero_12 all slots = zero_11;#if (MAX_BLSS == 13) || defined(USE_SMALLER_BLSS) && (MAX_BLSS == 11)primary_zero_seg all slots = zero_12;#elsezero_13 all slots = zero_12;zero_14 all slots = zero_13;zero_15 all slots = zero_14;zero_16 all slots = zero_15;primary_zero_seg all slots = zero_16;#endif/********************************************************* * INDEX on primordial zero segment * * This index is used by some segment keepers to provide * an efficient way to populate subtrees with zeros. *********************************************************/zindex = new sense node;  zindex[2] = zero_pg;  zindex[3] = zero_03;  zindex[4] = zero_04;  zindex[5] = zero_05;  zindex[6] = zero_06;  zindex[7] = zero_07;  zindex[8] = zero_08;  zindex[9] = zero_09;  zindex[10] = zero_10;  zindex[11] = zero_11;  zindex[12] = zero_12;#if (MAX_BLSS == 13) || defined(USE_SMALLER_BLSS) && (MAX_BLSS == 11)  zindex[13] = primary_zero_seg;#else  zindex[13] = zero_13;  zindex[14] = zero_14;  zindex[15] = zero_15;  zindex[16] = zero_16;  zindex[17] = primary_zero_seg;#endif/******************************************************** * All VCS's ultimately derive from ZSF, which is built * on the primordial zero space. * *   1. The primordial VCS needs a (VCSK) keeper. *   2. That keeper must come from VCSF *   3. All instances of VCSF are built by some instance *      of VCSK. * * This circularity is resolved by pre-constructing the * factory and the domain creator, and making it appear * that the initial VCS was built by the appropriate proccre. ********************************************************//* These must be symbols because they need to be referenced later. */vcsk.seg = small program "/eros/domain/vcsk";vcsk.pc = symbol "/eros/domain/vcsk" _start;BOOT_CONSTRUCTOR(zs_c, zs);PROD_CONSTIT(zs_c, KC_OSTREAM, 0) = misc Console;PROD_CONSTIT(zs_c, KC_RETURNER, 1) = misc Returner;PROD_CONSTIT(zs_c, KC_ZINDEX, 2) = zindex;PROD_CONSTIT(zs_c, KC_FROZEN_SEG, 3) = zero_pg;PROD_CONSTIT(zs_c, KC_PROTOSPC, 4) = protospace;PROD_SPACE(zs_c) = vcsk.seg;PROD_PC(zs_c) = vcsk.pc;/* no keeper, no symbol table */#define MAKE_VIRTUAL_COPIER(name, progfile) \   BOOT_CONSTRUCTOR(name##_c, name); \   PROD_CONSTIT(name##_c, KC_OSTREAM, 0) = misc Console; \   PROD_CONSTIT(name##_c, KC_RETURNER, 1) = misc Returner; \   PROD_CONSTIT(name##_c, KC_ZINDEX, 2) = zindex; \   PROD_CONSTIT(name##_c, KC_FROZEN_SEG, 3) = sense program segtree progfile; \   PROD_CONSTIT(name##_c, KC_PROTOSPC, 4) = protospace; \   PROD_SPACE(name##_c) = vcsk.seg; \   PROD_PC(name##_c) = vcsk.pc;/* hide vcsk.seg; *//* hide vcsk.pc; */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -