Monday, March 26, 2007

WINDOWS DISK INDEXINGThis is a performance tip that I strongly recommend you implement. The Windows Disk Indexer constantly indexes all files on your machine to allow for faster searching using the Windows Search function for example. Since most people don't search their machine very often, having Disk Indexing enabled provides a performance hit for no good reason, and also increases fragmentation. Follow these steps to turn off the Windows Disk Indexer to improve hard drive performance and responsiveness:1. Go to Windows Explorer, right-click on your hard drive name (e.g. C:) and select Properties.2. Untick the 'Allow Indexing Service to index this disk for fast file searching'.3. Select 'Apply changes to [Drive letter]\, subfolders and files' in the subsequent prompt.4. Your system will now go through and remove all indexing on existing files, and not index any new or moved files in the future - this will speed up drive read/writes and general responsiveness. Ignore any 'errors' which are shown, this occurs simply because some files are in use or protected and can't have their properties changed to remove indexing - this is normal.

Make sure you also disable the 'Indexing Service' service as it is no longer necessary when disk indexing is removed from your hard drive.

DEFRAGMENTATIONI strongly suggest you get into the habit of defragmenting often, specifically after you delete or add large files or install software.PREFETCH[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\MemoryManagement\PrefetchParameters]EnablePrefetcher=3

I personally leave the Prefetcher registry setting above at its default of 3, and set the Task Scheduler service to Disabled. This means the prefetcher won't create application prefetch files under the Window\Prefetch directory. I also clear all out existing prefetch (.PF) files in that directory. I have found that this provides for the fastest Windows bootup time.

This is where you can set the size of your pagefile. To determine the optimal pagefile size you should ideally see how much memory your most memory intensive programs use and then set the pagefile to comfortably accommodate this.

Before setting a new pagefile size, first clear your existing pagefile. To do this select the 'No Paging File' option and click the Set button, then reboot your system. This step does two things: first it deletes the pagefile, fixing any potential pagefile corruption which can occur after a bad shutdown (remember this tip for future troubleshooting purposes); and secondly it ensures that any new pagefile you create will start off as a single unfragmented contiguous block on your hard drive for optimal performance, which will remain unfragmented in the future. Note that if you have any problems booting up into Windows due to a lack of a pagefile during this step, enter Windows in Safe Mode (See Backup & Recovery section) and continue the setup procedures for Virtual Memory from there.

Here is a simple general recommendation which is both safe to use on all systems, regardless of how much RAM you have, and provides good performance:Set the Initial and Maximum pagefile sizes to 2560MB each - i.e. allocate 2.5GB for the pagefile. Whatever you do, don't set a zero pagefile.

> ADVANCED > STARTUP & RECOVERY SETTINGSFor a system with a single operating system, select '"Microsoft Windows XP [Home/Professional]" /fastdetect' in the list presented. If you only have one operating system, or you don't want to select a different operating system each time you boot up, untick the 'Time to display list of Operating Systems' option.

Under the 'System failure' section untick all three options for optimal performance, and the 'Write Debugging Information' option should be set to None. That way if you run into problems you'll see the error displayed (usually a Windows Blue Screen of Death (BSOD) message) and your system won't automatically reboot. At the same time you won't get lots of logfiles and dumpfiles of the event cluttering up your hard drive.

> ADVANCED > ERROR REPORTINGClick the Error Reporting button and select 'Disable Error Reporting' and tick 'But notify me when critical errors occur'. This will prevent your system continually informing Microsoft of errors occurring on your system, but at the same time will still show you important system messages and errors for notification and troubleshooting purposes.

> REMOTEI strongly recommend that you disable the available options in this section for security and performance reasons.

> AUTOMATIC UPDATESI recommend 'Turn off Automatic Updates' and instead use the manual method of regularly checking the Windows Update site for updates.

> SYSTEM RESTORETurn off System Restore, as it can take up a great deal of disk space

CONTROL PANEL > SOUNDS & AUDIO DEVICESDisable as many sounds as possible as they take up system memory by being loaded into RAM at startup.

CONTROL PANEL > FOLDER OPTIONSUse Windows Classic FoldersOpen each folder in the same windowDouble-click to open an itemUnder View, I recommend you tick the following options:

Display file size information in folder tips

Display simple folder view in Explorer's folder list

Display the contents of system folders

Display the full path in the address bar

Display the full path in the title bar

Do not cache thumbnails

Show hidden files and folders

Show Control Panel in My Computer

Show encrypted or compressed NTFS files in color

It is recommended that the rest are unticked for best performance and functionality.

MOUSE

untick pointer shadow

auto default dialog button jump

pointer precision

SCREENSAVERI recommend you set the screen saver to None to prevent burn-in (permanent image imprinting)

DISABLE STARTUP PROCESSESGo to Run > msconfig and then choose the Startup tab.Examine the list and disable any items you do not want started when your computer boots e.g. ypager, iTunesHelper etc.

DISABLE SERVICESGo to Run > services.msc and then disable the following:

Sunday, March 04, 2007

This is the Pulitzer Prize winning photo taken in 1994 during the Sudan famine. It depicts a famine stricken child crawling towards a UN food camp, located a kilometre away.

The vulture is waiting for the child to die so that it can eat it. This picture shocked the whole world. No one knows what happened to the child, including Kevin Carter, the photographer, who left as soon as the photo was taken.

Three months later he committed suicide due to depression.

He said: Dear God,

I promise I will never waste my food no matter how bad it can taste and how full I may be. I pray that He will protect this little boy, guide and deliver him away from his misery. I pray that we will be more sensitive towards the world around us and not be blinded by our own selfish nature and interests.

I hope this picture will always serve as a reminder to us that how fortunate we are and that we must never ever take things for granted.

Let's make a prayer for the suffering in anywhere any place around the globe and send this friendly reminder to others. Think and look at this when you complain about your food and the food we waste daily.

Saturday, March 03, 2007

Last week, I decided to add more memory to my Dell Inspiron 1150 laptop. Its about 3 years old now and only had 256MB RAM! To be honest, I should have added more memory ages ago, but just couldn't be bothered. I only use my laptop for email and internet anyway.

I logged onto crucial.com and ordered a 1GB 200-PIN SODIMM 128Mx64 DDR PC2700 Pb-Free upgrade for my laptop. The total cost came to £68.14 (£57.99 + £10.15 tax) and it arrived the next day - I wasn't expecting such a speedy delivery!

I shut-down my computer, disconnected all cables, closed the display and turned it upside down on my desk. I slid out the battery as shown below:

I then loosened the captive screw in the memory module cover and removed it, revealing the 256MB module and an empty slot:

I unwrapped the new module and slid it into the empty slot at a 45-degree angle until it clicked into place. It required quite a bit of force.

I then closed the cover, put the battery back in and powered up.

As the computer booted, it detected the additional memory. I then went to Control Panel > System to check me new memory which was indeed 1.25GB.

Its amazing how much difference this has made! All my applications, such as Firefox and Eclipse are so much more faster and the system as a whole is much more responsive.

Subscribe to fahd.blog

Hi, I'm Fahd, a software developer at an investment bank in London. I am passionate about technology and work mainly with open source software, specialising in Java applications and Unix-based operating systems.

This blog is a place for me to share useful code snippets to solve problems that I have come across, and to write about ideas and experiences as a programmer.

All code on this blog has been written by me, unless stated otherwise, and you are free to use, share and adapt it for any purpose, under the terms of the GNU General Public License.

I love hearing back from my readers, so please feel free to leave comments! Thanks for reading and happy programming :-)