Wednesday, November 10, 2010

Combination and Integration

-CORBA "Common Object Request Broker Architecture": briefly, is a standard to make objects of different programming languages and make them communicate together if they are in the same machine or many machines.

-MPI "Message Passing Interface": is an API that would allow distributed apps to run as a single app.

-SWIG: is a tool used to interface and generate bindings of C/C++ to variety of programming languages such as Java and Python. A special tool for python is called SPI.

Tuesday, November 2, 2010

How to remove extra menu items in grub boot loader

When I have installed updates for my ubuntu linux, the kernel image also updated so I found several images of linux kernel at my machine and also many menu items at the boot loader depending on the number of versions linux kernels in my machine. This was annoying for me.
Then I prefer to have only two menu items at boot loader: one for the current version of linux and the other for windows.

Procedure:
--Write down the menu items you do not like to see in grub. At my case "Ubuntu, with Linux 2.6.32-25-generic (recovery mode)" and "Ubuntu, with Linux 2.6.32-25-generic".
--Delete the following from file /boot/grub/grub.cfg

menuentry 'Ubuntu, with Linux 2.6.32-25-generic' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,2)'
search --no-floppy --fs-uuid --set 039c3fcd-6448-4da2-9a2c-4ce29e4f7926
linux /boot/vmlinuz-2.6.32-25-generic root=UUID=039c3fcd-6448-4da2-9a2c-4ce29e4f7926 ro quiet splash
initrd /boot/initrd.img-2.6.32-25-generic
echo Abuselim
}
menuentry 'Ubuntu, with Linux 2.6.32-25-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,2)'
search --no-floppy --fs-uuid --set 039c3fcd-6448-4da2-9a2c-4ce29e4f7926
echo 'Loading Linux 2.6.32-25-generic ...'
linux /boot/vmlinuz-2.6.32-25-generic root=UUID=039c3fcd-6448-4da2-9a2c-4ce29e4f7926 ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.32-25-generic
}

3. Go to /boot and delete files with "2.6.32-25" string
4. reboot and find results ;-)

By aselims

Sunday, October 24, 2010

Stack and Heap Snippet

*Stack allocation
Image myImage;
myImage.SetAllPixels(ClearColor);

*Heap allocation
Image *imagePtr;
imagePtr = new Image();
imagePtr->SetAllPixels(ClearColor);

...

delete imagePtr;

Stack allocation: Constructor and destructor called automatically when the function is entered and exited.
Heap allocation: Constructor and destructor must be called explicitly.

Wednesday, October 20, 2010

How to know if your PC is 64 bit?

Description:
There is a processor flag called lm "long mode" means this processor is a 64-bit capable.
Procedure:
cat proc/cpuinfo
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts pni dtes64 monitor ds_cpl est tm2 ssse3 cx16 xtpr pdcm lahf_lm ida

note: Also another flag called vmx that tells this processor supports virtualization Technology for Intel processors.


Wednesday, September 22, 2010

Limited resources devices become not!!!

Break the phenomena... I am always hearing about the mobile devices or in general the devices that is used for embedded systems are all have the constraint "Limited resources". I believe this is not true any more. I can say that there is some mobile devices have a better resources than ordinary computing devices like PC.

Nvidia releases Tigra2: More than 1GHz Dual Core Processor "general purpose", Video decode/encode processors "viewing and capturing", Audio Processor "based on PortalPlayer which is existed in iPod", Image processor "stand-still capturing up to 12MP sensor", 2D/3D GPU, ARM-7 processor "for Chip Management", 32-bit 333MHz datarate LPDDR1 memory bus "resulting in 1.33GB/s of memory bandwidth"... some news tell: it is used in LG Optimus "Cheap phone around 1000LE"...WoW

Another competing alternative is POWERVR

Ref:
http://www.anandtech.com/show/2911
http://www.imgtec.com/powervr/powervr-graphics.asp

Saturday, September 18, 2010

DASH7

What is DASH7 Technology?


The DASH7 protocol is redefining wireless sensor networking and the internet of things with:

  • Multi-kilometer range and excellent penetration of walls, floors, and things made of water.
  • Extremely low power draw (measured in microwatts) and multi-year battery life
  • A maximum bitrate of 200kbps
  • Supports tag-to-tag or “multi-hop” communications, sensors, and public key encryption
  • Multi-channel architecture for real-time locating capability
  • Extremely low latency for tracking moving objects
  • Operation in the license-free and globally available 433 MHz spectrum
  • “Out of the box” interoperability using a single global frequency
  • The brand given to the ISO 18000-7 standard for active RFID
Will this Communication technology beat others? ZigBee and WiMax... who knows?

Wednesday, September 15, 2010

QA & QC

QA: is involved in the whole process and discusses improvement and development of the whole cycle to provide a product.
QC: is the process of detecting defects for the final products.