Archive for the 'Operating Systems' Category

Crafting a Tiny Mach-O Executable

Sunday, March 15th, 2009

The other day I came across this web page in which the author describes his experiment to create a tiny ELF executable that will run on Linux. The result: a 45-byte ELF executable that executes and returns a value. The executable is functionally equivalent to the one generated from compiling the following C program.

[...]

Retrieving x86 Processor Information

Monday, March 2nd, 2009

The other day I needed to know within one of my experimental programs if the host x86 processor supports certain features. In many cases, the operating system provides interfaces that can answer such questions. Sometimes, the interfaces may not have the answer, or you may wish to avoid them for other reasons. (Say, you don’t [...]

XBinary: Extended Binary Format Support for Mac OS X

Tuesday, January 20th, 2009

XBinary is software that lets you add kernel-level support for executing arbitrary binary formats on Mac OS X. To read more about it and to download it, visit the XBinary page.

AncientFS on Linux and FreeBSD

Monday, December 22nd, 2008

By popular demand, I’ve "ported" AncientFS to Linux and FreeBSD. It was reasonably straightforward. Largely on purpose, AncientFS depends on the cross-platform interfaces of MacFUSE for the most part.

Most people don’t realize that MacFUSE is much more than a "Mac OS X implementation of the FUSE API." Of course, the name "MacFUSE" doesn’t help much [...]

Extended Notes on AncientFS

Wednesday, December 17th, 2008

Here are some extended notes on understanding, compiling, and using AncientFS, the file system I talked about in the previous blog post.

More User-Space File System Goodies

Tuesday, December 16th, 2008

There has been much buzz about new features and functionality in MacFUSE 2.0. Besides the MacFUSE 2.0 release, there are still more new and interesting things to be discussed in the realm of user-space file systems. As I described and briefly demonstrated during my recent talk at the Googleplex, I wrote several new user-space file [...]

A Note on Pathname Processing in HFSDebug

Monday, November 24th, 2008

A couple of weeks ago, I released HFSDebug 4. I’ve updated it to make HFSDebug’s pathname processing a little more sophisticated. Depending on how (and how seriously) you use HFSDebug, knowing the details could be useful.
When you specify a file system object to HFSDebug using a pathname, how HFSDebug will treat the pathname usually depends [...]

HFSDebug 4.0 and New HFS+ Features

Sunday, November 9th, 2008

I wrote HFSDebug in early 2004. I initially made it available as a software tool to help understand fragmentation in HFS+ volumes, although it could also be used to analyze several implementation details of HFS+. Eventually, I extended HFSDebug to be able to analyze all on-disk aspects of HFS+, along with the ability to compute [...]

“TPM DRM” In Mac OS X

Thursday, January 31st, 2008

A Myth That Won’t Die

IBM Assured Execution Environment

Saturday, June 23rd, 2007

Several years ago, while I was working at the IBM Almaden Research Center, we came up with a security mechanism called the Assured Execution Environment (AxE). We had implementations for Windows XP and Mac OS X. (Although AxE supports code signing as a feature, it’s not the same—in any case, this was long before code [...]

Making procfs Cooler

Tuesday, June 5th, 2007

A few weeks ago, I released as open source a MacFUSE-based process file system for Mac OS X.
I recently added several new features to this procfs implementation. Some of these features are "cool" in that they put a new twist on certain types of visual information.
For example, there’s a folder /proc/system/hardware/displays/ that contains a subfolder [...]

Video: MacFUSE “Open Source” Talk

Friday, June 1st, 2007

We did a MacFUSE talk at Google last week:
Video on YouTube

Process Photography on Mac OS X

Sunday, May 13th, 2007

Details on taking a snapshot of the memory and register state of a running process on Mac OS X, including source for a user-space program that does that.

Public Talk on MacFUSE @ Google

Thursday, May 10th, 2007

People are welcome to join us at Google on Thursday, May 24, for an open-to-public talk on all things MacFUSE. I’m told that “Doors open at 6:30PM at Google’s Mountain View campus. Guests should plan to sign in at Building 41 reception upon arrival. Refreshments will be served…”
Here’s an abstract:

File systems provide one of the [...]

procfs for Mac OS X

Tuesday, May 8th, 2007

I’ve made available a MacFUSE-Based process file system for Mac OS X. Source code is included.

Updates to MacFUSE and SSHFS

Thursday, April 19th, 2007

MacFUSE 0.2.5 and SSHFS for MacFUSE 0.2.0 bring several important and useful updates to the user.
Changelog for MacFUSE
Changelog for SSHFS


All contents of this site, unless otherwise noted, are ©1994-2009 Amit Singh. All Rights Reserved.