Welcome to the blog.Here we share all the modern tech related information including Android devices,Rooting, installing custom roms etc.
Linux is a free and opensource kernel based on Unix kernel. It was invented by Linus Torvalds.
Linus Torvalds had wanted to call his invention “Freax”, a portmanteau of “free”, “freak”, and “x” (as an allusion to Unix). During the start of his work on the system, some of the project’s makefiles included the name “Freax” for about half a year. Torvalds had already considered the name “Linux”, but initially dismissed it as too egotistical.
In order to facilitate development, the files were uploaded to the FTP server (ftp.funet.fi) of FUNET in September 1991. Ari Lemmke, Torvalds’ coworker at the Helsinki University of Technology (HUT), who was one of the volunteer administrators for the FTP server at the time, did not think that “Freax” was a good name. So, he named the project “Linux” on the server without consulting Torvalds.Later, however, Torvalds consented to “Linux”.
As its an opensource kernel you can view and download the source code for this kernel.
OpenMP (Open Multi-Processing) is an application programming interface (API) that supports multi-platform shared memory multiprocessing programming in C, C++, and Fortran, on most platforms, instruction set architectures and operating systems, including Solaris, AIX, HP-UX, Linux, macOS, and Windows. It consists of a set of compiler directives, library routines, and environment variables that influence run-time behaviour.
So let’s start ….
First of all you don’t install OpenMP. OpenMP is a feature of the compiler.
Requirements :
- Linux based distro / MacOS .
- Latest gcc compiler installed. (If you don’t have one don’t worry I will be explaining it later.)
Steps to follow :
- First we need to make sure we have all the latest patches installed . So open up terminal and type the following commands.
- “sudo apt-get update” and enter your root password
- “sudo apt-get upgrade”
- After executing the commands above your system will be updated with latest patches.
- GCC comes preinstalled with linux distros. If you are using arch-linux then you might need to install it.
- OpenMP support is already present in gcc versions 4.5 and above. If you want t check your gcc version just type “gcc –version” without ” ” ofc. 😛
- If you don’t have latest version of gcc installed just type in terminal “sudo apt-get install gcc”.
- If you follow these steps then you will have working gcc compiler which supports OpenMP.
Configuring OpenMP :
- In linux we don’t need any IDE to compile OpenMP programs. We have to compile with inbuilt compiler only.
- When you execute an OpenMP program, compiler automatically divides it into available number of cores.

As you can see my server has 16 threads so “Hello” is printed 16 times.
3.You can limit this with a command. Just type “export OMP_NUM_THREADS= n ” and you are good to go. Change the value of ‘n’ according to your liking.
4. I will show you one example.

I changed from 16 to 8.
5. After you are done writing program you have to compile it with OpenMP flag.
6. Just type “g++ -fopenmp program_name.cpp” to compile your program.
7. Now execute it with “./a.out”

Note :
You can get the sample programs from my git repo.
https://github.com/shubhindia/Multicore_Lab

Root..I wanna root my phone..I just rooted my phone..These are the terms which many of us hear a lot of times in our life.But have you ever thought what is rooting?? What are its pros and what are cons?? So today I am gonna tell you many things about android rooting.
So…Lets begin…
Rooting:
Rooting is the process of allowing users of smartphones, tablets and other devices running the Android mobile operating system to attain privileged control (known as root access) over various Android subsystems. As Android uses the Linux kernel, rooting an Android device gives similar access to administrative (superuser) permissions as on Linux or any other Unix-like operating system such as FreeBSD or OS X.
Rooting is often performed with the goal of overcoming limitations that carriers and hardware manufacturers put on some devices. Thus, rooting gives the ability (or permission) to alter or replace system applications and settings, run specialized applications (“apps”) that require administrator-level permissions, or perform other operations that are otherwise inaccessible to a normal Android user. On Android, rooting can also facilitate the complete removal and replacement of the device’s operating system, usually with a more recent release of its current operating system.
Advantages:
1)Support for themes, allowing everything to be visually changed from the color of the battery icon, to the boot animation that appears while the device is booting, and more.
2)Full control of the kernel, which, for example, allows overclocking and underclocking the CPU and GPU.
3)Full application control, including the ability to backup, restore, or batch edit applications, or to remove bloatware that comes pre-installed on many phones.
4)Custom automated system-level processes through the use of third-party applications.
5)Ability to install a custom firmware (also known as a custom ROM) that allows additional levels of control on a rooted device
Disadvantages:
Well every big thing comes with some cons …Here they are!!!!
1)You void your warranty when you root your device.So if you do this service center guys are not gonna accept you device for free repair
2)There is high chance of bricking your device when you do this.
3)You get superuser access to your system so you can easily delete your system which you are not supposed to do.
Methods:
Some rooting methods involve use of the command prompt and development interface called Android Debug Bridge (ADB), while other methods may use specialized applications and be as simple as clicking one button. Devices, or sometimes even different variants of the same device, can have different hardware configurations. Thus, if the guide, ROM, or root method used is for a device variant with a different hardware setup, there is a risk of bricking the device.
Varieties:
The process of rooting varies with device to device but usually includes exploiting one or more security bugs in the firmware of the device.In most of the cases this is done in sys/xbin/ and granted executable permission with chmod command.
Bootloader unlock needed.Follow this to unlock your bootloader.
1)Download latest Beta SuperSU from here .
2)Place the downloaded file into root of your sd card.
3)Reboot into recovery mode.
4)Hit install if you are using TWRP and select the Beta SuperSU and flash it.
5)It will take some time to install.
6)Not hit reboot.
Congrats…..
You have successfully rooted your device.You should see SuperSu app in your app drawer.

This is gonna void your warranty.
You are here that means you are also an enthusiast and have interest in android development.So in this tutorial I will show you how to root google nexus devices.
1)Unlocking bootloader(This is must if you want to modify your system)
So Lets Begin.
Unlocking Bootloader.
Grandmas’s Suggestion:This is gonna erase all the data on your phone including internal memory.So backup all the data first.
1)Make sure you have necessary drivers installed on yout PC.If you don’t have them download them from here.
2)Download minimal android sdk package from here.
3)Extract it on your desktop and go to platform tools folder.
4)Now turn off your device then press vol down=power button until it vibrates.When your device vibrates release those buttons and your device will boot into bootloader mode.It will look similar to this.
5)Now connect your device to pc via USB and go to platform tools folder.In that folder press shift+right click and select open command window here.just like this.
6)Now type adb devices in terminal and it will show the id of the device connected to your pc.If it dosen’t then reinstall the device drivers.

7)Now type “fastboot oem unlock” and hit enter.
8)After hitting enter look at your phone it will ask you to unlock bootloader.Scroll using volume buttons and select using power button.
9)Hit yes and sit relax.It will wipe everything and will unlock your bootloader and after your device will reboot.it will take a bit time to set up.
These are the before and after photos of Nexus 5 aka Hammerhead.
Whollla…..
You have successfully unlocked your bootloader.If you want to root your device you can follow the guide .
In this tutorial I will show you how to install custom recovery on your device.
Note:This guide is meant for unlocked bootloader only.So if your device dosen’t have it unlock it.
Let’s begin…
1)First off all download the recovery which you want to install.I prefer TWRP.You can download it here.(On twrp site they don’t mention your device name.Instead they mention your device’s codename.For example Nexus 5 is hammerhead,Mi3 is cancro etc.)
2)Boot your device into bootloader and connect it to pc.
3)Copy the downloaded recovery file into platform-tools folder and open terminal there.
4)Now type “fastboot flash recovery filenme.img” (here recovery is the partition on which your are gonna install you recovery image and filename.img is the recovery file which you have downloaded.)
5)Wait until is finishes and then type “fastboot reboot”.After this your device will reboot.
6)Now turn off your device and press vol up+power at same time until it vibrates.
7)When your device vibrates release the buttons and youe device will boot into custom recovery which you just installed.
