GitHunt

Asad Ali

asad82

Languages

C++92%C8%

Repos

14

Stars

41

Forks

17

Top Language

C++

Loading contributions...

Top Repositories

User-Level-Thread-Library

The program implements a user level thread library for Linux in C with pre-emption, locks, conditions, semaphores, scheduler, timers, multi-level priority queue ensuring synchronization in real world programs besides several other features making it a complete autonomous library for thread creation and management. Sample test programs utilizing the thread library are also included with the design document and code.

11C
2D-Signal-Image-Transforms

The program implements forward and inverse version of 2D Discrete Fourier Transform (FFT), Discrete Cosine Transform, Discrete Walsh-Hadamard Transform and Discrete Wavelets Transform (lifting scheme) in C/C++. The output of transforms is displayed for a given input image.

9C++
OS-Memory-Allocation-Algorithms-Simulation

The two programs included in this repository simulate the Buddy System, First Fit, Next Fit, Best Fit and Worst Fit memory allocation algorithms used in numerous operating systems. Tree data structure was used for the implementation of buddy system where as two separate doubly link lists have been used to keep the record of the holes and the memory allocated to the processes in case of First Fit, Next Fit, Best Fit and Worst Fit algorithms simulation. The buddy system is a memory allocation and management algorithm that manages memory in power of two increments. In the first fit, the approach is to allocate the first free partition or hole large enough which can accommodate the request. It finishes after finding the first suitable free partition. The best fit deals with allocating the smallest free partition which meets the requirement. This algorithm first searches the entire list of free partitions and considers the smallest hole that is adequate. Next fit is a modified version of first fit. It begins as first fit to find a free partition. When called the next time it starts searching from where it left off instead of the beginning. In case of worst fit, the approach is to locate largest available free partition so that the left over portion will be big enough to be useful again.

8C++
Lexical-Syntax-Semantic-Analyzer

Implementation of the lexical, syntax and semantic analysis stages of a typical C/C++ compiler. The program is able to read a sample C/C++ code and process and analyze the source file to find errors in it. A graphical display shows the complete details of each individual stage of the compilation process comprehensively.

8C++
LZW-Compression

Implementation of LZW Compression and decompression in C++. All types of files can be compressed

5C++
Linkedlist

A simple implementation of the Linked list in C/C++. You can build, edit, concatenate two lists, perform union,intersection operation on two lists besides being able to search, sum and move forward a node, combine into two lists into ordered list and delete elements in the list.

0C++

Repositories

14
AS
asad82/OS-Memory-Allocation-Algorithms-Simulation

The two programs included in this repository simulate the Buddy System, First Fit, Next Fit, Best Fit and Worst Fit memory allocation algorithms used in numerous operating systems. Tree data structure was used for the implementation of buddy system where as two separate doubly link lists have been used to keep the record of the holes and the memory allocated to the processes in case of First Fit, Next Fit, Best Fit and Worst Fit algorithms simulation. The buddy system is a memory allocation and management algorithm that manages memory in power of two increments. In the first fit, the approach is to allocate the first free partition or hole large enough which can accommodate the request. It finishes after finding the first suitable free partition. The best fit deals with allocating the smallest free partition which meets the requirement. This algorithm first searches the entire list of free partitions and considers the smallest hole that is adequate. Next fit is a modified version of first fit. It begins as first fit to find a free partition. When called the next time it starts searching from where it left off instead of the beginning. In case of worst fit, the approach is to locate largest available free partition so that the left over portion will be big enough to be useful again.

C++82Updated 6 years ago
bestfitbestfit-algorithmbuddyalgorithmbuddysystemfirstfitmemory-allocationmemory-managementnextfitoperating-systemworstfit
AS
asad82/User-Level-Thread-Library

The program implements a user level thread library for Linux in C with pre-emption, locks, conditions, semaphores, scheduler, timers, multi-level priority queue ensuring synchronization in real world programs besides several other features making it a complete autonomous library for thread creation and management. Sample test programs utilizing the thread library are also included with the design document and code.

C114Updated 6 years ago
ccondition-variablesembedded-systemsinterruptslightweightlightweight-oslinuxlocksmultilevel-priority-queoperating-systempreemptionround-robinround-robin-schedulerschedulersemaphoresthread-creationthread-librarytimers
AS
asad82/LZW-Compression

Implementation of LZW Compression and decompression in C++. All types of files can be compressed

C++54Updated 11 years ago
c-plus-plusdecompressionlzw-algorithmlzw-compression
AS
asad82/2D-Signal-Image-Transforms

The program implements forward and inverse version of 2D Discrete Fourier Transform (FFT), Discrete Cosine Transform, Discrete Walsh-Hadamard Transform and Discrete Wavelets Transform (lifting scheme) in C/C++. The output of transforms is displayed for a given input image.

C++94Updated 7 years ago
c-plus-plusdctdiscret-wavelet-transformdiscrete-cosine-transformdiscrete-fourier-transformdiscrete-hadamard-transformdiscrete-walsh-transformfft
AS
asad82/Lexical-Syntax-Semantic-Analyzer

Implementation of the lexical, syntax and semantic analysis stages of a typical C/C++ compiler. The program is able to read a sample C/C++ code and process and analyze the source file to find errors in it. A graphical display shows the complete details of each individual stage of the compilation process comprehensively.

C++82Updated 11 years ago
c-plus-pluscompilercompiler-designlexical-analysissemantic-analysis-stagessyntax-analysis
AS
asad82/Linkedlist

A simple implementation of the Linked list in C/C++. You can build, edit, concatenate two lists, perform union,intersection operation on two lists besides being able to search, sum and move forward a node, combine into two lists into ordered list and delete elements in the list.

C++00Updated 6 years ago
linked-listlinkedlist-concatenatelinkedlist-deletelinkedlist-insertlinkedlist-intersectionlinkedlist-mergelinkedlist-moveforwardlinkedlist-reverselinkedlist-sumlinkedlist-unionsingle-linked-list
AS
asad82/Protein-Protein-Interaction-Graph-Heuristic

The program implements a heuristic solution to detect protein complexes from large interaction networks. More simply stating the program detectes clusters (cliques) of variable density and size from large graphs which are representative of protein protein interaction data of Ecoli. The Ecoli dataset is included.

C++00Updated 6 years ago
AS
asad82/Network-Messenger

A MIRC like network messenger which allow numerous clients to connect to a server and chat and exchage files among themselves. The code is implemented in VC++ thus providing a GUI for chat among clients where as the server side interface provides information about the connected clients.

C++00Updated 6 years ago
c-plus-pluschat-applicationchat-roomclient-clientclient-serverfile-sharingmircnetwork
AS
asad82/Hashing

There are two implementations available in this folder in C/C++. First one is of Dynamic Hashing using Binary Tree with Page size at each node. The second one is of Knuth Hash Function performance evaluation using a text file as input.

C++00Updated 6 years ago
binary-search-treedynamic-hashinghashingknuth
AS
asad82/Sorting-Algorithms

Implementation of four key sorting algorithms in C/C++. The four sorting algorithms are Insertion sort, Selection sort, Shell sort and Quick Sort.

C++00Updated 6 years ago
comparisoninsertion-sortinsertionsortquicksortselectionsortshellsortsorting-algorithms
AS
asad82/Clique-Finder-Bipartite-Graph

The program finds and displays all cliques with different densities in a given bipartite graph with variable density.

C++00Updated 11 years ago
bipartite-graphsc-plus-plusclique-detectionclique-graphcliquesdensities
AS
asad82/Huffman-Compression

Implements the basic Huffman Compression and decompression algorithm in C++. All types of files can be compressed.

01Updated 11 years ago
decompression-algorithmhuffman-codinghuffman-compressionhuffman-compression-algorithmhuffman-decoder
AS
asad82/Trees

A simple implementation of Binary Tree, AVL Tree and Red Black Tree in C/C++. You can build, modify and traverse the trees.

C++00Updated 6 years ago
avl-treebinary-search-treec-plus-plusred-black-trees
AS
asad82/Zigzag-Scan

The code shows how to perform zigzag scan on a NxN matrix and is written in C++. Zigzag scanning is used in many different applications including JPEG Compression using DCT Transform.

C++00Updated 6 years ago
jpeg-compressionzigzag-scanning

Gists

Recent Activity

Asad Ali (asad82) | GitHunt