📄 imgmap
字号:
/* -*- Mode: c -*- *//* * Copyright (C) 1998, 1999, Jonathan S. Shapiro. * * This file is part of the EROS Operating System. * * 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, * 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, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */#include <primebank.map>#include <pcc.map>#include <metacon.map>#include <vcs.map>#include <supernode.map>#include <directory.map>#include <file.map>/******************************************************** * The tarball: ********************************************************/tarball = segtree "tarball";/******************************************************** * A hand-constructed XTAR: ********************************************************/#define TARBALL 0x80000000; /* LSS=7 *//* This constituents node will be used by both xtar and tartest */tar_constit = new node;tar_constit[1] = filec;tar_constit[2] = dirc;tar_constit[3] = snodec;tar_constit[4] = misc Console;tar_constit[5] = misc Sleep;tar_constit[6] = misc Returner;xtar = new process;xtar.seg = program segment "/eros/domain/xtar";xtar.pc = symbol "/eros/domain/xtar" _start;xtar.seg = xtar.seg with page at 0x20000; /* lss 2 */xtar.seg = xtar.seg with page at 0x1F000; /* lss 2 */xtar.seg = xtar.seg with page at 0x1E000; /* lss 2 */xtar.seg = xtar.seg with page at 0x1D000; /* lss 2 */biggerseg = new node with lss 5; /* to let us map the tarball */biggerseg[0] = xtar.seg;biggerseg[8] = tarball; /* at address 0x8000 0000 */xtar pc = xtar.pcxtar sp = 0x21000xtar space = biggersegxtar schedule = sched(8) /* normal *//* We don't need to set any of these key registers manually IF you run out of a constructor... that will be later */ xtar key reg 1 = tar_constit;xtar key reg 2 = xtar;xtar key reg 4 = primebank; xtar key reg 5 = sched(8);run xtar;/******************************************************** * Actual test case ********************************************************/tartest = new process;tartest.seg = program segment "tartest";tartest.pc = symbol "tartest" _start;tartest.seg = tartest.seg with page at 0x20000; /* lss 2 */biggerseg = new node with lss 3; /* to let us map the VCS */biggerseg[0] = tartest.seg;biggerseg[8] = vcs; /* at address 0x800000 */tartest pc = tartest.pc;tartest sp = 0x21000;tartest space = biggerseg;tartest schedule = sched(8); /* normal */tartest key reg 1 = tar_constit;tartest key reg 2 = tartest;tartest key reg 4 = primebank;tartest key reg 5 = sched(8);tartest key reg 12 = start xtar 0;tartest key reg 13 = misc Sleep;hide tartest.seg;hide tartest.pc;run tartest;print directory
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -