<?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; ritesh.agrawal</title>
	<atom:link href="https://www.emblogic.com/blog/author/ritesh-agrawal/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></title>
		<link>https://www.emblogic.com/blog/12/7783/</link>
		<comments>https://www.emblogic.com/blog/12/7783/#comments</comments>
		<pubDate>Fri, 20 Dec 2013 08:41:11 +0000</pubDate>
		<dc:creator><![CDATA[ritesh.agrawal]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7783</guid>
		<description><![CDATA[Python Python is a very simple language, and has a very straightforward syntax. It encourages programmers to program without prepared code. The simplest directive in Python is the &#8220;print&#8221; directive &#8211; it simply prints out a line and also includes &#8230; <a href="https://www.emblogic.com/blog/12/7783/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small"> <span style="font-size: medium"><strong>Python</strong></span></span></span></p>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">Python is a very simple language, and has a very straightforward syntax. It encourages programmers to program without prepared code. The simplest directive in Python is the &#8220;print&#8221; directive &#8211; it simply prints out a line and also includes a newline, unlike in C</span></span></p>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">There are two major Python versions, Python 2 and Python 3. Python 2 and 3 are quite different. This tutorial uses Python 2, because it is more widely used and supported.</span></span></p>
<p style="text-align: left"> <span style="font-family: Linux Libertine"><span style="font-size: small">To print a string, just write:</span></span><code></code></p>
<p style="text-align: left"><code><span style="font-family: Linux Libertine"><span style="font-size: small">print "hello"</span></span></code></p>
<h3 style="text-align: left"><strong><code><span style="font-family: Linux Libertine"><span style="font-size: small">Indentation</span></span></code></strong></h3>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">Python uses indentation for blocks, instead of curly braces. Both tabs and spaces are supported, but the standard indentation requires standard Python code to use four spaces. For example:</span></span><code></code></p>
<p style="text-align: left"><code><span style="font-family: Linux Libertine"><span style="font-size: small">x = 1</span></span></code></p>
<p style="text-align: left"><code></code><code><span style="font-family: Linux Libertine"><span style="font-size: small">      if x == 1:</span></span></code> <code> </code><code><span style="font-family: Linux Libertine"><span style="font-size: small"># tab for indentation</span></span></code> <code> </code><code><span style="font-family: Linux Libertine"><span style="font-size: small">print "x is 1."</span></span></code> <code><span style="font-family: Linux Libertine"><span style="font-size: small">this print statement belongs to the block of above specified if block and every statement written after indentation will come inside the “if” block.</span></span></code></p>
<h1 style="text-align: left"><strong><code><span style="font-family: Linux Libertine"><span style="font-size: small">Variables and Types</span></span></code></strong></h1>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">Python is completely object oriented. You do not need to declare variables before using them, or declare their type. Every variable in Python is an object.</span></span></p>
<p style="text-align: left"><strong><span style="font-family: Linux Libertine"><span style="font-size: small">5 major variable in python</span></span></strong></p>
<h3 style="text-align: left"><strong><span style="font-family: Linux Libertine"><span style="font-size: small">Numbers</span></span></strong></h3>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">Python supports two types of numbers &#8211; integers and floating point numbers. (It also supports complex numbers,</span></span></p>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">To define an integer, use the following syntax:</span></span><code></code></p>
<p style="text-align: left"><code><span style="font-family: Linux Libertine"><span style="font-size: small">myint = 7</span></span></code> <span style="font-family: Linux Libertine"><span style="font-size: small">To define a floating point number, you may use one of the following notations:</span></span> <code><span style="font-family: Linux Libertine"><span style="font-size: small">myfloat = 7.0</span></span></code></p>
<h3 style="text-align: left"><strong><code><span style="font-family: Linux Libertine"><span style="font-size: small">Strings</span></span></code></strong></h3>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">Strings are defined either with a single quote or a double quotes.</span></span><code></code></p>
<p style="text-align: left"><code><span style="font-family: Linux Libertine"><span style="font-size: small">mystring = 'hello'</span></span></code> <code><span style="font-family: Linux Libertine"><span style="font-size: small">mystring = "hello"</span></span></code></p>
<h1 style="text-align: left"><strong><code><span style="font-family: Linux Libertine"><span style="font-size: small">Lists</span></span></code></strong></h1>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">Lists are very similar to arrays. They can contain any type of variable, and they can contain as many variables as you wish. Lists can also be iterated over in a very simple manner. The list is a most versatile datatype available in Python which can be written as a list of comma-separated values (items) between square brackets. Good thing about a list is that items in a list need not all have the same type.</span></span><code></code></p>
<p style="text-align: left"><code><span style="font-family: Linux Libertine"><span style="font-size: small">mylist = [“hello”,123]</span></span></code></p>
<h2 style="text-align: left"><strong><code><span style="font-family: Linux Libertine"><span style="font-size: small">Tuples</span></span></code></strong></h2>
<p style="text-align: left"><code><span style="font-family: Linux Libertine"><span style="font-size: small">A tuple is a sequence of immutable Python objects. Tuples are sequences, just like lists. The only difference is that tuples can't be changed i.e., tuples are immutable and tuples use parentheses and lists use square brackets.</span></span></code></p>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">Creating a tuple is as simple as putting different comma-separated values and optionally you can put these comma-separated values between parentheses also. For example:</span></span></p>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">tup=(“hello”,123)</span></span></p>
<h2 style="text-align: left"><strong><code><span style="font-family: Linux Libertine"><span style="font-size: small">Dictionaries</span></span></code></strong></h2>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">A dictionary is mutable and is another container type that can store any number of Python objects, including other container types. Dictionaries consist of pairs (called items) of keys and their corresponding values.</span></span></p>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">Python dictionaries are also known as associative arrays or hash tables. The general syntax of a dictionary is as follows:</span></span></p>
<p style="text-align: left"><span style="font-family: Linux Libertine"><span style="font-size: small">dict = {“name” : “xyz” , “age” : “123”}</span></span></p>
<p style="text-align: left">
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/12/7783/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ARTICLE</title>
		<link>https://www.emblogic.com/blog/11/article/</link>
		<comments>https://www.emblogic.com/blog/11/article/#comments</comments>
		<pubDate>Mon, 25 Nov 2013 11:39:24 +0000</pubDate>
		<dc:creator><![CDATA[ritesh.agrawal]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7478</guid>
		<description><![CDATA[Client sever communication system using socket and multiple thread. Description: It is a multiple client server project based on TCP socket and threads. Through this infinite number of client can communicate with each other and share information through the server &#8230; <a href="https://www.emblogic.com/blog/11/article/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p align="JUSTIFY">Client sever communication system using socket and multiple thread.</p>
<p align="JUSTIFY">
<p align="JUSTIFY">Description: It is a multiple client server project based on TCP socket and threads. Through this infinite number of client can communicate with each other and share information through the server on local network.</p>
<p align="JUSTIFY">
<p align="JUSTIFY">In this for i have created individual thread for each and every operation.</p>
<p align="JUSTIFY">
<p align="JUSTIFY">SERVER END : Through this all the user can interact with each other. Initially i have created a tcp socket which can be accessed through a combination of ip address and port number. Other calls used in this are BIND to associate your fd which was is your return value of socket call to a structure which contains information regarding your ip address and port number this is basically a naming convention. Then comes your listen call which gives you the number of client which can be held in your socket queue. You can select a port number which is not initialized for any other service. Then through accept call which accepts your client request and provide him a different fd so that it can accept request from new incoming client. Through this different client gets separate fd and can communicate with each other.</p>
<p align="JUSTIFY">
<p align="JUSTIFY">For each client there will be an individual thread as soon as a request from client is received, server will create a thread solely for that particular client.</p>
<p align="JUSTIFY">
<p align="JUSTIFY">Its has various functionality:</p>
<p align="JUSTIFY">
<ol>
<li>
<p align="JUSTIFY">when the first client sends its request to server if it is the only client the server will send him a message that you the only client. So wait till we have another client, then its all upto the client whether he wants to wait or he can quit the server.</p>
</li>
<li>
<p align="JUSTIFY">Lets say if another client arrive then the server will first send him the option of all the other clients who are still online. And then that client if wishes to connect any of present client it can send his id number to server and server will create a connection between them so that they can share information.</p>
</li>
<li>
<p align="JUSTIFY">In similar fashion it can connect as many client as asked.</p>
</li>
</ol>
<p align="JUSTIFY">
<p align="JUSTIFY">CLIENT END: It include only two system call one is for creating your socket and other one is CONNECT to send a request to your server.</p>
<p align="JUSTIFY">
<ol>
<li>
<p align="JUSTIFY">First any of the client will send a request on successful completion of your your socket call in return it will receive a fd through which it can communicate with each other.</p>
</li>
<li>
<p align="JUSTIFY">As soon as 2 client comes into the picture the server will send him a request of the number of client which are online to select whom he/she wants to connect.</p>
</li>
<li>
<p align="JUSTIFY">Now our 2 client will have the fd of that client whom he wants to connect but the client on the other hand have no information of the 2nd client which ask the server to connect him to client 1. so before sending any sort of information first the second client will send his fd to 1st client through sever</p>
</li>
<li>
<p align="JUSTIFY">Now every client has two different thread depending on whether he/she wants to send a request or can directly receiver data if some other client already made a request to connect him to the former client. As we have seen in many social sites that we can receive msg from other client even if are not sending him some information.</p>
</li>
</ol>
<p align="JUSTIFY">
<p align="JUSTIFY">This is all about what i have done to date and i am working on it for further amendments.</p>
<p align="JUSTIFY"> Thanks &amp; Regards</p>
<p align="JUSTIFY">
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/11/article/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title></title>
		<link>https://www.emblogic.com/blog/10/7309/</link>
		<comments>https://www.emblogic.com/blog/10/7309/#comments</comments>
		<pubDate>Tue, 08 Oct 2013 11:11:43 +0000</pubDate>
		<dc:creator><![CDATA[ritesh.agrawal]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[To Sidhdharth Sir]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7309</guid>
		<description><![CDATA[Sir, Kindly explain the difference between cpu stack and cpu register ?]]></description>
				<content:encoded><![CDATA[<p><strong>Sir,</strong></p>
<p>Kindly explain the difference between cpu stack and cpu register ?</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/10/7309/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>problem</title>
		<link>https://www.emblogic.com/blog/09/problem/</link>
		<comments>https://www.emblogic.com/blog/09/problem/#comments</comments>
		<pubDate>Mon, 02 Sep 2013 11:36:04 +0000</pubDate>
		<dc:creator><![CDATA[ritesh.agrawal]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7178</guid>
		<description><![CDATA[#include&#60;stdio.h&#62; #include&#60;string.h&#62; void main() { char *p=&#8221;abcdef&#8221;; p = p + (strlen(p)-1); printf(&#8220;%c\n&#8221;,&#8211;*p&#8211;); printf(&#8220;%c\n&#8221;,&#8211;*&#8211;p); printf(&#8220;%c\n&#8221;,&#8211;*(p&#8211;)); printf(&#8220;%c\n&#8221;,&#8211;*(&#8211;p)); printf(&#8220;%c\n&#8221;,*p); } unable to solve the mentioned problem pls help&#8230;]]></description>
				<content:encoded><![CDATA[<p>#include&lt;stdio.h&gt;<br />
#include&lt;string.h&gt;</p>
<p>void main()<br />
{<br />
char *p=&#8221;abcdef&#8221;;<br />
p = p + (strlen(p)-1);<br />
printf(&#8220;%c\n&#8221;,&#8211;*p&#8211;);<br />
printf(&#8220;%c\n&#8221;,&#8211;*&#8211;p);<br />
printf(&#8220;%c\n&#8221;,&#8211;*(p&#8211;));<br />
printf(&#8220;%c\n&#8221;,&#8211;*(&#8211;p));<br />
printf(&#8220;%c\n&#8221;,*p);<br />
}</p>
<p>unable to solve the mentioned problem pls help&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/09/problem/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Fifo</title>
		<link>https://www.emblogic.com/blog/08/fifo-4/</link>
		<comments>https://www.emblogic.com/blog/08/fifo-4/#comments</comments>
		<pubDate>Tue, 13 Aug 2013 13:55:03 +0000</pubDate>
		<dc:creator><![CDATA[ritesh.agrawal]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7098</guid>
		<description><![CDATA[Sir while creating multiple client server program using fifo although my code is working fine but if i m executing my code continuously some times all the requesting client are working without generating any kind of delay in writing, but &#8230; <a href="https://www.emblogic.com/blog/08/fifo-4/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><del></del><strong>Sir while creating multiple client server program using fifo although my code is working fine but if i m executing my code continuously some times all the requesting client are working without generating any kind of delay in writing, but at other instance they are  giving rise to delay of few ms before they begin..?? architecture of my code. Using 1 fifo with semaphore on the requesting side , and to serve them i m creating individual fifo based on the condition of arithmetic operator . <strong> how to resolve this issue..</strong>??<br />
</strong></p>
<p><strong>Regards</strong></p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/08/fifo-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>doubt</title>
		<link>https://www.emblogic.com/blog/08/doubt/</link>
		<comments>https://www.emblogic.com/blog/08/doubt/#comments</comments>
		<pubDate>Sun, 11 Aug 2013 06:26:35 +0000</pubDate>
		<dc:creator><![CDATA[ritesh.agrawal]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7096</guid>
		<description><![CDATA[Pls explain me the representation of float and double in binary format(exponent and mentissa)..? Regards]]></description>
				<content:encoded><![CDATA[<p>Pls explain me the representation of float and double in binary format(exponent and mentissa)..?</p>
<p>Regards</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/08/doubt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>c</title>
		<link>https://www.emblogic.com/blog/08/c-3/</link>
		<comments>https://www.emblogic.com/blog/08/c-3/#comments</comments>
		<pubDate>Sat, 10 Aug 2013 13:28:27 +0000</pubDate>
		<dc:creator><![CDATA[ritesh.agrawal]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7094</guid>
		<description><![CDATA[finished assignment of pointers.. Regards]]></description>
				<content:encoded><![CDATA[<p><strong>finished assignment of pointers..</strong></p>
<p>Regards</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/08/c-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C..</title>
		<link>https://www.emblogic.com/blog/08/c/</link>
		<comments>https://www.emblogic.com/blog/08/c/#comments</comments>
		<pubDate>Sat, 10 Aug 2013 06:04:36 +0000</pubDate>
		<dc:creator><![CDATA[ritesh.agrawal]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=7085</guid>
		<description><![CDATA[Done with 6 assignments in c.. working on pointer and c++. Regards &#160;]]></description>
				<content:encoded><![CDATA[<p>Done with 6 assignments in c.. working on pointer and c++.</p>
<p>Regards</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/08/c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DEVICE DRIVER</title>
		<link>https://www.emblogic.com/blog/07/device-driver-8/</link>
		<comments>https://www.emblogic.com/blog/07/device-driver-8/#comments</comments>
		<pubDate>Sun, 21 Jul 2013 05:25:44 +0000</pubDate>
		<dc:creator><![CDATA[ritesh.agrawal]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=6904</guid>
		<description><![CDATA[Character Device Driver: In order to create a link between your device means your hardware either it is internal or externally attached and user application we need a set of rules which will define how your concerned device shall deal &#8230; <a href="https://www.emblogic.com/blog/07/device-driver-8/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p style="text-align: left"><strong>Character Device Driver</strong>: In order to create a link between your device means your hardware either it is internal or externally attached and user application we need a set of rules which will define how your concerned device shall deal with application make sure user will get a satisfactory output as desired.</p>
<p style="text-align: left">First let me give you a brief idea of architecture which helped me to create my device driver. Its is mainly divided in two basic parts first one is know as your USER LEVEL where application runs and the 2nd is your KERNEL LEVEL where your device driver is defined.</p>
<p style="text-align: left">This is how a link is created between application and device through device driver.</p>
<p style="text-align: left"><strong>APPLICATION</strong>&#8212;&#8212;-&gt;<strong>NODE</strong>&#8212;&#8212;&gt;<strong>DEVICE DRIVER</strong>&#8212;&#8212;&#8211;&gt; <strong>DEVICE</strong></p>
<p style="text-align: left">NODE is an interface between USER LEVEL and KERNEL LEVEL..</p>
<p style="text-align: left">There are few kernel defined structure and rest are user defined structure through which we can define the functionality of our device driver.</p>
<p style="text-align: left">KERNEL DEFINED STRUCTURE&#8211; 1-&gt;<strong>Struct File</strong> 2-&gt;<strong>struct Inode</strong> 3-&gt;<strong>Cdev</strong>. etc</p>
<p style="text-align: left">USER DEFINED STRUCTURE&#8211; 1-&gt;<strong>struct ScullDev</strong> 2-&gt;<strong> struct Scullqse</strong>t 3-&gt;<strong>struct file operations</strong>.</p>
<p style="text-align: left">Lets look how all these all structure works one by one.</p>
<p style="text-align: left"><strong>Scull</strong> is a memory space which is allocated in machine memory to your device. in scull we have two vital structure know as <strong>struct Sculldev</strong> and <strong>struct Scullqset</strong>. The former one is the starting point of scull as well as contains data about all the scullqset present in your scull in a way it contains metadata. its member are as fallow- 1-*scullqset 2-no of scullqset 3-datasize 4-quantum size 5-device size. and last but not the least  struct Cdev.</p>
<p style="text-align: left">The later one <strong>Scullqset</strong> is a structure which store data or information. it mainly has two member first one is a pointer to next scullqset and the second one double pointer to y.our data, means first it will point to an array of pointer known as qset ,contains the add of quantum where actually our data is kept.</p>
<p style="text-align: left"><strong>Struct file operations</strong>-&gt; it generally defines the behavior of our device. it is used here to map the user level system calls to programmer defined system calls. some system calls are <strong>OPEN,CLOSE,WRITE,READ</strong>&#8230; etc</p>
<p style="text-align: left"><strong>Struct Cdev</strong>&#8212;&gt; it mainly has three member 1st one is owner which specifies about its owner name 2nd is a pointer to file operation,3rd to dev which contains major and minor no. now what is this major and minor no. lets have a look before we proceed further</p>
<p style="text-align: left"><strong>Major no</strong> is a number which is given to each and every device driver we have in our machine and <strong>minor no</strong> is the number which represents your the device associated with that particular device driver. struct Cdev is your device representation in kernel Space.</p>
<p style="text-align: left">Now comes kernel level structures into picture. <strong>STRUCT INODE</strong> .. as we all know that in linux everything is file either it is a text file, some kind of code or any device with each and every file there is an associated inode structure , here we will mainly concentrate and concerned about which is particularly represents our device. &#8220;inode is the only way through which we can or its better to say our application can interact with our device. main member are i_cev which points to your struct cdev. pointer to file operations.</p>
<p style="text-align: left"><strong>Struct file</strong>-&gt; members are *f_pos which takes the account of the cursor in your file. pointer to file operations , *private data which will help us to do mapping from your user level to kernal level as its stores the address of your SCULL so we can access all the data which we have stored in quantum part of scullqset from user level. this is all about the architecture now lets have  look on the operations or working.</p>
<p style="text-align: left"><strong>STEPS TO BE FOLLOWED</strong>:</p>
<p style="text-align: left">1.<strong> Insmod</strong> which will load our module, module is a source code which is loaded on demand.</p>
<p style="text-align: left">2. <strong>Registration</strong>:register our device driver and device so that DD will get a major number and device gets its own minor number.</p>
<p style="text-align: left">3.<strong>Allocation</strong>: Allocate space to Scull in machine memory.</p>
<p style="text-align: left">4.<strong>Initialize Scull</strong>&#8211;&gt; cdev_init&#8212; create link between struct inode and struct cdev&#8230; define owner.. cdev_add make attribute of device available to our kernael.</p>
<p style="text-align: left">5. <strong>Sculldev initiallization</strong>: define size of qset,quantun,device..etc</p>
<p style="text-align: left">6.<strong> Scull Trim</strong>. flash data if present in the memory space which is assigned to scull</p>
<p style="text-align: left">7.<strong>Open</strong>: define open system call.</p>
<p style="text-align: left">8. <strong>Write</strong>: before doing that allocate space to Scullqset then to qset and at last to quantum now we can write data to our quantum, <strong>LSEEK</strong> if needed.</p>
<p style="text-align: left">9. <strong>Read</strong>: read whatever you have written to quantum.</p>
<p style="text-align: left">10. <strong>Release</strong>: de-allocate all the space, unregister your device and DD, remove your module.</p>
<p style="text-align: left">now our first device driver is partially ready. lot more things to do. stay tuned for more updates.</p>
<p style="text-align: left">Thanks and Regards.</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/07/device-driver-8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BATCH 31- MDC &amp; LINKLIST</title>
		<link>https://www.emblogic.com/blog/06/batch-31-mdc-linklist/</link>
		<comments>https://www.emblogic.com/blog/06/batch-31-mdc-linklist/#comments</comments>
		<pubDate>Wed, 05 Jun 2013 07:25:20 +0000</pubDate>
		<dc:creator><![CDATA[ritesh.agrawal]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=6523</guid>
		<description><![CDATA[Done with 4 bit compression and de-compression, link list and 3 bit compression. did try to rectify the issue in 3 bit de-compression by sending &#8220;/b&#8221; at last which has index no 4 in mastrarray, followed by EOF ,it is &#8230; <a href="https://www.emblogic.com/blog/06/batch-31-mdc-linklist/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Done with 4 bit compression and de-compression, link list and 3 bit compression. did try to rectify the issue in 3 bit de-compression by sending &#8220;/b&#8221; at last which has index no 4 in mastrarray, followed by EOF ,it is working if i m lft with less then 6 bit in an loop while 3 bit compression and this issue is only in reference to NDC=8 else i m done with 3 bit decompression to.</p>
<p>Thanks &amp; Regards</p>
<p>Ritesh Agarwal</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/06/batch-31-mdc-linklist/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>2d array</title>
		<link>https://www.emblogic.com/blog/05/2d-array/</link>
		<comments>https://www.emblogic.com/blog/05/2d-array/#comments</comments>
		<pubDate>Fri, 17 May 2013 04:46:06 +0000</pubDate>
		<dc:creator><![CDATA[ritesh.agrawal]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=6475</guid>
		<description><![CDATA[Hello Sir / ma&#8217;am How to create 2d array using double pointer..?? Thanks &#38; Regards]]></description>
				<content:encoded><![CDATA[<p>Hello Sir / ma&#8217;am</p>
<p>How to create 2d array using double pointer..??</p>
<p>Thanks &amp; Regards </p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/05/2d-array/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>project 1 session 10</title>
		<link>https://www.emblogic.com/blog/05/project-1-session-10/</link>
		<comments>https://www.emblogic.com/blog/05/project-1-session-10/#comments</comments>
		<pubDate>Tue, 14 May 2013 16:21:39 +0000</pubDate>
		<dc:creator><![CDATA[ritesh.agrawal]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[pravjot sir]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=6473</guid>
		<description><![CDATA[Hello sr, Got the desired output of file compression, my rlog file and the output are given below. output:- size=11 i=10 she laonr file: ./fileio1.c,v Working file: fileio1.c head: 1.15 branch: locks: strict access list: symbolic names: keyword substitution: kv &#8230; <a href="https://www.emblogic.com/blog/05/project-1-session-10/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Hello sr,</p>
<p>Got the desired output of file compression, my rlog file and the output are given below.</p>
<p>output:- size=11<br />
i=10<br />
she laonr</p>
<p>file: ./fileio1.c,v<br />
Working file: fileio1.c<br />
head: 1.15<br />
branch:<br />
locks: strict<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 15; selected revisions: 15<br />
description:<br />
there area some syntax error<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.15<br />
date: 2013/05/14 16:10:35; author: ritesh; state: Exp; lines: +2 -2<br />
make j=0 for every iteration<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.14<br />
date: 2013/05/14 16:07:31; author: ritesh; state: Exp; lines: +2 -2<br />
decleared flag outside the for loop<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.13<br />
date: 2013/05/14 16:01:58; author: ritesh; state: Exp; lines: +1 -1<br />
defined masterarray in realloc<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.12<br />
date: 2013/05/14 16:00:11; author: ritesh; state: Exp; lines: +1 -1<br />
*** empty log message ***<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.11<br />
date: 2013/05/14 15:51:21; author: ritesh; state: Exp; lines: +2 -2<br />
define size,j<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.10<br />
date: 2013/05/14 15:49:14; author: ritesh; state: Exp; lines: +32 -7<br />
using realloc function<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.9<br />
date: 2013/05/14 11:03:25; author: ritesh; state: Exp; lines: +1 -1<br />
*** empty log message ***<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.8<br />
date: 2013/05/14 11:01:04; author: ritesh; state: Exp; lines: +1 -1<br />
decreased the size of masterarray.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.7<br />
date: 2013/05/14 10:58:45; author: ritesh; state: Exp; lines: +7 -3<br />
use malloc function<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.6<br />
date: 2013/05/14 10:13:04; author: ritesh; state: Exp; lines: +1 -1<br />
removed syntex error.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.5<br />
date: 2013/05/14 10:03:52; author: ritesh; state: Exp; lines: +1 -1<br />
forget to use the close command<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.4<br />
date: 2013/05/14 09:59:13; author: ritesh; state: Exp; lines: +1 -1<br />
*** empty log message ***<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.3<br />
date: 2013/05/14 09:58:13; author: ritesh; state: Exp; lines: +15 -11<br />
*** empty log message ***<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.2<br />
date: 2013/05/14 09:55:31; author: ritesh; state: Exp; lines: +1 -1<br />
syntax error<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1<br />
date: 2013/05/14 09:54:47; author: ritesh; state: Exp;<br />
Initial revision</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/05/project-1-session-10/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
