<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>EmbLogic &#187; Nishant</title>
	<atom:link href="https://www.emblogic.com/blog/author/nishant/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.emblogic.com/blog</link>
	<description>Embedded System and ARM Training</description>
	<lastBuildDate>Tue, 03 Mar 2020 13:00:06 +0000</lastBuildDate>
	<language>en-US</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.9.1</generator>
	<item>
		<title>Memory-Mapped I/O v/s Port-Mapped I/O</title>
		<link>https://www.emblogic.com/blog/03/memory-mapped-io-vs-port-mapped-io/</link>
		<comments>https://www.emblogic.com/blog/03/memory-mapped-io-vs-port-mapped-io/#comments</comments>
		<pubDate>Mon, 03 Mar 2014 07:08:44 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Parallel Port Driver]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=8797</guid>
		<description><![CDATA[Memory-mapped I/O (MMIO) and port-mapped I/O (PMIO) (which is also called isolated I/O) are two complementary methods of performing input/output between the CPU and peripheral devices in a computer. An alternative approach is using dedicated I/O processors—commonly known as channels &#8230; <a href="https://www.emblogic.com/blog/03/memory-mapped-io-vs-port-mapped-io/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Memory-mapped I/O (MMIO) and port-mapped I/O (PMIO) (which is also called isolated I/O) are two complementary methods of performing input/output between the CPU and peripheral devices in a computer. An alternative approach is using dedicated I/O processors—commonly known as channels on mainframe computers—that execute their own instructions.</p>
<p><strong>Memory-Mapped I/O:- </strong>Memory-mapped I/O (not to be confused with memory-mapped file I/O) uses the same address bus to address both memory and I/O devices – the memory and registers of the I/O devices are mapped to (associated with) address values. So when an address is accessed by the CPU, it may refer to a portion of physical RAM, but it can also refer to memory of the I/O device. Thus, the CPU instructions used to access the memory can also be used for accessing devices. Each I/O device monitors the CPU&#8217;s address bus and responds to any CPU access of an address assigned to that device, connecting the data bus to the desired device&#8217;s hardware register. To accommodate the I/O devices, areas of the addresses used by the CPU must be reserved for I/O and must not be available for normal physical memory. The reservation might be temporary—the Commodore 64 could bank switch between its I/O devices and regular memory—or permanent.</p>
<p><strong>Port-Mapped I/O:-</strong> Port-mapped I/O often uses a special class of CPU instructions specifically for performing I/O. This is found on Intel microprocessors, with the IN and OUT instructions. These instructions can read and write one to four bytes (outb, outw, outl) to an I/O device. I/O devices have a separate address space from general memory, either accomplished by an extra &#8220;I/O&#8221; pin on the CPU&#8217;s physical interface, or an entire bus dedicated to I/O. Because the address space for I/O is isolated from that for main memory, this is sometimes referred to as isolated I/O.</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/03/memory-mapped-io-vs-port-mapped-io/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Multitasking and Process Management</title>
		<link>https://www.emblogic.com/blog/02/multitasking-and-process-management/</link>
		<comments>https://www.emblogic.com/blog/02/multitasking-and-process-management/#comments</comments>
		<pubDate>Sat, 22 Feb 2014 11:33:40 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=8495</guid>
		<description><![CDATA[Any application that runs on a Linux system is assigned a process ID or PID. This is a numerical representation of the instance of the application on the system. It is used by the system administrator who may have to &#8230; <a href="https://www.emblogic.com/blog/02/multitasking-and-process-management/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Any application that runs on a Linux system is assigned a process ID or PID. This is a numerical representation of the instance of the application on the system. It is used by the system administrator who may have to debug or terminate processes by referencing the PID. Process Management is the series of tasks a System Administrator completes to monitor, manage, and maintain instances of running applications. Multitasking Process Management beings with an understanding concept of Multitasking. Linux is what is referred to as a preemptive multitasking operating system. Preemptive multitasking systems rely on a scheduler. The function of the scheduler is to control the process that is currently using the CPU. so there is parent process and child process. The process which creates another process is called parent process and latter is called child process. And each process has its own PID i.e. process identity number to distinguish the child from the parent. To get these process IDs, we use following functions a) getpid() // to get the current process id b) getppid() // to get the creator/ parent process id There are three methods of creating a process: a) Create a process with the use of loader from file system. b) Create a process from the code segment of the current program using system call c) Duplication of the program To create a process using this method (Duplicate) is done by using “fork()” fork function is a special function use to create a child process from a parent process. Using fork(), child process shares the code segment of its parent but both processes have different physical address. After completion of the child process, child process returns its control to parent and the parent process returns its control to the shell. child PID= parent PID + 1 PPID of child = PID of parent fork() function returns three values a) 0 (zero) : if the process is executed by child b) +ve value : means child is created and +ve value is child’s PID c) -ve value : ERROR…! i.e. child process is not created and we can use these values to know which process is executing.</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/02/multitasking-and-process-management/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introduction to Character Device Drivers and Kernel Symbol Table</title>
		<link>https://www.emblogic.com/blog/02/introduction-to-character-device-drivers-and-kernel-symbol-table/</link>
		<comments>https://www.emblogic.com/blog/02/introduction-to-character-device-drivers-and-kernel-symbol-table/#comments</comments>
		<pubDate>Tue, 11 Feb 2014 11:13:36 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=8290</guid>
		<description><![CDATA[Character Device Drivers:- Character special files or character devices relate to devices through which the system transmits data one character at a time by, for example, getchar. These device nodes often serve for stream communication with devices such as mice, &#8230; <a href="https://www.emblogic.com/blog/02/introduction-to-character-device-drivers-and-kernel-symbol-table/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><em><em>Character Device Drivers</em>:-</em></p>
<p><em>Character special files</em> or <em>character devices</em> relate to devices through which the system transmits data one character at a time by, for example, <strong>getchar</strong>. These device nodes often serve for stream communication with devices such as mice, keyboards, virtual terminals, and serial modems, and usually do not support random access to data.</p>
<p>In most implementations, character devices use unbuffered input and output routines. The system reads each character from the device immediately or writes each character to the device immediately.</p>
<p>There are two major ways for a kernel module to talk to processes. One is through device files (like the files in the <tt>/dev</tt> directory), the other is to use the proc file system. Since one of the major reasons to write something in the kernel is to support some kind of hardware device, we’ll begin with device files.</p>
<p>The original purpose of device files is to allow processes to communicate with device drivers in the kernel, and through them with physical devices (modems, terminals, etc.). The way this is implemented is the following.</p>
<p>Each device driver, which is responsible for some type of hardware, is assigned its own major number. The list of drivers and their major numbers is available in <tt>/proc/devices</tt>. Each physical device managed by a device driver is assigned a minor number. The <tt>/dev</tt> directory is supposed to include a special file, called a device file, for each of those devices, whether or not it’s really installed on the system.</p>
<p>Kernel Symbol Table:-</p>
<div>
<p>In programming language, a symbol is either a variable or a function. Or more generally, we can say, a symbol is a name representing an space in the memory, which stores data (variable, for reading and writing) or instructions (function, for executing). To make life easier for cooperation among various kernel function unit, there are thousands of global symbols in Linux kernel.</p>
<p>In general,when we have to use some variable or function outside the scope we use EXTERN or Declare globally similarly in kernel space we use symbol table .Once we EXPORT a module to symbol table it become a part of kernel .On that kernel any user can import that module .The table contains the addresses of global kernel items—functions and variables—that are needed to implement modularized drivers. When a module is loaded, any symbol exported by the module becomes part of the kernel symbol table.you can stack new modules on top of other modules. Module stacking is implemented in the mainstream kernel sources as well.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/02/introduction-to-character-device-drivers-and-kernel-symbol-table/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Character Device Driver</title>
		<link>https://www.emblogic.com/blog/01/character-device-driver-7/</link>
		<comments>https://www.emblogic.com/blog/01/character-device-driver-7/#comments</comments>
		<pubDate>Thu, 09 Jan 2014 11:04:30 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=8061</guid>
		<description><![CDATA[Implemented the following: 1.Set-up Scull for multiple devices. 2.Export a self made function to symbol table of kernel, and use the function in some other file. Log file for init.c: head    1.4; access; symbols; locks root:1.4; strict; comment    @ * &#8230; <a href="https://www.emblogic.com/blog/01/character-device-driver-7/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Implemented the following:</p>
<p>1.Set-up Scull for multiple devices.</p>
<p>2.Export a self made function to symbol table of kernel, and use the function in some other file.</p>
<p>Log file for init.c:</p>
<p>head    1.4;<br />
access;<br />
symbols;<br />
locks<br />
root:1.4; strict;<br />
comment    @ * @;</p>
<p>1.4<br />
date    2014.01.09.11.07.19;    author root;    state Exp;<br />
branches;<br />
next    1.3;</p>
<p>1.3<br />
date    2014.01.06.15.38.44;    author root;    state Exp;<br />
branches;<br />
next    1.2;</p>
<p>1.2<br />
date    2014.01.06.14.16.20;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2014.01.06.13.06.31;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is the source file of initialization file of driver initialization by new mechanism.<br />
@</p>
<p>1.4<br />
log<br />
@Setup scull for multiple devices and export a function in symbol table by using EXPORT_SYMBOL.<br />
@</p>
<p>Log file for exit.c:</p>
<p>head    1.3;<br />
access;<br />
symbols;<br />
locks<br />
root:1.3; strict;<br />
comment    @ * @;</p>
<p>1.3<br />
date    2014.01.06.15.41.04;    author root;    state Exp;<br />
branches;<br />
next    1.2;</p>
<p>1.2<br />
date    2014.01.06.14.20.34;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2014.01.06.13.07.52;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is the source file of exit file of driver initialization by new mechanism.<br />
@</p>
<p>1.3<br />
log<br />
@After allocating the memory and adding the cdev to device table, remove the cdev from device table using cdev_del and deallocate the memory too and unregister the driver.<br />
@</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/01/character-device-driver-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Character Device Drivers.</title>
		<link>https://www.emblogic.com/blog/01/character-device-drivers/</link>
		<comments>https://www.emblogic.com/blog/01/character-device-drivers/#comments</comments>
		<pubDate>Mon, 06 Jan 2014 10:27:04 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=8024</guid>
		<description><![CDATA[Implemented the following: 1.Register the driver by using the new mechanism, allocate the memory and initialise and add the cdev to device table. 2.After registration, allocation, and adding the cdev to device table, delete the cdev form device table, deallocate &#8230; <a href="https://www.emblogic.com/blog/01/character-device-drivers/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Implemented the following:</p>
<p>1.Register the driver by using the new mechanism, allocate the memory and initialise and add the cdev to device table.</p>
<p>2.After registration, allocation, and adding the cdev to device table, delete the cdev form device table, deallocate the memory and unregister the driver.</p>
<p>Log file for init.c:</p>
<p>head    1.3;<br />
access;<br />
symbols;<br />
locks<br />
root:1.3; strict;<br />
comment    @ * @;</p>
<p>1.3<br />
date    2014.01.06.15.38.44;    author root;    state Exp;<br />
branches;<br />
next    1.2;</p>
<p>1.2<br />
date    2014.01.06.14.16.20;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2014.01.06.13.06.31;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is the source file of initialization file of driver initialization by new mechanism.<br />
@</p>
<p>1.3<br />
log<br />
@After register the driver and allocating the memory, initialize the cdev structure and add cdev to device table using cdev_init and cdev_add respectively.<br />
@<br />
1.2<br />
log<br />
@After registering the driver, allocate the memory using kmalloc by representing a structure in driver called ScullDev.<br />
@</p>
<p>Log file for exit.c:</p>
<p>head    1.3;<br />
access;<br />
symbols;<br />
locks; strict;<br />
comment    @ * @;</p>
<p>1.3<br />
date    2014.01.06.15.41.04;    author root;    state Exp;<br />
branches;<br />
next    1.2;</p>
<p>1.2<br />
date    2014.01.06.14.20.34;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2014.01.06.13.07.52;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is the source file of exit file of driver initialization by new mechanism.<br />
@</p>
<p>1.3<br />
log<br />
@After allocating the memory and adding the cdev to device table, remove the cdev from device table using cdev_del and deallocate the memory too and unregister the driver.<br />
@<br />
1.2<br />
log<br />
@After registering and allocating the size to driver, deallocate and unregister the driver.<br />
@</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/01/character-device-drivers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Character Driver.</title>
		<link>https://www.emblogic.com/blog/01/character-driver-22/</link>
		<comments>https://www.emblogic.com/blog/01/character-driver-22/#comments</comments>
		<pubDate>Sat, 04 Jan 2014 11:13:49 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=8004</guid>
		<description><![CDATA[Implemented the insertion and registration of basic device driver. Log file for initialization: head    1.2; access; symbols; locks root:1.2; strict; comment    @ * @; 1.2 date    2014.01.04.16.35.51;    author root;    state Exp; branches; next    1.1; 1.1 date    2014.01.04.16.04.11;    author root;    state &#8230; <a href="https://www.emblogic.com/blog/01/character-driver-22/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Implemented the insertion and registration of basic device driver.</p>
<p>Log file for initialization:</p>
<p>head    1.2;<br />
access;<br />
symbols;<br />
locks<br />
root:1.2; strict;<br />
comment    @ * @;</p>
<p>1.2<br />
date    2014.01.04.16.35.51;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2014.01.04.16.04.11;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This file contains source code for initialization of drivers while we insert our driver to kernel.<br />
@</p>
<p>1.2<br />
log<br />
@The error are removed for initialisation file and the registration of simple driver is implemented.<br />
@</p>
<p>Log file for clean_up:</p>
<p>head    1.2;<br />
access;<br />
symbols;<br />
locks<br />
root:1.2; strict;<br />
comment    @ * @;</p>
<p>1.2<br />
date    2014.01.04.16.37.11;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2014.01.04.16.06.00;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This file contains source code for cleanup  of drivers while we insert our driver to kernel.<br />
@</p>
<p>1.2<br />
log<br />
@The error are removed for exit file and the registration of simple driver is implemented.<br />
@</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/01/character-driver-22/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FTP, client-server by socket.</title>
		<link>https://www.emblogic.com/blog/12/ftp-client-server-by-socket/</link>
		<comments>https://www.emblogic.com/blog/12/ftp-client-server-by-socket/#comments</comments>
		<pubDate>Mon, 30 Dec 2013 11:07:26 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7963</guid>
		<description><![CDATA[Client-server using socket(AF_INET) implemented. Also FTP, client-server netwroking based project implemented successfully. Log file for server: head    1.2; access; symbols; locks root:1.2; strict; comment    @ * @; 1.2 date    2013.12.30.10.38.40;    author root;    state Exp; branches; next    1.1; 1.1 date    2013.12.30.10.35.58;    &#8230; <a href="https://www.emblogic.com/blog/12/ftp-client-server-by-socket/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Client-server using socket(AF_INET) implemented. Also FTP, client-server netwroking based project implemented successfully.</p>
<p>Log file for server:</p>
<p>head    1.2;<br />
access;<br />
symbols;<br />
locks<br />
root:1.2; strict;<br />
comment    @ * @;</p>
<p>1.2<br />
date    2013.12.30.10.38.40;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2013.12.30.10.35.58;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is the soruce code file for server file for FTP, client server using sockets(domain AF_INET).<br />
@</p>
<p>1.2<br />
log<br />
@The error are removed from server file and FTP, client server using socket implemented successfully.<br />
@</p>
<p>____________________________________________________________________________________</p>
<p>Log file for client:</p>
<p>head    1.2;<br />
access;<br />
symbols;<br />
locks<br />
root:1.2; strict;<br />
comment    @ * @;</p>
<p>1.2<br />
date    2013.12.30.10.38.40;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2013.12.30.10.35.58;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is the soruce code file for server file for FTP, client server using sockets(domain AF_INET).<br />
@</p>
<p>1.2<br />
log<br />
@The error are removed from server file and FTP, client server using socket implemented successfully.<br />
@</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/12/ftp-client-server-by-socket/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Socket client server.</title>
		<link>https://www.emblogic.com/blog/12/socket-client-server/</link>
		<comments>https://www.emblogic.com/blog/12/socket-client-server/#comments</comments>
		<pubDate>Sun, 29 Dec 2013 08:23:17 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7871</guid>
		<description><![CDATA[Implemented socket client server program for AN_UNIX domain. Log file for server: head    1.2; access; symbols; locks root:1.2; strict; comment    @ * @; 1.2 date    2013.12.29.08.15.37;    author root;    state Exp; branches; next    1.1; 1.1 date    2013.12.29.08.12.40;    author root;    state Exp; &#8230; <a href="https://www.emblogic.com/blog/12/socket-client-server/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Implemented socket client server program for AN_UNIX domain.</p>
<p>Log file for server:</p>
<p>head    1.2;<br />
access;<br />
symbols;<br />
locks<br />
root:1.2; strict;<br />
comment    @ * @;</p>
<p>1.2<br />
date    2013.12.29.08.15.37;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2013.12.29.08.12.40;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is source code of socket server program.<br />
@</p>
<p>1.2<br />
log<br />
@The errors in socket server are removed and the server works perfectly.<br />
@</p>
<p>__________________________________________________________________</p>
<p>Log file for client:</p>
<p>head    1.2;<br />
access;<br />
symbols;<br />
locks<br />
root:1.2; strict;<br />
comment    @ * @;</p>
<p>1.2<br />
date    2013.12.29.08.15.01;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2013.12.29.08.13.19;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is source code of socket client program.<br />
@</p>
<p>1.2<br />
log<br />
@The errors are removed and the client works perfectly.<br />
@</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/12/socket-client-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Threads in IPC.</title>
		<link>https://www.emblogic.com/blog/12/threads-in-ipc/</link>
		<comments>https://www.emblogic.com/blog/12/threads-in-ipc/#comments</comments>
		<pubDate>Sat, 28 Dec 2013 12:04:50 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7858</guid>
		<description><![CDATA[Implemented the threads in Inter Process Communication. Individual thread create for each requesting client in server. Log file for server: head    1.2; access; symbols; locks root:1.2; strict; comment    @ * @; 1.2 date    2013.12.28.11.57.21;    author root;    state Exp; branches; next   &#8230; <a href="https://www.emblogic.com/blog/12/threads-in-ipc/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Implemented the threads in Inter Process Communication. Individual thread create for each requesting client in server.</p>
<p>Log file for server:</p>
<p>head    1.2;<br />
access;<br />
symbols;<br />
locks<br />
root:1.2; strict;<br />
comment    @ * @;</p>
<p>1.2<br />
date    2013.12.28.11.57.21;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2013.12.28.11.12.38;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is the source code file of server with thread created for each request.<br />
@</p>
<p>1.2<br />
log<br />
@final source code after debugging.<br />
@</p>
<p>Log file for requesting client:</p>
<p>head    1.2;<br />
access;<br />
symbols;<br />
locks<br />
root:1.2; strict;<br />
comment    @ * @;</p>
<p>1.2<br />
date    2013.12.28.12.01.54;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2013.12.28.11.14.02;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is the source code file for requesting client for which the server create a thread.<br />
@</p>
<p>1.2<br />
log<br />
@The source code for requesting client debugged.<br />
@</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/12/threads-in-ipc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IPC based project</title>
		<link>https://www.emblogic.com/blog/12/ipc-based-project/</link>
		<comments>https://www.emblogic.com/blog/12/ipc-based-project/#comments</comments>
		<pubDate>Thu, 26 Dec 2013 17:34:16 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7848</guid>
		<description><![CDATA[Implemented client server Inter process communication using shared memory.]]></description>
				<content:encoded><![CDATA[<p>Implemented client server Inter process communication using shared memory.</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/12/ipc-based-project/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IPC using mesaage queues.</title>
		<link>https://www.emblogic.com/blog/12/ipc-using-mesaage-queues/</link>
		<comments>https://www.emblogic.com/blog/12/ipc-using-mesaage-queues/#comments</comments>
		<pubDate>Tue, 24 Dec 2013 10:24:43 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7828</guid>
		<description><![CDATA[Implemented the Inter process communication using message queues and the project is completed for 3 requesting and 3 processing clients. Log file of Server: head    1.2; access; symbols; locks root:1.2; strict; comment    @ * @; 1.2 date    2013.12.24.10.09.27;    author root;   &#8230; <a href="https://www.emblogic.com/blog/12/ipc-using-mesaage-queues/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Implemented the Inter process communication using message queues and the project is completed for 3 requesting and 3 processing clients.</p>
<p>Log file of Server:</p>
<p>head    1.2;<br />
access;<br />
symbols;<br />
locks<br />
root:1.2; strict;<br />
comment    @ * @;</p>
<p>1.2<br />
date    2013.12.24.10.09.27;    author root;    state Exp;<br />
branches;<br />
next    1.1;</p>
<p>1.1<br />
date    2013.12.24.09.32.25;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is the main server source file for client server project using message queue.<br />
@</p>
<p>1.2<br />
log<br />
@This is the final source code of server.<br />
change the value of msg_id of msg_st.<br />
@</p>
<p>Log file of requesting clients:</p>
<p>head    1.1;<br />
access;<br />
symbols;<br />
locks<br />
root:1.1; strict;<br />
comment    @ * @;</p>
<p>1.1<br />
date    2013.12.24.09.38.26;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is the request client for addition.<br />
@</p>
<p>1.1<br />
log<br />
@Initial revision<br />
@</p>
<p>head    1.1;<br />
access;<br />
symbols;<br />
locks<br />
root:1.1; strict;<br />
comment    @ * @;</p>
<p>1.1<br />
date    2013.12.24.10.07.13;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is source code of requesting client for multiplication.<br />
@</p>
<p>1.1<br />
log<br />
@Initial revision<br />
@</p>
<p>head    1.1;<br />
access;<br />
symbols;<br />
locks<br />
root:1.1; strict;<br />
comment    @ * @;</p>
<p>1.1<br />
date    2013.12.24.10.06.30;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is the source code of requesting client for substration.<br />
@</p>
<p>1.1<br />
log<br />
@Initial revision<br />
@</p>
<p>Log file for processing client:</p>
<p>head    1.1;<br />
access;<br />
symbols;<br />
locks<br />
root:1.1; strict;<br />
comment    @ * @;</p>
<p>1.1<br />
date    2013.12.24.09.54.10;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is the source code of processing client for addition.<br />
@</p>
<p>1.1<br />
log<br />
@Initial revision<br />
@</p>
<p>head    1.1;<br />
access;<br />
symbols;<br />
locks<br />
root:1.1; strict;<br />
comment    @ * @;</p>
<p>1.1<br />
date    2013.12.24.10.09.14;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is source code of processing client for multiplcation.<br />
@</p>
<p>1.1<br />
log<br />
@Initial revision<br />
@</p>
<p>head    1.1;<br />
access;<br />
symbols;<br />
locks<br />
root:1.1; strict;<br />
comment    @ * @;</p>
<p>1.1<br />
date    2013.12.24.10.08.22;    author root;    state Exp;<br />
branches;<br />
next    ;</p>
<p>desc<br />
@This is source code of processing client for substraction.<br />
@</p>
<p>1.1<br />
log<br />
@Initial revision<br />
@</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/12/ipc-using-mesaage-queues/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Client Server setup using Pipes&#8230;.</title>
		<link>https://www.emblogic.com/blog/12/client-server-setup-using-pipes/</link>
		<comments>https://www.emblogic.com/blog/12/client-server-setup-using-pipes/#comments</comments>
		<pubDate>Fri, 20 Dec 2013 11:38:23 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7795</guid>
		<description><![CDATA[For making a client server set up, you need to know how a child process create by parent process. A parent process makes a child process by using fork() system call. Fork (system call):- fork is an operation whereby a &#8230; <a href="https://www.emblogic.com/blog/12/client-server-setup-using-pipes/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>For making a client server set up, you need to know how a child process create by parent process. A parent process makes a child process by using fork() system call.</p>
<p><strong>Fork (system call):-</strong></p>
<p><strong>fork</strong> is an operation whereby a process creates a copy of itself. It is usually a system call, implemented in the kernal. Fork is the primary (and historically, only) method of process creation on Unix-like operating systems.<strong>fork</strong>() creates a new process by duplicating the calling process. The new process, referred to as the <em>child</em>, is an exact duplicate of the calling process, referred to as the <em>parent</em>. Fork() system call makes a child process and return child&#8217;s pid(pid means unique process id).</p>
<p>Now next you have to make pipe between the client and server for communication between them.</p>
<h3>Pipes:-</h3>
<h3>A pipe is medium to communicate between processes which have something common between them. A pipe is created by pipe(int arr[2]) whose argument is an integer type of array which stores 2 descriptors(one for read and one for write). Data can be write and read from pipe through these descriptors.</h3>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/12/client-server-setup-using-pipes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C Programming</title>
		<link>https://www.emblogic.com/blog/12/c-programming-2/</link>
		<comments>https://www.emblogic.com/blog/12/c-programming-2/#comments</comments>
		<pubDate>Thu, 05 Dec 2013 11:32:17 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7612</guid>
		<description><![CDATA[A C programming based Project C language is the general purpose programming language developed by Dennis Ritchie. C language is the base of many other languages like C#, Java, Python, Perl, PHP. C has facilities like structure programming, functional programming. &#8230; <a href="https://www.emblogic.com/blog/12/c-programming-2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>A C programming based Project C language is the general purpose programming language developed by Dennis Ritchie. C language is the base of many other languages like C#, Java, Python, Perl, PHP. C has facilities like structure programming, functional programming. There are some standard made for C programming. C also allows the most precise control of input and output. There is a project name by Multiple Data Compression using iterative techniques. While working on this project i implemented all my knowledge regarding C language.</p>
<p>“Multiple Data Compression and Encryption using Iterative techniques”. The basic concept of this project is to compress a text file and encrypt it so that unauthorized person cannot understand it. This project compress a text file and reduce the size of the text file. While making the source code for this program I implement all the concept of C language and project management tools.</p>
<p>In C Programming based Project I started with basic of C programming that is how a code or source file is compiled by gcc compiler and then how it will run. After that i learn in C language is their data types, ranges of various data types, how they will access in the program, libraries used in C program, how to write a simple program in C. After the basic knowledge of C programming, I studied about the operator used in C programming. How to use control structure like conditional statements (if, if-else, nested if, switch) and then looping statement (for, while, do-while). Then I studied array that is collection of elements of same data types in contiguous memory allocation and string that is collection of character ending with a null character (”). Then I started with pointers which stores address of a variable. I implement various program which clears my concept of pointer and reference because it is most important thing in C programming. After the pointer I studied structure that is the collection of variable of different data types in contiguous memory location. By using structure I implement link list, stacks, queues and circular queues. After the structure I studied file IO that is used to open a file and perform reading writing operation through programming. In file IO, I learn both low level and high file IO. Then i started with the various sorting and searching techniques like linear and binary searching, bubble, selection, insertion, quick, heap sorting. I also perform their practical implementation. Then i started with the project management tools which i also implement during my practical implementation of C programs. There are various project management tools which I studied like make file (which is used to compile multiple targets), rcs (Revision Control System-which is used to save our work when we make some changes and helps in retrieving the previous version of source code in which I made changes), cvs(Concurrent Version System- is comes over the disadvantages of rcsand is done over internet). Also I studied the debugging tool that is gdb which helps in checking the error in the program during execution. I implement various programs and assignment related to the C Programming.</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/12/c-programming-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Article on C programming based Project</title>
		<link>https://www.emblogic.com/blog/11/article-on-c-programming-based-project/</link>
		<comments>https://www.emblogic.com/blog/11/article-on-c-programming-based-project/#comments</comments>
		<pubDate>Mon, 25 Nov 2013 12:01:02 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Project 2: Multiple Data Compression and Encryption]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7450</guid>
		<description><![CDATA[A C programming based Project C language is the general purpose programming language developed by Dennis Ritchie. C language is the base of many other languages like C#, Java, Python, Perl, PHP. C has facilities like structure programming, functional programming. &#8230; <a href="https://www.emblogic.com/blog/11/article-on-c-programming-based-project/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p style="text-align: center">A C programming based Project</p>
<p style="text-align: left">C language is the general purpose programming language developed by Dennis Ritchie. C language is the base of many other languages like C#, Java, Python, Perl, PHP. C has facilities like structure programming, functional programming. There are some standard made for C programming. C also allows the most precise control of input and output</p>
<p style="text-align: left">In C Programming based Project I started with basic of C programming that is how a code or source file is compiled by gcc compiler and then how it will run. After that i learn in C language is their data types, ranges of various data types, how they will access in the program, libraries used in C program, how to write a simple program in C.</p>
<p style="text-align: left">After the basic knowledge of C programming, I studied about the operator used in C programming. How to use control structure like conditional statements (if, if-else, nested if, switch) and then looping statement (for, while, do-while). Then I studied array that is collection of elements  of same data types in contiguous memory allocation and string that is collection of character ending with a null character (&#8221;).</p>
<p style="text-align: left">Then I started with pointers which stores address of a variable. I implement various program which clears my concept of pointer and reference because it is most important thing in C programming. After the pointer I studied structure that is the collection of variable of different data types in contiguous memory location. By using structure I implement link list, stacks, queues and circular queues.</p>
<p style="text-align: left">After the structure I studied file IO that is used to open a file and perform reading writing operation through programming. In file IO, I learn both low level and high file IO. Then i started with the various sorting and searching techniques like linear and binary searching, bubble, selection, insertion, quick, heap sorting. I also perform their practical implementation.</p>
<p style="text-align: left">Then i started with the project management tools which i also implement during my practical implementation of C programs. There are various project management tools which I studied like make file (which is used to compile multiple targets), rcs (Revision Control System-which is used to save our work when we make some changes and helps in retrieving the previous version of source code in which I made changes), cvs(Concurrent Version System- is comes over the disadvantages of rcsand is done over internet). Also I studied the debugging tool that is gdb which helps in checking the error in the program during execution.</p>
<p style="text-align: left">I implement various programs and assignment related to the C Programming. I also did a project whose name is &#8220;Multiple Data Compression and Encryption using Iterative techniques&#8221;. The basic concept of this project is to compress a text file and encrypt it so that unauthorized person cannot understand it. This project compress a text file and reduce the size of the text file. While making the source code for this program I implement all the concept of C language and project management tools.</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/11/article-on-c-programming-based-project/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Batch : 20.02.39 : Assignment Status</title>
		<link>https://www.emblogic.com/blog/10/batch-20-02-39-assignment-status/</link>
		<comments>https://www.emblogic.com/blog/10/batch-20-02-39-assignment-status/#comments</comments>
		<pubDate>Fri, 18 Oct 2013 07:11:52 +0000</pubDate>
		<dc:creator><![CDATA[Nishant]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7338</guid>
		<description><![CDATA[]]></description>
				<content:encoded><![CDATA[]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/10/batch-20-02-39-assignment-status/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
