Aditya Chatterjee's Blog, page 122

January 27, 2022

Disassembly

Disassembly involves recreating assembly code from binary machine code. In this article we discuss concepts surrounding disassembly and a basic algorithm used for disassembly.

Table of contents.Introduction.Instructions and data.Disassembly with indirection.Disassembly with relocation.Summary.References.Prerequisite.Assembler, Linker and LoaderIntroduction.

Assemblers are simpler compared to compilers as their only function is to translate assembly code to binary machine code via a ...

 •  0 comments  •  flag
Share on Twitter
Published on January 27, 2022 15:12

Assembler, Linker and Loader

In this article, we discuss the tasks of an assembler, linker and loader. We also discuss the design issues faced by both assemblers and linkers.

Table of contents.Introduction.The workings of an assembler.Design issues: Assembler.Design issues: Linker.Summary.References.Introduction.

An assembler is responsible for converting source code into target code and therefore just like the compiler, an assembler will have stages such as lexical analysis, management of the symbol table and back...

 •  0 comments  •  flag
Share on Twitter
Published on January 27, 2022 14:50

Three address code

Three address code is generated by a compiler for code optimization, it uses a maximum of three addresses to represent any statement. In this article we discuss it.

Table of contents.Introduction.Addresses and instructions.An implementation using quadruples.An implementation using triples.Static single assignment (SSA) form.Summary.References.Introduction.

Three address code is an intermediate code used by optimizing compilers whereby a given expression is broken down into several sepa...

 •  0 comments  •  flag
Share on Twitter
Published on January 27, 2022 14:43

January 26, 2022

Map Overlay Problem

In this article, we will be exploring the Map Overlay Problem which is a core problem in Computational Geometry. We have explored simple variants of Map Overlay Problem.

Table of contents:

Geographic Information SystemMap Overlay ProblemPoint in PolygonLine on LineLine in PolygonPolygon in PolygonLine SegmentsPlane Sweep TechniqueApplications of Map OverlayConclusion

Before we discuss that we shall discuss what is (GIS) Geographic Information System.

Geographic Information System

In a...

 •  0 comments  •  flag
Share on Twitter
Published on January 26, 2022 17:12

Redundant arrays of independent disks (RAID)

In this article, we have covered what are Redundant arrays of independent disks and the commonly used RAID levels. This is an important topic in Memory management / storage in System Design.

Table of contents:

Introduction to Redundant arrays of independent disks (RAID)Levels of RAIDRAID 0 - StripingRAID 1 - MirroringRAID 5 - Striping with parityRAID 6 - Striping with double parityRAID 10 -Mirroring + StripingIntroduction to Redundant arrays of independent disks (RAID)

RAID is an acr...

 •  0 comments  •  flag
Share on Twitter
Published on January 26, 2022 16:34

Initializing Tensors in TensorFlow

In this article, we have explored the idea of Tensors in TensorFlow, different types of tensor and how to initialize and use them.

Table of contents:

IntroductionTensors in tensorflowProperties of TensorsDifferent types of Tensors in TensorFlowVariableConstantPlaceholderSparseholderConclusion

Pre-requisite:

Key ideas in TensorFlowIntroduction

Earlier on, Artificial Intelligence(A.I) algorithms and models were built from scratch, with hundreds of thousands of lines of code which t...

 •  0 comments  •  flag
Share on Twitter
Published on January 26, 2022 16:15

Circular Doubly Linked List

In this article, we have explored Circular Doubly Linked List and operations that can be performed on it. It is a combination to two Data Structures namely Circular Linked List and Doubly Linked List.

Table of contents:

Introduction to Circular Doubly Linked ListInsertion at the beginningInsertion at the endInsertion at a given positionDeletion at the beginningDeletion at the endDeletion at a given positionTraverseSearchApplications

Pre-requisites:

Circular Linked ListDoubly Linked ...
 •  0 comments  •  flag
Share on Twitter
Published on January 26, 2022 08:53

Distributed Operating System

In this article, we have explored the idea of Distributed Operating System in depth along with internal working details, different types and examples.

Table of contents:

Introduction to Distributed Operating SystemFunctioning of Distributed Operating SystemsArchitecture of Distributed Operating SystemTypes of Distributed Operating SystemExamples of Distributed Operating SystemsCharacteristics of Distributed Operating SystemApplications of Distributed Operating SystemsDifferences between ...
 •  0 comments  •  flag
Share on Twitter
Published on January 26, 2022 08:32

Different types of File System

In this article, we have explored the Different types of File Systems such as Distributed File System, Flash File System and much more with examples of each type and how they are used in real applications.

Table of contents:

Introduction to File SystemVarious File System TypesDisk file systemsFlash File SystemRecord-Oriented File SystemsShared-Disk File SystemDistributed File SystemsDistributed fault-tolerant file systemsDistributed parallel file systemsDistributed parallel fault-toler...
 •  0 comments  •  flag
Share on Twitter
Published on January 26, 2022 08:19

Linux threads: Creation, Data passing, Waiting

A thread is the basic unit of processor utilization that consists of a program counter, stack and registers. In this article we discuss how they are created, how data is passed between threads, waiting in threads and attributes.

Table of contents.Introduction.Creating threads.Passing data.Waiting in threads.Attributes.Summary.References.Prerequisites.Linux processes: listing, creation, schedulingLinux processes: signals, termination, zombies, cleanupLinux threads: cancellation, dat...
 •  0 comments  •  flag
Share on Twitter
Published on January 26, 2022 07:36