Image of Linux Kernel Development (3rd Edition)
Image of Android Wireless Application Development
Image of Modern Operating Systems (3rd Edition)
Image of Beginning Google Maps API 3

Installing Oracle 11g Release 2 on Fedora 14

This post will show you how to install Oracle Database 11g Release 2 on Fedora 14 (Laughlin), configure Oracle Enterprise Manager to access the database and how to access the database from a Window platform using Oracle SQLPlus Instant Client. Note, however, that Oracle Database 11g R2 is not certified by Oracle to run on Fedora 14 so you will not get support from Oracle if you have any questions. The following steps should be done as root. First add a number of kernel parameters to /etc/sysctl.conf if they do not already exist in this file or have values less

Porting KSH93 to Windows 7 SUA

Many people are unaware that the Professional and Ultimate editions of Microsoft Windows 7 come with a user-mode subsystem called Services for UNIX Applications (SUA). SUA is kind of like the poor orphaned child of the Microsoft Windows family; it is there but rarely spoken about by Microsoft. What do I mean by a user-mode subsystem? Windows 7 is based on the the Windows NT architecture whose structure can be broadly divided into two parts: user-mode and kernel-mode. User-mode is made up of subsystems which pass I/O requests to the appropriate kernel-mode drivers via the I/O manager. Two types of

Windows Parallel Filesystems

I recently was involved in some development work for a quasi-parallel filesystem for Microsoft Windows.  As a result of that involvement my interest was piqued and I decided to do so research on what the state of research and development is in the field of parallel filesystems designed specifically for Microsoft Windows. First a quick review of what I mean by a parallel file system.  There are any number of different types of parallel file systems available.  Some allow multiple systems and applications to share common pools of storage as in a clusered filesystem.  Some split the data across two

Porting WaitForSingleObject to Linux – Part 2

In my last post I discussed the use of WaitForSingleObject in relation to mutexes and possible ways to implement equivalent functionality when porting such code to GNU/Linux.  In this post I will describe the use of this API with event objects in Microsoft Windows and suggest possible ways of posting such code to GNU/Linux or Unix. First, some background on event objects.  An event object is just another type of Windows kernel dispatcher object.  From a coding prespective, an event object is a synchronization object which encapsulates one or more kernel dispatcher objects and whose synchronization semantics are accessable via

Porting WaitForSingleObject to Linux – Part 1

Recently I was involved in porting a 32-bit application which was initially written for Microsoft Windows NT to GNU/Linux.  This application contained a large number of calls to NtWaitForSingleObject and a smaller number of calls to NtWaitForMultipleObject.  Now anybody who has had to port code containing more than a few instances of these particular Win32 APIs, or their close cousins WaitForSingleObjectEx, MsgWaitForMultipleObjects, MsgWaitForMultipleObjectsEx, etc. to Unix or GNU/Linux is probably already shuddering with the recollection of long arduous days and nights of trial and error coding to try and correctly mimic the semantics and functionality of these particular Microsoft Windows