Start by downloading a FreeRtos kernel in this case V5.3.0 , but feel free to use your favorite version from here which is completely free.And the ARM7 is KEIL MCB2100
We shall also be needing Flash Magic from here and Keil uVision Integrated Development Environment.
Start uVision IDE (I have used uVision 4).
Open project.
Select RTOS Demo from FreeRtos folder
Go to Project in uVision and select Device .
Then build the target
Here you may have to set the crystal frequency and other options (Check the data sheet for your ARM), in my case the frequency would be 12Mhz
In the output tab select create HEX file
Now Build Target in Project tab.This creates the hex file in your directory.
Start Flash Magic
communication settings
Select Device (mine would be LPC2129)
COM port COM1(or others)
Baud rate 115200(your choice)
Interface none
Oscillator 12 (Mhz)
Erase All Flash
Select Hex File
Set "Verify after programming"
Start it!
Thats it , FreeRtos is on ARM7 , you are greeted by blinking LED's
Now prior to generation of HEX file you can EDIT the FreeRtos source code , You can even define your own task in its main program; Thus you can execute just any application.
To all coders out there,a portal for collaboration,appreciation and merriment in the kingdom of codes !
Sunday, 11 November 2012
Monday, 15 October 2012
Security in mobile computing
I present here a report on security in mobile computing after in depth analysis of several research papers.
A summary is presented as pdf for free download here
In the given pdf consider the Trust based security , A detailed explanation is presented
"Jhon wants to access services such as printer but is not authorised so he request susan by sending request and credentials,susan sends a certificate and may impose constrains (say impose time restrictions on access to printer)on the request, this data will then be sent to security agent which will service request.
This can be used to secure smart spaces
Role is assigned to each user(software/individual),role is associated with security policies and authority
A hierarchical layer of security agents
Authorised user can delegate authority to other user by signed assertion,these signed assertions are validated by agents and the request is serviced
Delegation chain :If a entity delegate authority to a malicious module it can lose its delegation capability
"
Now for the concentric centric security
"The user application will have a corresponding mobile agent (MA)proxy ,The MA is software with data which can move from environment to other,thus it can save the session state and move between network,allowing the user to roam and seamlessly connect with different networks
Ubiquitous context based security middleware(Ubicosm) allows the user/service provider to specify the security capabilities and requirements as a metadata
Ubicosm will also appraise the resource availability and state in the new environment
And along with the metadata will provide a visible window comprising of only those resources which the MA can access,and which are validated. Also the metadata allows the MA to identify other MA’s of required security and other features and interact.
Changing security requirements are reflected as change in metadta with no change in codes
"
A summary is presented as pdf for free download here
In the given pdf consider the Trust based security , A detailed explanation is presented
"Jhon wants to access services such as printer but is not authorised so he request susan by sending request and credentials,susan sends a certificate and may impose constrains (say impose time restrictions on access to printer)on the request, this data will then be sent to security agent which will service request.
This can be used to secure smart spaces
Role is assigned to each user(software/individual),role is associated with security policies and authority
A hierarchical layer of security agents
Authorised user can delegate authority to other user by signed assertion,these signed assertions are validated by agents and the request is serviced
Delegation chain :If a entity delegate authority to a malicious module it can lose its delegation capability
"
Now for the concentric centric security
"The user application will have a corresponding mobile agent (MA)proxy ,The MA is software with data which can move from environment to other,thus it can save the session state and move between network,allowing the user to roam and seamlessly connect with different networks
Ubiquitous context based security middleware(Ubicosm) allows the user/service provider to specify the security capabilities and requirements as a metadata
Ubicosm will also appraise the resource availability and state in the new environment
And along with the metadata will provide a visible window comprising of only those resources which the MA can access,and which are validated. Also the metadata allows the MA to identify other MA’s of required security and other features and interact.
Changing security requirements are reflected as change in metadta with no change in codes
"
Sunday, 14 October 2012
Porting Linux on ARM 9
We shall consider the TS-7300 arm9 from Technologic Systems.TS-7300 allows us to port using the SD-card.
Problems of porting linux on ARM7 lpc2100
please note any attempt to port linux onto boards like arm7 mcb2100 is intractable with generic methods as the linux incorporate memory management unit which needs to be supported and which is missing in the said board (mcb2100)
Additionally porting kernel image onto flash which typically has size of 256KB is again not possible for linux,Pretty bulky!
To begin porting on TS-7300
First we shall partition the SD card
1.Download SD image from here
2.Extract the SD image ,insert the SD card into the SD card reader(either you can use card reader available in your system or may have to acquire a card reader,generally they are available in standard Laptops)
3.Format the SD card,this will delete all partitions(backup already loaded data if required).For formating try Gparted tool,install by :
$>sudo apt-get install gparted
4.Identify the SD card in your system.
$>fdisk -l
lists the partition in your machine ,The SD card is identified by /dev/sdxx xx being certain integer/character variables
5.Bootable SD card can then be developed by using
$>dd if=/path_to_SDimage/sdimage.dd of=/dev/sdxx
Note the dd command is a linux nuke, if you do not specify the correct disk at of= field then it may crash your system.Happened to me !.In case you do not heed the warning , not to worry check this
6.Minicom is something like hyperterminal in windows, allowing you to work with serial port, to install
$>sudo apt-get install minicom
7.Insert the SD card onto the TS-7300 machine and using a RS232 cable connect the TS-7300 with your system,A serial to USB adaptor may be required if your system does not have the DB connector for the Serial port.
8.Switch on TS-7300 and use the minicom to access the serial port
$> minicom -s
shows a configuration window
To provide appropriate serial port , you have to find which serial port is connected to the TS-7300 for that
$>dmesg | grep ttyUSB
lists all the USB terminals,in case you are using the serial to usb adaptor.However if you are directly using a single serial cable then
$>dmesg | grep ttyS*
will list the serial port , Identify your serial port and enter in serial device field of minicom.Note for example the above screen grab indicates /dev/ttyUSB0 as the USB port to which the serial cable is interface.
Also set the desired,data rate
9.Choosing Exit in minicom will establish the link between host machine and peripheral, In this case you may see the Board booting up !
Enter
$> uname -r
In the minicom terminal this indicate the version of kernel on the board,We have ported an OS !!
link is very useful for developers,The repository also provides various flavors of OS and tools.
Filesystem may be needed to develop device drivers,If the filesystem is not inherently provided by the SD image ,a filesystem is needed to be created after partitioning the SD card.
The C program which provides the functionality needs to be crosscompiled and introduced into the userspace ie the filesystem , by copying the crosscompiled C code(Crosscompiling produces an executable) onto the SD card.
Acquire the cross compiler by using
$>wget http://code.google.com/p/princess-alist/downloads/arm-linux-gcc-4.3.2.tgz
Extract at usr/local/bin , and set the environment fields by
$> export$PATH=PATH:/usr/local/bin/4.1.1-920t/bin/
$>export ARCH=arm
$>export CROSS_COMPILE=arm-linux-
Cross compile by
$>arm-linux-gcc -o objectname filename.c
Transfer the objectname file to the SD card and after booting you can execute it by using ./objectname in ARM9
Check out a LED driver,link
This is sufficient to get you started on ARM!
We have just ARMed the Penguin !
PS:If you face any problems , specify the same in the comment field.
Problems of porting linux on ARM7 lpc2100
please note any attempt to port linux onto boards like arm7 mcb2100 is intractable with generic methods as the linux incorporate memory management unit which needs to be supported and which is missing in the said board (mcb2100)
Additionally porting kernel image onto flash which typically has size of 256KB is again not possible for linux,Pretty bulky!
To begin porting on TS-7300
First we shall partition the SD card
1.Download SD image from here
2.Extract the SD image ,insert the SD card into the SD card reader(either you can use card reader available in your system or may have to acquire a card reader,generally they are available in standard Laptops)
3.Format the SD card,this will delete all partitions(backup already loaded data if required).For formating try Gparted tool,install by :
$>sudo apt-get install gparted
4.Identify the SD card in your system.
$>fdisk -l
lists the partition in your machine ,The SD card is identified by /dev/sdxx xx being certain integer/character variables
5.Bootable SD card can then be developed by using
$>dd if=/path_to_SDimage/sdimage.dd of=/dev/sdxx
Note the dd command is a linux nuke, if you do not specify the correct disk at of= field then it may crash your system.Happened to me !.In case you do not heed the warning , not to worry check this
6.Minicom is something like hyperterminal in windows, allowing you to work with serial port, to install
$>sudo apt-get install minicom
7.Insert the SD card onto the TS-7300 machine and using a RS232 cable connect the TS-7300 with your system,A serial to USB adaptor may be required if your system does not have the DB connector for the Serial port.
8.Switch on TS-7300 and use the minicom to access the serial port
$> minicom -s
shows a configuration window
To provide appropriate serial port , you have to find which serial port is connected to the TS-7300 for that
$>dmesg | grep ttyUSB
lists all the USB terminals,in case you are using the serial to usb adaptor.However if you are directly using a single serial cable then
$>dmesg | grep ttyS*
will list the serial port , Identify your serial port and enter in serial device field of minicom.Note for example the above screen grab indicates /dev/ttyUSB0 as the USB port to which the serial cable is interface.
Also set the desired,data rate
9.Choosing Exit in minicom will establish the link between host machine and peripheral, In this case you may see the Board booting up !
Enter
$> uname -r
In the minicom terminal this indicate the version of kernel on the board,We have ported an OS !!
link is very useful for developers,The repository also provides various flavors of OS and tools.
Filesystem may be needed to develop device drivers,If the filesystem is not inherently provided by the SD image ,a filesystem is needed to be created after partitioning the SD card.
The C program which provides the functionality needs to be crosscompiled and introduced into the userspace ie the filesystem , by copying the crosscompiled C code(Crosscompiling produces an executable) onto the SD card.
Acquire the cross compiler by using
$>wget http://code.google.com/p/princess-alist/downloads/arm-linux-gcc-4.3.2.tgz
Extract at usr/local/bin , and set the environment fields by
$> export$PATH=PATH:/usr/local/bin/4.1.1-920t/bin/
$>export ARCH=arm
$>export CROSS_COMPILE=arm-linux-
Cross compile by
$>arm-linux-gcc -o objectname filename.c
Transfer the objectname file to the SD card and after booting you can execute it by using ./objectname in ARM9
Check out a LED driver,link
This is sufficient to get you started on ARM!
We have just ARMed the Penguin !
PS:If you face any problems , specify the same in the comment field.
Saturday, 13 October 2012
Clamscan Antivirus in Linux
Free antivirus is available in Linux , ClamAV seems to be pretty credible and is provided free of cost, The same can also be used to check for virus in windows partition:
1.If you have windows and Linux in separate partitioned disk in your machine then you can simply mount the disk which has windows installed in it and run the clamscan in the terminal as
$> clamscan /pathtomounteddisk
2.If you have sole windows machine , again you can use live cd/usb to run clamscan
Install clamscan by using
Sudo apt-get install clamav
The virus signature database can be obtained from Clamav
To update the database use freshclam as $>freshclam ; To install this use $> sudo apt-get install clamav-freshclam
If you face problem updating using freshclam (If you are behind a proxy) , you can manually download the virus database main.cvd from the clamav.net link mentioned above and paste it to /var/lib/clamav
You can then use clamscan !
Sunday, 5 August 2012
Adding repository in ubuntu
In order to download and install a particular software from a given url in ubuntu after recognizing it as a repository so tools such as synaptic package manager can automatically download and install the packages,you need to add the given url as a repository for that
Type sudo gedit /etc/apt/sources.list in terninal
paste the sources or url's to sources.list file and save
Then you may reload your synaptic package manager,you will then be in a position to install packages from the url
Type sudo gedit /etc/apt/sources.list in terninal
paste the sources or url's to sources.list file and save
Then you may reload your synaptic package manager,you will then be in a position to install packages from the url
Subscribe to:
Posts (Atom)









