Category Archives: GBlog

Simple Multithreaded Download Manager in Python

Introduction A Download Manager is basically a computer program dedicated to the task of downloading stand alone files from internet. Here, we are going to create a simple Download Manager with the help of threads in Python. Using multi-threading a file can be downloaded in the form of chunks simultaneously from different threads. To implement… Read More »

Linux Virtualization : Linux Containers (lxc)

Pre-requisites: Earlier i talked about chroot jails and resource throttling using cgroups. If you haven’t read them yet, then i strongly suggest to go through them before proceeding ahead. A vety good presentation by docker team. This will refresh some of the concepts learned above. This video acts as the bridge between this article… Read More »

Linux Virtualization : Resource throttling using cgroups

Earlier i talked about namespaces in kernels and jailing process in this article. To understand this article, you may not require to finish the one mentioned above. But i would strongly suggest to go through it once before diving into resource throttling, as this would help tremendously in the understanding of what is going on.… Read More »

Getting started with Classification

Introduction As the name suggests, Classification is the task of “classifying things” into sub-categories.But, by a machine! If that doesn’t sound like much, imagine your computer being able to differentiate between you and a stranger. Between a potato and a tomato. Between an A grade and a F- . Yeah. It sounds interesting now! In… Read More »

Linux Virtualization – Chroot Jail

What is a chroot Jail? A chroot on Unix operating systems is an operation that changes the apparent root directory for the current running process and its children. The programs that run in this modified environment cannot access the files outside the designated directory tree. This essentially limits their access to a directory tree and… Read More »

Mark-and-Sweep: Garbage Collection Algorithm

Background All the objects which are created dynamically (using new in C++ and Java) are allocated memory in the heap. If we go on creating objects we might get Out Of Memory error, since it is not possible to allocate heap memory to objects. So we need to clear heap memory by releasing memory for… Read More »

Creating a PortScanner in C

Picture a bay where lots of private boats are docked. The location is called a seaport, literally a port at or on the sea. Everyone wanting to dock there, requesting landing services uses the same port. Seaports work with berth numbers assigned to individual boats. The port name and the berth number combine into the… Read More »

Creating a Proxy Webserver in Python | Set 2

Prerequisite: Creating a Proxy Webserver in Python – Set1 In this tutorial,  few interesting features are added to make it more useful. Add blacklisting of domains. For Ex., Create a list of BLACKLIST_DOMAINS in our configuration dict. For now, just ignore/drop the requests received for blacklisted domains. (Ideally we must respond with a… Read More »

OpenCV C++ Program to blur a Video

The following is the explanation to the C++ code to blur a video in C++ using the tool OpenCV. Things to know: (1) The code will only compile in Linux environment. (2) To run in windows, please use the file: ‘blur_video.o’ and run it in cmd. However if it does not run(problem in system architecture) then… Read More »