2008-03-05 09:52:00 -05:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
//
|
|
|
|
// Microsoft Research Singularity
|
|
|
|
//
|
|
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
|
|
//
|
|
|
|
// File: Binder.csi
|
|
|
|
//
|
|
|
|
// Note: Interface definition for the Binder classs
|
|
|
|
//
|
|
|
|
//////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
using System;
|
|
|
|
using System.Runtime.InteropServices;
|
|
|
|
using System.Runtime.CompilerServices;
|
|
|
|
using System.Collections;
|
|
|
|
using Microsoft.Singularity.Io;
|
|
|
|
using Microsoft.Singularity.Xml;
|
|
|
|
using Microsoft.Singularity.V1.Types;
|
|
|
|
using Allocation = Microsoft.Singularity.V1.Services.SharedHeapService.Allocation;
|
|
|
|
|
|
|
|
namespace Microsoft.Singularity.Loader
|
|
|
|
{
|
|
|
|
public class Binder
|
|
|
|
{
|
|
|
|
public static IoMemory GetSystemManifest();
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Load an executable
|
|
|
|
/// </summary>
|
|
|
|
|
|
|
|
public static void Initialize(XmlNode config);
|
2008-11-17 18:29:00 -05:00
|
|
|
public static void RedirectRootRef();
|
2008-03-05 09:52:00 -05:00
|
|
|
public static IoMemory LoadImage(Process parent, String application, out Manifest man);
|
|
|
|
public static IoMemory LoadRawImage(string folderName, string exeName);
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Used to create a new channel from system types
|
|
|
|
/// creates channel enpoints
|
|
|
|
/// inserts imp at index in the process startup endpoint set
|
|
|
|
/// binds exp according to global policy
|
|
|
|
/// </summary>
|
|
|
|
|
|
|
|
public static bool BindToService(
|
|
|
|
Process process,
|
|
|
|
SystemType impType,
|
|
|
|
SystemType expType,
|
|
|
|
string contract,
|
|
|
|
int startState,
|
|
|
|
int index);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|