Re: Lots of easy questions about drivers/linking
From: Andrew (anonymous_at_discussions.microsoft.com)
Date: 03/11/04
- Next message: FTP: "RE: How to change UDMA timings for ATA controller under CE"
- Previous message: simon: "Re: kernel dll driver"
- In reply to: Steve Maillet \(eMVP\): "Re: Lots of easy questions about drivers/linking"
- Next in thread: Steve Maillet \(eMVP\): "Re: Lots of easy questions about drivers/linking"
- Reply: Steve Maillet \(eMVP\): "Re: Lots of easy questions about drivers/linking"
- Messages sorted by: [ date ] [ thread ]
Date: Wed, 10 Mar 2004 21:58:59 -0800
Thanks Steve, I know that O*SE supports dynamic software
updates (XiP) with ARM based processors and I'm pretty
sure Inte*grity, Q*NX Neu*trino and VxW*orks 5.4 also
have a facility to update software areas/modules without
rebooting the system, though I'm pretty sure that doesn't
include drivers compiled into their BSP/HAL/Kernel. None
of the other 43 RTOSs that I have looked at (only as deep
as the sales pitch, overview of RTOS functionality and
performance tests) have this facility, support the
PXA255, have protected memory spaces and < 1msec context
switches (yes there are RTOS' that are that slow).
Actually eCo*s has this facility as well but it was under
dev/test about a year ago. Don't get me started. I'm a
rantaholic. ;)
The BINFS method you suggested sounds interresting but
I'm really hoping that I can use the KISS principle
here. Bleeding edge tech trailblazing in R&D is very
satisfying but can be quite expensive and time
consuming. I will use your suggestion of putting my
drivers on the storage device and ensure my apps close
the handles to the driver before removing it and
reconnecting once it is up again.
Q) We only have 8M Flash and 16M SDRAM. Is there a
commonly used method to update the NK bin image while
live (with reboot)? I mean is there a way to overwrite
the image in flash while the kernel is running in SDRAM
and then reboot the device so it loads the new image? I
only know how to reload my NK image through eboot/tftp.
Thanks for your patience and time, Andrew
>-----Original Message-----
>You can't replace a driver that is currently in use
without invalidating the
>open handles to the driver. You can have all
applications close all open
>handles and then unload the driver. However if it's
built into the main
>image BIN file you would need to update the entire thing
to update the
>driver. If however it is on a storage device like a disk
or Flash media then
>you can just copy in the new one and re-load the driver.
without shutting
>down.
>
>I've worked with a whole lot of RTOS systems over the
years and I've never
>found one that lets you do much in the way of updating
XIP areas on the fly.
>That being said CE does have the ability to do that to a
certain extent. You
>can create MULTIPLE XIP regions and using the BINFS file
system unload the
>entire file system for the region containing your driver
and then re-write
>that portion of flash and reload it again. I've never
actually tested if
>that will all work. The BINFS is normally used for
updating the OS from a
>special boot loader so the unload/load isn't a factor in
that scenario. At
>the moment I can't think of any reasons why it wouldn't
work but there may
>be some.
>
>--
>Steve Maillet (eMVP)
>Entelechy Consulting
>smaillet_AT_EntelechyConsulting_DOT_com
>
>
>.
>
- Next message: FTP: "RE: How to change UDMA timings for ATA controller under CE"
- Previous message: simon: "Re: kernel dll driver"
- In reply to: Steve Maillet \(eMVP\): "Re: Lots of easy questions about drivers/linking"
- Next in thread: Steve Maillet \(eMVP\): "Re: Lots of easy questions about drivers/linking"
- Reply: Steve Maillet \(eMVP\): "Re: Lots of easy questions about drivers/linking"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|
|