What’s in the Mac OS X version of Silverlight 1.1 Alpha?

I downloaded Silverlight 1.1 Alpha and poked around until I found out where the .NET stuff lives. Here’s what’s in the bundle:

$ cd /Library/Internet\ Plug-Ins/Silverlight.plugin/Contents/MacOS/
$ ls
  CoreCLR.bundle                          System.Core.dll
  IronPython.Modules.dll                  System.SilverLight.dll
  IronPython.dll                          System.Xml.Core.dll
  Microsoft.JScript.Compiler.dll          System.dll
  Microsoft.JScript.Runtime.dll           agclr.dll
  Microsoft.Scripting.SilverLight.dll     agcore
  Microsoft.Scripting.Vestigial.dll       slr.dll
  Microsoft.Scripting.dll                 slr.dll.managed_manifest
  Microsoft.VisualBasic.dll

And check out what those DLLs are made of:

$ file System.dll
  System.dll: MS Windows PE 32-bit Intel 80386 console DLL

But what’s this thing? Man, that’s big!

$ file agcore
  agcore: Mach-O universal binary with 2 architectures
  agcore (for architecture i386): Mach-O bundle i386
  agcore (for architecture ppc):  Mach-O bundle ppc
$ ls -l agcore
  -rwxr-xr-x   1 502  admin  16083600 Apr 26 03:16 agcore

So how much of those DLLs are managed code? Do they contain Win32 code, and does agcore have some magic in it for bootstrapping Win32 code?

This entry was posted in emulation, mac, programming. Bookmark the permalink.

2 Responses to What’s in the Mac OS X version of Silverlight 1.1 Alpha?

  1. 16 megs isn’t all that large for a universal mach-o binary.
    What vexes me more is the fact that System.dll doesn’t contain PPC code based on what you’ve listed here – so maybe the dll’s are /only/ managed code? I find it unlikely that they’d be running i386 code on PPC Macs.
    You’ve intruiged me – now I’m going to have to download this and look at the magic they’re pulling.

  2. Brian Jepson says:

    Let me know what you find out. One thing I neglected to mention, although you may already be aware of this, is that even managed code DLLs are supposed look like that. So it is possible that all of those DLLs are managed code and that all the system-specific stuff is in the bundles and executables.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>