Vivek

Welcome to my page in Sig9.com. People tell me that I am a geek, but I'd like to think that I am mostly a computer programming enthusiast, an avid movie buff, a music lover, and an occasional dabbler in the areas of science, physics, space and philosophy.

I am a Design engineer with a Semiconductor-startup - Montalvo Systems. My research interests lie in the areas of Operating Systems, Computer Architecture, Virtualization, Programming Languages and Systems in general. I graduated from University of Kerala in 2006 with a Bachelors Degree in Computer Science and Engineering.

You can get in touch with me at vivek(at)sig9(dot)com.

My: Writings · Projects · Bookmarks

Writings

Articles I have written,

  1. FreeBSD on Bochs
  2. FreeBSD Mount Privileges
  3. Introducing (UNIX) Shell Pipes
  4. AT&T Assembly Syntax

Projects

  1. Sig9

    I co-founded this technology resource website in 2003, along with Vishnu. Sig9 is a non-profit venture providing technical blogging and writing services, and conducts programs such as IRC Talks, Quiz Competitions etc.

    http://sig9.com/blogs/vivek - my blog.

  2. Udis86 - Disassembler for x86 & x86-64

    Udis86 is an easy-to-use minimalistic disassembler library (libudis86) for the x86 and x86-64 (AMD64) range of instruction set architectures. The primary intent of the design and development of udis86 is to aid software development projects that entail binary code analysis.I started this project out of interest in the new AMD64 architecture and as an experiment in software engineering methods. The Udis86 library is rentrant, thread-safe, and has a plugin-based model.

  3. Layer2 - Multithreaded router for implementing Virtual Private Networks.

    Layer2 is a program which can sniff ethernet frames from network interface devices and transport them to another instance where it is redistributed, all based on a set of (routing+filtering) rules specified using a configuration file. Layer2 uses libpcap for packet capturing, and libnet for creating IP packets and injecting them into the network.

    layer2-beta.tar.gz (15.9 KiB)
    Note that this software is beta, tested in Linux Fedora Core 3.

  4. QVM - Object Oriented Framework for Implementing Parallel Virtual Machines.

    QVM was my 5th semester B.Tech Mini Project and reflects my inclination towards networking, distributed systems and parallel computing. The idea was to create an object-oriented framework for integrating different machines to perform distributed computation, with ideas derived from the PVM project. The source code is highly experimental, and unstable. It includes demonstrations of parallel programs such as rendering the Mandelbrot Set in ASCII.

    Paper describing QVM : qvm-paper.pdf (440 KiB), Source Code: qvm.tar.gz (36.3 KiB)

    Note: Sadly I never got the time to follow up on the project, so there is not much usage documentation.

  5. OpOS - Multithreaded Kernel.

    This is a hobby project I started way back in freshman year of college. I have been rather whimsical about it, often abandoning it to play around with other kernels, and then coming back when I get an epiphany about coding a new design. So far I have managed to implement multithreading inside the kernel. The source code is highly experimental, and may or may not compile.

    opos.tar.gz (37.8 KiB)

  6. Misc.
    • fat12.S - A FAT12 boot sector program written in AT&T assembler syntax. Use GNU as to assemble.
    • Sig9-AMS - Before Sig9.com was completely ported to Drupal CMS, it was based on a content management system written by me, in PHP/MySQL.
    • OpOS-Loader - Like any amateur OS developer I made the mistake of trying to create my own boot loader, before adopting GRUB. OpOS-Loader is how far I got.
    • HelloBoot - And this is how it all started. I wrote this small Hello World bootsector program which turned out to be something of a hit, and I became the www.planetsourcecode.com superior coding contest winner. Following this I also wrote a tiny 16-bit kernel
    • I created Sig9 Words, an instant mini-dictionary, and another categorized Word List to help me with my GRE preparations.
AttachmentSize
avatar.jpg33.48 KB