AMC 68VZ328 software manual Journalling Flash File System

Page 55

B Appendix

The Journalling Flash File System

There are two different types of memory available on the dimmPCI CPU module, SDRAM and flash memory. The SDRAM is virtually the same as the RAM in a personal computer; anything stored in this memory will be lost when the power is turned off. This is also referred to as volatile memory. The flash memory is analogous to the hard drive in your computer since it retains stored data even when the computer is turned off. This is called non-volatile memory.

The journaling flash file system (JFFS) is an interface that allows data to be written/read to/from the flash memory randomly. It arranges files in the memory, keeps track of how large they are and where they are located etc.

But JFFS is not the only thing that uses flash memory; along with the JFFS there exists the kernel and the read-only file system. Basically the kernel is the operating system, it handles memory allocation, multi-tasking, etc. It is located in the lowest portion of the flash memory. Stored after the kernel in flash is the read-only file system. It contains configuration scripts and user tools, such as ‘cp’, ‘ls’, ‘pwd’ and so on. The remaining flash memory has been allocated for the JFFS, depending on the size of the kernel and read-only file system this can range up to 1.0 Mbytes in size.

In order to have access to this memory, the kernel must have been compiled with JFFS enabled. Next the JFFS needs to be mounted on the JFFS on your root file system. The default location is to mount it under the ‘/usr’ directory. So the command would be:

/bin/mount –t jffs /dev/flash0 /usr

After executing this command on the dimmPCI console, the ‘/usr’ directory will be a nonvolatile filesystem with read/write capability. Any data stored here will survive turning the power off.

www.amctechcorp.com

55

Image 55
Contents DimmPCITM 68VZ328 Hardware / Software Manual Contact Information Copyright noticeDimmPCITM Software Development Kit NETdimm Developers Kit Quick Start Guide Etc/issue Page This page left intentionally blank Launching Linux at the embedded IntroductionPage System Requirements What’s on the CD?This page left intentionally blank Backplane FeaturesUC68VZ328 Embedded Microcontroller CPU ModuleCPU Module Description General DescriptionBackplane Description CPU Architecture ArchitectureSystem Memory MCU CoreMemory Map Memory Map MemoryLayout of the Flash and Flash Schematic Layout of the Flash Sdram Viewing the Ethernet MAC ID Ethernet ControllerNETdimm Ethernet Schematic IOdimm Digital I/ODigital Output Schematic Analog Output Schematic Analog Input Schematic Digital to Analog Converter Schematic Watchdog RS-232Highlights Usage LCD Interface LCD SchematicDimmPCITM signals for System Slot DimmPCITM Signal DescriptionsPCI Maximum Ratings Electrical CharacteristicsThis page left intentionally blank Before beginning Installing the dimmPCI TM SystemInstallation Builder KitConfiguring and compiling the µClinux kernel Customizing the filesystem Creating a ROM imageAccessing your dimmPCI development board via the serial port Static IP Accessing the NetworkDynamic IP Compiling your own source code Accessing your dimmPCI development board via telnetUsing NFS to streamline the development cycle Home directory/dimmpci/source Method Updating Applications on your dimmPCI moduleThis page left intentionally blank Loader Programming the uC68VZ328Oops Cd /opt/boottools/oops Oops -p /dev/ttyS0 -k kernel.bin Page Page This page left intentionally blank Sample Code AppendixClose the file afterwards fclose filehandle Page Longwatchdogid #include unistd.h #include stdio.h int main void This page left intentionally blank Journalling Flash File System Umount /usr Sbin/mkjffs /dev/flash0 Page This page left intentionally blank Development Tool Chains Normal Usage of the PIC-COFFTool Chain Page This page left intentionally blank Introduction D1 Application NoteKernel and Filesystem Configuration YES Kernel and Filesystem Configuration Flow ChartAvailable Digital I/O Pins List of all available digital I/O pins Dimmio structure description Programming StructureDigital I/O Functions Page In0 In1 In2 In3 In4 In5 In6 In7 Out0 Even Parity Sample ProgramsMknod io1 c 123 Page This page left intentionally blank Abstract D2 Application NoteRequirements Kernel ConfigurationAgain, from the main menu under Network device support Kernel Configuration Flow Chart AtCommandPrompt Filesystem Configuration Cd /opt/filesystem name make clean Make Modifications to ‘rc’ file Filesystem Configuration Flow ChartTesting Host machine ConfigurationPage This page left intentionally blank Application Note Using Multiple NETdimm ModulesInetd based Server & Client Simple Server & ClientPage This page left intentionally blank IOdimm Using Analog and Digital I/O withCd /opt Cp -Rpdx newfs iodimmmfs ADC MAX1203 Category Channel Backplane System Backplane Header Slot Pin Available I/O PinsDigital Inputs and Outputs Functions+ Κ Iodimm/dio Samples/cardspecific/iodimm/dio Page This page left intentionally blank Purpose & basic format of files for oops Using OopsUpload & Flash Download Upload & RunCommon oops program arguments Appendix This page left intentionally blank 104 DimmPCITM Software Development Kit Distribution Licensing, Copyrights & LiabilityPreamble 106 107 108 109 Appendix How to Apply These Terms to Your New Programs No Warranty111 112 113 This page left intentionally blank 114 References/ Suggested Reading