MOS 6502 microcontroller

Nice and short 30 min talk about the origins and background to the MOS Technologies 6502 micro-controller, which came out in 1975 and powered the BBC Micro, the Commodore 64, first Nintendo, amongst many others. Super good!

Micro Men

I bookmarked this to watch after Hilary Mason tweeted it recently - i thought i had previously watched it but after seeing it tonite I realised i hadn’t - super fun history, really taking me back to my youth! It tells the story of Sir Clive Sinclair and his rivalry with Acorn computers who produced the BBC Micro - the BBC Micro was the first machine I ever used, back in High School sometime in the mid 1980s, and the Sinclair ZX Spectrum was the first computer i owned. Read on MacDuff..

Around the Earth in 200ms

A month or two back, i saw an interesting figure on Bram Cohen's blog:

“The speed of light in a fiber optic cable around the earth’s circumference is about 200 milliseconds.”
(from here)

I clipped it for my ever expanding Evernote tech tips, thinking it's one of those useful metrics to know. I've referred to it a few times now, but I always like to verify things myself, so this morning I looked up the relevant data -

So - speed of light in a vacuum is 186,000 miles per second. However according to this wikipedia article, the index of refraction for the cladding of an optical fiber is 1.52. “From this information, a good rule of thumb is that signal using optical fiber for communication will travel at around 200 million meters per second”.

Ok, so 200, 000,000 meters / second = 200, 000 meters / ms

“The circumference of the earth at the equator is 24,901.55 miles (40,075.16 kilometers).” // from here

40,075.15km = 40,075,000 meters

With all figures then, Earth Circumference is 40,075,000 meters, and the speed of light in fiber is 200,000 meters per ms:
40,075,000 /2 00,000 = 200.375 ms

// or to be even smarter, I could have just followed the Wolfram Alpha link from Bram's blog here - gotta love the Wolfram //

JVM tuning for VMs

This is an excellent talk about the interaction between the various layers of memory abstraction from the a machine's physical memory down through the Hypervisor's view, to the Guest OS's and down into the JVM:

// found via Marakana //

Bring the Noyce

yow, sorry, that title's a really bad pun!

So two things here - i started to watch this video with Robert Noyce talking about the development of the IC, but in the introduction and in his opening, they talk about an article written by Tom Wolfe about Noyce - now, Tom Wolfe was a massive influence on my teenage self, or at least one of his books, The Electric Kool Aid Acid Test, which a friends older brother passed on to me when i was fifteen. Apart from being an excellent writer, the book, as I'm sure most know, was about Ken Kesey and The Merry Pranksters, and the birth of acid culture. Wolfe's way with words is incredible, and the mythologizing he manages to paint is deliciously enjoyable. He applies the same magic to telling the story of Robert Noyce in this truly amazing article from Esquire magazine, written in 1984. Well worth an hour of your time to read the article - i had no idea how much he had influenced the whole culture of Silicon Valley.

the mysterious MegaCLI

I've inherited some Production Sun Fire X4470 boxes, which upon first look appeared to only have 2 x 140GB drives. Checking the purchase orders however, revealed that they should in fact have 4 x 140GB drives, a fact confirmed by “dmesg |grep scsi”.

These Sun Fire servers come with an internal 6Gb SAS PCIe RAID HBA which are managed via the LSI MegaRAID Management Suite. Unfortunately, the LSI website is a nightmare to navigate and has been re-arranged with no-redirects, requires a login and in general makes it very hard to find and download the MegaCLI utility.
I eventually found a working download link at http://www.lsi.com/downloads/Public/MegaRAID%20Common%20Files/8.02.16_MegaCLI.zip.

The zip file contains an RPM file, so if like myself, you run Debian, you'll need to run:
rpm2cpio MegaCli-8.02.16-1.i386.rpm | cpio -idmv
The binaries are statically compiled so actually run fine.

In this situation, it simply turned out my drives were setup as RAID 1 mirrors, which was easy to discern using:

./MegaCli64 -CfgDsply -aALL

I came across a couple of good cheat sheets for MegaCLI -

For me, the most useful ones were:

#Physical Disk List
./MegaCli64 -PDList -aALL

#Physical Drive Info
./MegaCli64 -pdInfo -PhysDrv \[252:4\] -aALL |less

#Logical Disk Info
./MegaCli64 -LDInfo -LAll -aAll | less

# Config Display
./MegaCli64 -CfgDsply -aALL

# Config add Logical Drive
./MegaCli64 -CfgLdAdd -r0 \[252:4,252:5\] -a0

# Logical Drive Init
./MegaCli64 -LDInit -Start -L2 -a0

We installed another two drives in the machine, which i was able to bring online in a RAID 0 volume using:
./MegaCli64 -CfgLdAdd -r0 \[252:4,252:5\] -a0

However, even after having created this RAID 0 volume, my OS couldn't see it when using ‘fdisk -l‘ - i had to run
echo “- - -” > /sys/class/scsi_host/host0/scan
which forces a SCSI bus rescan, and made available the new drive.

Multicore UFOs

Interesting article on GigaOm this morning about Facebook benchmarking a 64-core chip from Tilera.

The X86 processor architecture has been in a dominant for so many years, not based upon any inherent sophistication, but more based upon chance and circumstance (see this vid for more details around the 48min mark), so it does feel about time for a new advancement in hardware architecture.

Be interesting to watch this space and see what develops..