XBinary: Extended Binary Format Support for Mac OS X - 0 views
osxbook.com/xbinary
XBinary Extended Binary Format kernel binary Universal Binary format Apple Inc. Mac OS X
![](/images/link.gif)
-
Extended Binary Format Support
- ...51 more annotations...
-
—With the advent of x86-based Macintosh computers, Universal binaries, originally known as "fat" or multiple-architecture binaries, appeared in Mac OS X.
-
a "4-way fat" executable could consist of Mach-O executables for the i386 (32-bit Intel), x86_64 (64-bit Intel), ppc (32-bit PowerPC), and ppc64 (64-bit PowerPC) architectures
-
Mac OS X does not provide any kernel-level or user-level interfaces to extend binary format support.
-
Let us call the new software that implements these features XBinary. binfmt_misc Those familiar with the Linux kernel will realize that functionality similar to what's been described here exists in Linux as the binfmt_misc kernel feature. XBinary is conceptually similar
-
XBinary: extended Binary format support for Mac OS X Copyright (c) 2009 Amit Singh. All Rights Reserved. http://osxbook.com The XBinary software allows you to extend the Mac OS X kernel such that it can recognize arbitrary Binary formats and execute them through specified handler programs. (Mac OS X natively supports executing only Mach-O binaries, Universal (fat) binaries, and interpreter scripts.) XBinary consists of a kernel extension (xBinary.kext) and this command-line tool, which lets you control the XBinary facility. This requires superuser privileges, so you should run this tool using sudo(8). The XBinary kext must be loaded for the facility to be available.
-
You can also specify flags that affect how a matched entry is processed. By default, the argument vector IS adjusted and setuid/setgid binaries are NOT allowed.
-
We don't even have to write such scripts
-
operating system versions in addition to processor architectures.
-
Executive Summary This document discusses XBinary, a new software that lets you add kernel-level support for executing files in arbitrary Binary formats on Mac OS X.
-
Each entry must have as its name a unique identifier string up to 31 bytes in size. Additionally, a set of other arguments specify to the kernel how to recognize that binary format and which interpreter to invoke to handle it. Xbinary can recognize a binary EITHER by matching magic bytes within the first page of the file OR by matching a file extension. OTHER_ARGS must be a valid combination of the following arguments (some are optional).