Archive

Archive for the ‘Operating Systems’ Category

QuickTip: Mapping your GAC folder in Windows with Subst

December 30th, 2010 1 comment

Here’s a quick tip if you want to browse the files in your GAC easily without messing about with commands all the time. Map the folder  containing the assemblies with the Subst command.

To do that, bring up a console window (Windows Key + R or Start > Run), then:

subst G: C:\windows\Assembly

This will map the Global Assembly Cache folder to your G drive in Windows Explorer. You can also peek around and see how the GAC works.

The folders you’ll find in the mapped drive include – on a 64bit system *:

  • GAC – Non-native assemblies used by .NET 1.x
  • GAC_32 – Non-native 32bit assemblies
  • *GAC_64 – Non-native 64bit assemblies visible only on 64bit Windows.
  • GAC_MSIL – Non-native MSIL (AnyCPU) assemblies.
  • NativeImages_v* – Native assemblies for the framework version and the architecture (Eg. NativeImages_v4.0.30319_64 is for the .NET 4.0 64bit native Assemblies)
  • temp / tmp – Temporary directories (duh!)

To remove the binding, use the Subst command with the -D option.

subst G: /D

That’s it! Have a safe & happy New Year!

{lang: 'en-GB'}
Share

Windows Phone 7 Resources

November 15th, 2010 1 comment

I’ve been busy hacking away the past month or so with Windows Phone 7 and Android. They’re both very different when it comes to the out of box developer experience – with Microsoft tools being supremo right now. Thought I’d contribute some resources when it comes to (on this post) writing Windows Phone 7 Applications. I’ll try and keep this up to date with new things I find.

Feel free to comment with other great resources.

Last Updated: 16th November, 2010

Books/eBooks

Online Resources

Developer

Developer Frameworks/Tools

Developer Components/Controls

Designer/UX

Hardware

{lang: 'en-GB'}
Share

CVE-2010-3081: 64bit Linux Kernel Root Exploit

September 20th, 2010 1 comment

Well its been a heavy week on the security front, first up is a Linux root exploit for 64bit Machines.

A vulnerability in the 32-bit compatibility layer for 64-bit systems was reported. It is caused by insecure allocation of user space memory when translating system call inputs to 64-bit. A stack pointer underflow can occur when using the “compat_alloc_user_space” method with an arbitrary length input.

What does that mean? Essentially, some sanity checks in the compat_alloc_user_space function to check the length and ensure that the pointer to the block of memory is within the user-space of the process is valid was missing. The fix has already been committed but if you are running any x64 versions of Linux, make sure you update your Kernel – especially now that the exploit code is publicly available!

Read up on the exploit by Jeff Arnold from Ksplice and use this very useful CVE-2010-3081 high-profile exploit detection tool to determine if you’re boxens are already compromised.

Of particular note from his article is the breadth of exploitable distributions – see the references below for vendor specific information:

This vulnerability was introduced into the Linux kernel in April 2008, and so essentially every distribution is affected, including RHEL, CentOS, Debian, Ubuntu, Parallels Virtuozzo Containers, OpenVZ, CloudLinux, and SuSE, among others. A few vendors have released kernels that fix the vulnerability if you reboot, but other vendors, including Red Hat, are still working on releasing an updated kernel.

After downloading and running the tool under a non-sudo account, you should cheerfully get the following output.

thushan@dingo:~/tmp$ ./diagnose-2010-3081
Diagnostic tool for public CVE-2010-3081 exploit -- Ksplice, Inc.
(see http://www.ksplice.com/uptrack/cve-2010-3081)

$$$ Kernel release: 2.6.32-23-server
!!! Not a RHEL kernel, will skip LSM method
$$$ Backdoor in LSM (1/3): not available.
$$$ Backdoor in timer_list_fops (2/3): checking...not present.
$$$ Backdoor in IDT (3/3): checking...not present.

Your system is free from the backdoors that would be left in memory by the published exploit for CVE-2010-3081.
thushan@dingo:~/tmp$

If not, its time to put those security drills into action!

References

{lang: 'en-GB'}
Share

OpenIndiana Announced, the fork to Oracle’s OpenSolaris!

September 15th, 2010 No comments

OpenIndianaEarlier today, we had the announcement for OpenIndiana. Aimed to be the de-facto OpenSolaris Distribution that tries to be binary and package compatible with Solaris 11 & Solaris 11 Express. Its apart Illumos Community with 20 core developers providing (eventually) a stable branch with 100% free & open source distribution.

Not only that, you can also download a ready baked OpenIndiana distribution (based on ou_147) or if you’re like me and still using OpenSolaris DEV snv_134, you can upgrade via the IPS management tools. Having said that though, I’m not going to rush and upgrade my zeus box anytime soon as it will take time to settle in, but you can take the baked ISO’s for a spin in a VM 🙂 I have found a few references to OpenSolaris still there and there is currently no xVM Xen (dom0) support nor lx (Linux) branded zones. Not to worry, keep an eye out on the roadmap and release schedule for what they’re going to deliver.

You can get a copy of the OpenIndiana announcement presentation slides as well or follow @openIndiana on twitter. Otherwise, see the Getting Involved guide on the OpenIndiana Wiki and join in!

In a way, its good to know that the beloved OpenSolaris will still live – thanks to the community, but at the same time, how long that community will be turned on by developing and maintaining it will be interesting – though other forks of OpenSolaris are backing it (via Illumos) – like Nexenta and Schillix which has just released a version based on Ilumos. All in all, WATCH THIS PROJECT!

{lang: 'en-GB'}
Share

I’m still here

September 13th, 2010 No comments

Well its been a while since I last posted, but I’m still here. Infact I’ve just realised that xkcd has stolen my plans for world domination.

XKCD - Password Reuse

I’m only kidding, what would I do with all that information? I have enough princes offering me the opportunity to help them move money out of West Africa! Alas, OpenSolaris is now dead (RIP dear friend), we’re eagerly awaiting word of OpenIndiana and The Illumos Project to see where things are going to go. The Android momentum has picked up and Windows Phone 7 is just around the corner!

I’ve also changed my jobs and now I’m working for Readify as a Senior Developer. A company full of talented bright people (the author of Autofac or Paul Stovel of Magellan fame for instance) & skills in so many different areas I’m ashamed to be even be seen in the office – which is a great thing because we’re a mobile office (some day!). You might even see me at a few local Australian developer events now and I’ll be sure to advertise them when I come across any.

Essentially, its back to the days of being more involved with the developer community, times have changed since Developerfusion (for one, we have StackOverflow) and getting into up and coming technology – which this time around is Windows Phone 7. So I’ll be starting a series of posts on Windows Phone 7 as well as Android soon.

http://www.illumos.org/
{lang: 'en-GB'}
Share

Google Nexus update Froyo officially available!

June 30th, 2010 1 comment

Quick note that the official release of Froyo (Android 2.2) is finally trickling down to Google Nexus One users. You’ll get it by the end of the week if not already. You can also download the officially signed release and update via your SD card alternatively.

UPDATE (01/07): The link above is for updating from the Google-IO Froyo release to the final.

The full OTA release is here:
http://android.clients.google.com/packages/passion/signed-passion-ota-42745.dc39ca1f.zip

The update from Froyo Google-IO to Froyo-OTA:
http://android.clients.google.com/packages/passion/signed-passion-FRF83-from-FRF50.38d66b26.zip

  1. Rename the signed ZIP file to “update.zip” and upload it to your SD Card.
  2. Power off your Nexus device.
  3. Turn it on with the “Volume Down” button pressed.
  4. When the boot loader appears, select “Recovery” using the Volume Up/Down keys to navigate and the Power button to select.
  5. Once the Nexus has rebooted, the screen will display an exclamation mark with Android. Press and hold down Power and Volume Up, it’ll take a bit of time to register.
  6. Navigate to “Apply SDCard:update.zip” and wait for the verification to complete and flash your phone.
  7. After a bit of time the phone will reboot and launch your cultured Froyo release.
  8. Verify by going to Settings > About Phone. The build number should be FRF83.
  9. Bon Appetit!

As mentioned in my previous post from a couple of months back, this release packs a bit of punch! Yum!

{lang: 'en-GB'}
Share

Trailer: Java 4ever

June 26th, 2010 No comments

In genius trailer! The .NET vs Java train left the station so long ago for me. .NET’s great for somethings, for everything else, there’s Java. Probably one of the best nerdy videos for the year!

UPDATED: First video was removed 🙁

{lang: 'en-GB'}
Share

Oracle releases VirtualBox 3.2

May 20th, 2010 1 comment

With the Sun now set, Oracle has released VirtualBox 3.2 finally 🙂 In particular some lovely optimisations for the newer Intel Core i5/i7 processors, Large  Page support (which helps significantly on Windows x64 and Linux) as well as a very welcome optimisation on the networking in VirtualBox as well as multi-monitor support for Windows Guests. Whats more RDP sessions are now accelerated (VRDP).

Amongst the changes from the changelog:

This version is a major update. The following major new features were added:

  • Following the acquisition of Sun Microsystems by Oracle Corporation, the product is now called Oracle VM VirtualBox and all references were changed without impacting compatibility
  • Experimental support for Mac OS X guests (see the manual for more information)
  • Memory ballooning to dynamically in- or decrease the amount of RAM used by a VM (64-bit hosts only) (see the manual for more information)
  • Page Fusion automatically de-duplicates RAM when running similar VMs thereby increasing capacity. Currently supported for Windows guests on 64-bit hosts (see the manual for more information)
  • CPU hot-plugging for Linux (hot-add and hot-remove) and certain Windows guests (hot-add only) (see the manual for more information)
  • New Hypervisor features: with both VT-x/AMD-V on 64-bit hosts, using large pages can improve performance (see the manual for more information); also, on VT-x, unrestricted guest execution is now supported (if nested paging is enabled with VT-x, real mode and protected mode without paging code runs faster, which mainly speeds up guest OS booting)
  • Support for deleting snapshots while the VM is running
  • Support for multi-monitor guest setups in the GUI for Windows guests (see the manual for more information)
  • USB tablet/keyboard emulation for improved user experience if no Guest Additions are available (see the manual for more information).
  • LsiLogic SAS controller emulation (see the manual for more information)
  • RDP video acceleration (see the manual for more information)
  • NAT engine configuration via API and VBoxManage
  • Use of host I/O cache is now configurable (see the manual for more information)
  • Guest Additions: added support for executing guest applications from the host system (replaces the automatic system presimparation feature; see the manual for more information)

Download from VirtualBox or get the Windows build. I’m really hoping the good Oracle keeps VirtualBox open, this is one kickass bit of kit.

{lang: 'en-GB'}
Share

OpenSolaris FIX: Server refused to allocate pty (SSH)

May 11th, 2010 5 comments

Just upgraded a friends OpenSolaris boxen to SNV_134 (latest available from the OpenSolaris dev repository) and after rebooting we realised we couldn’t SSH into it.

Server refused to allocate pty

DOH! This is caused by a known bug that has been around for a few builds now.

You’ll need to modify /etc/minor_perm and add the following to the bottom of the file.

clone:ptmx 0666 root sys

And what happens if your terminals don’t accept keyboard input? You could drop back into the shell *or* be lazy like me, find gText editor in your Accessories, add it to the panel and change the properties to run it as a privileged user:

pfexec gedit %U

Then run the file, open the /etc/minor_perm file, save and reboot. Make sure you change back the shortcut path 🙂

{lang: 'en-GB'}
Share

The Gospel according to Jobs: Thoughts on Flash

May 3rd, 2010 2 comments

Got to give it up for Steve Jobs, he responds to his followers when things are a muck in his church. But putting aside my dislike for Apple antics, I do agree with most of his comments.

Flash was great in the early days, we had the birth of the XaoXao videos and interactivity on the web, but in the past 5-6 years, the hip cool designers of the world have transformed the browsing experience to be  fully Flash driven – which drives me nuts. Do they not realise that content would not be indexable by search engines nor useful for anyone who doesn’t have Flash? Whats more, I’m not after their fancy dancy effects, I’m after content – the exception of Flash being used for animation in addition to content (like slideshows, video presentations or marketing bits) or navigation around a site.

One recent (2006) example is the Eclipse home page, back when I got the AVN6000 installed, I wrote a little blurb on the (then) DeveloperFusion blogs and sure enough took the bulk of the traffic for the keyword AVN6000. The entire site was flash driven up until 2008 and no-one had indexed the content of the site.  As the unit was installed a week after release, it got quite a bit of traffic – nice for me.

I have FlashBlock installed to avoid uninvited flash content (especially annoying opening up a bunch of news articles and one of them is playing a video!) and have no _real_ need for Flash on my mobile devices – youtube works. Android 2.2 (Froyo) will ship with some flash support but it doesn’t excite me as much as the JIT functionality. Gotta JIT that, Gotta JIT that

There are a few points you can criticise Jobs on (HTML5, CSS+JS is no where near the functionality of Flex nor Silverlight – gasp! but it has time and momentum to grow) and everything about Apple is proprietary (sure they have a few good open-source projects – DTrace & WebKit) but their business nature to lock you into fruity loops. I still haven’t got a decent way of avoiding installing iTunes if I want to use an iPod which is the only device my (ironically) AVN6000 supports. As for the latter, overall a job well done I say and well justified move for not having Flash on their devices.

Just like to point out one thing having come from working with the On2 VP6/VP7 bits whilst at Vividas.

Although Flash has recently added support for H.264, the video on almost all Flash websites currently requires an older generation decoder that is not implemented in mobile chips and must be run in software.

What he’s talking about here is that Adobe utilises the On2 VP6 for their video rendering in Flash (as of Flash Player 8) and as such there’s no standard accelerator for the On2 codec (yet!) – its all CPU bound (and prior to 2008 quite intensive to decode!). The VP6 and VP7 codecs (though quite differently utilised) powered (or still powers) the Vividas format (could be different now, I left in 2008). Compared to Flash Player 7, the enhancements that On2 VP6 brought to Flash Player 8 effectively meant that a lot of media was encoded optimised for VP6. Newer versions of Flash Player 9 Update 3+ support h264 however.

Don’t forget that JavaFX also utilises VP6. While you’re there, checkout Gosling rant on Android and his thoughts on the Apple OS X Secret API hooks for the JVM.

With Google having purchased On2 Technologies earlier this year, there’s a bit of excitement and worry about the future of VP8 and whether it will become open-source and what will happen to h264 or Theora (a derivative of On2 VP3 which On2 open-sourced).

Having said all that, I can’t leave you without leaving something to ponder about when it comes to Apple and its many evangelists enthusiasts – maybe you’re one of them?

It’s funny because its true (!), don’t Think Different. Be different 🙂

I guess its time for Adobe to chime in and see their take on things, it better be something flashy!

{lang: 'en-GB'}
Share