Re: Moving an application from User Space to Kernel Space



Michael Schnell wrote:
karthikbg wrote:
I have written a bit big Flash Drive Furnctionality in the userspace.
Now, Would like to move into the Kernel Space.

I don't understand "Flash Drive Functionality".

Is the "Flash Drive" a standard flash card ?
So you should use the appropriate driver (e.g. IDE for Compact Flash).

Is the "Flash Drive" a chip in the CPU's address space ?
So you should use the standard MTD driver (Maybe you need to modify
the MTD driver according to your hardware).

Is it something else ?
You might need to create a _small_ kernel mode driver that just
moves blocks of data to/from the Flash. (Hardware driver layer)


Is the "Functionality" a kind of file system ?
Can't you use an existing file system ?
If not, you might write you own Kernel mode file system according to
the standards.

Is the "Functionality" something different ?
Will it provide functions to be accessed by user mode programs ?
You could create a Kernel mode module to provide accessibility
using a standard driver API. This driver should use the hardware driver
layer by an internal API.
Or you could create an "so" library with a propriety API. The "so"
will use the hardware driver to access the flash memory.

If not this would be a user mode program using the API of the
hardware driver.

Have fun !
-Michael

Hi ,
It is a Flash Memory driver with lot of userspace interactions which i
have been using completely from userspace till now. Thankyou for all
your responses. Your ideas have really
given me the necessary clarifications.

Regards,
Karthik Balaguru

.



Relevant Pages

  • Re: Moving an application from User Space to Kernel Space
    ... Is the "Flash Drive" a standard flash card? ... So you should use the standard MTD driver. ... You might need to create a _small_ kernel mode driver that just moves blocks of data to/from the Flash. ...
    (comp.os.linux.embedded)
  • Re: USB driver for device
    ... I was told that under XP the device uses a standart virtual comport driver. ... Does this mean that de device emulates some kind of standard chip? ... We are developing an USB device in-house that will be connected to ... The other layers of USB stack provide all functionality needed, ...
    (microsoft.public.windowsce.platbuilder)
  • Re: standard hal driver to acpi
    ... Only works the other way around - ACPI to Standard PC can be ... To force ACPI HAL - Update PC's BIOS to latest flash & ... > has anyone ever changed from standard pc driver to acpi ...
    (microsoft.public.windowsxp.general)
  • Re: FlashROM as a disk in CE 5.0
    ... FileSystem Starting - starting with clean file system ... Lower flash. ... 0x83fc8994: FLASHDRV.DLL:Unable to initialize FLASH Media Driver. ... I have added the Registry settings to Project.reg file like ...
    (microsoft.public.windowsce.platbuilder)
  • Re: TFAT stability
    ... if you look at how the msflash block driver is implemented, you can see that disk-like 512-byte sectors are mapped plain linearly to flash memory. ... TFAT knows nothing of flash blocks. ... I think the filesystem moust be unmounted during ...
    (microsoft.public.windowsce.platbuilder)