Tuesday, December 28, 2010

Howto Speed Up Your Work Using Linux Command Line Tools

See Also:

 

Using Multiple User Profiles in FireFox

See Also:


Howto Setup FireFox4 beta 8 on Linux Fedora Core 14

1) Backup your current Firefox 3 profiles
tar -cvzf $HOME/mozilla-firefox-profiles-backup.tar.gz $HOME/.mozilla/firefox/

2) Change to root user for below actions:

3) Add repositories for downloading FireFox4 for FC14:
yum --nogpgcheck install http://rpm.livna.org/livna-release.rpm http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm

## Remi Dependency on Fedora 14 ##
# These below repos didn't work out for me got error message saying system-release >=15 required for
# rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-rawhide.noarch.rpm
#rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-rawhide.noarch.rpm

## Fedora 14 ##
rpm -Uvh http://rpms.famillecollet.com/remi-release-14.rpm

Install Firefox4:
yum --enablerepo=remi list firefox4
yum --enablerepo=remi install firefox4

Create different Profile for Firefox4:
firefox --ProfileManager (Create 2 profiles "Default User" and "FF4")

Start Firefox with FF4 profile using command:
firefox4 -P FF4

Or start Firefox 3.6.x with command:
firefox -P 'Default User'

Reference:
http://www.if-not-true-then-false.com/2010/install-firefox-4-on-fedora/
http://www.fedorafaq.org/#installsoftware

Note: Found what I needed was the above steps. Got most of them from these above 2 sources. Either of them singly didn't work out for me so clubbing together the total install steps into this post

Thursday, December 23, 2010

Saturday, December 18, 2010

Study Notes RARP Protocol

Study Notes on Reverse Address Resolution Protocol:
(Reference Chapter 6: Internetworking with TCP/IP: Vol 1 Principles, Protocols and Architecture - 3rd Ed. by Douglas E. Comer)
1) RARP is used by diskless machines which can't "remember" their IP address after a boot.
    They send a physical-address (ex: ethernet NIC card's unique id) to RARP server(s) which reply back with IP address for that particular physical address.
    Note: A machine can query IP address for another machine by supplying that machine's physical address. ?? Used by subnet routers to setup routing tables for its children??

2) RARP uses only ethernet frames as it can't use IP/TCP protocols without an IP address.
    On getting hold of the IP address it uses TFTP for loading the boot image from the remote image server.

3) Request Message broadcast by QueryingMachine (to RARP server) as an Ethernet Frame:
   PREAMBLE,
   SRC-ADDR=QueryingMachine-physical-address,
   DEST-ADDR=broadcast-physical-address,
   FRAME-TYPE=RARP,
   FRAME-DATA=(REQUEST, QueryingMachine-physical-address, target-physical-address),  //227 bits (28 Octets) long frame data
   CRC
   Note:
    a) The Ethernet Frame Header may be processed only by NIC card, so the the QueryingMachine-physical-address is repeated in frame data so it's accessible to the O.S.
    b) A QueryingMachine can also ask the RARP server to lookup a target-machine's IP address by supplying the target-physical-address.
       In such a case the target-physical-address would be different from sender-physical-address. ??Could be used by subnet routers to setup routing tables for its children??

  Reference:Fig 2.8 for diagram of Ethernet Frame in Comer)
  TODO: Need to cross-check how 2 physical addresses of 48 bits (6 octets) each can fit into the 227bits (28 octet) frame data

4) Reply Message sent by RARP server to QueryingMachine as an Ethernet Frame:
   PREAMBLE,
   SRC-ADDR=RARPServer-physical-address,
   DEST-ADDR=QueryingMachine-physical-address,
   FRAME-TYPE=RARP,
   FRAME-DATA=(REPLY,QueryingMachine-physical-address, target-physical-address, target-IP-address),   // ?? Used to update a subnetting routers routing table ??
   CRC
   Note:
   RARP server sends the target-IP-address to the QueryingMachine and NOT the target machine. 
   ??Could be used by subnet routers to setup routing tables for its children??

5) RARP REQUESTs are retryed by QueryingMachine
   a) Looping at periodic intervals to avoid server overload (used for critical remote boot situations)
   b) fixed number of retries to avoid network flooding. (used in non-critical remote boot situations)

6) Flooding can occur in case of failed PrimaryServer. This is avoided as follows:
   a) REQUEST flooding by QueryingMachine is avoided by Secondary Servers replying back only on the 2nd REQUEST.
   b) REPLY flooding is avoided in case of failed Primary Server by Secondary Servers replying back with randomly differing delays of REPLY.

Friday, December 10, 2010

Compare features of different wiki software

Looking for the right wiki to build up your own hobby/group/professional wiki?

I was just looking for a small nifty wiki to use as a scratchpad to collect technical tid-bits for my work/learning. Didn't want to install/administer stuff but wanted to be able to link up the tid-bits as I found connections between them. Found good candidates Tiddlywiki/Twiki using WikiMatrix's comparison table.

Too many wikis with differing features, limitations and target audiences make it tough to decide. You can easily end up spending a lot of time/effort in installing, administering, learning to use a wiki.

WikiMatrix has a wiki comparison wizard which allows you to select a small set of options to figure out which wiki s/ws are closest to what you're looking for.
Then it creates a comparison table with filterable feature-set to view only the features you're looking for in your dream wiki.

The site also allows you to compare other things like blogs etc.

Wednesday, December 1, 2010

STUB: TechTalk: C++ : What happens during compilation?

A) Phases of compilation:
1) compiler,
Process of compilation ,
2) linker, linking, preprocessor, preprocessing, assembler, assembling,

B) Different types of Outputs
1) object-file (.o/.obj),
library(.a/.so (Linux), .lib/.dll - Windows),
static-library (.a, .lib),
dynamic-library(.so, .dll),
name-mangling

G++:
shared-object-file, --save-temps

VC++:
release/debug,
multi/single threaded,
dll,
importlibrary,
.defs file,
export/import symbols

Linux KVM Kernel Virtual Machine

Linux KVM: Linux Kernel Virtual Machine
apt-get install -y kvm libvirt-bin ubuntu-vm-builder qemu bridge-utils
apt-get install -y ubuntu-virt-server ubuntu-virt-mgmt #KVM server utils and management GUI

Reviews of Classic Technical Books

[Book Reviews]

Technical:
Apprenticeship Patterns - Guidance for the aspiring software craftsman
Code Reading : The Open Source Perspective
Why Programs Fail by Andreas Zeller

Mash-ups:
Hacking FireFox : More than 150 hacks, mods and customizations

Problem Solving:
How to Solve It by G. Polya
How to Solve It by Computer by Dromey
Lateral Thinking by Edward De Bono

Soft Skills:
How to Win Friends and Influence People by Dale Carnegie

BookReading:
How To Choose Books
Why Read Books