2011-02-07 29 views

回答

1

這是一個廣泛和漂亮的平臺特定的問題。福斯特,你沒有告訴我們你的平臺太多,所以我們必須做出假設。我假設,基於你使用redboot和談論你在ARM上運行的「分區」,並且你的操作系統映像存儲在永久存儲器(即Flash)中。

接下來的問題是「OS如何以及在哪裏存儲?」這是平臺特定的,所以只有你(或你的OEM)可以說。它可能位於FAT 32卷內,或者可能在任何文件系統之外的閃存中被原始寫入閃存中的特定位置。如果它是前者(可能不是,或者你可能不會問這個問題),你可以複製它。如果它只是在原始位置,您將需要API來直接訪問閃存。查看OEM是否提供了它們(應用程序無法直接映射到6.0中的硬件,因此如果沒有OEM提供的API,則必須編寫驅動程序)。

你還需要知道你是否是XIP。如果是這樣,我認爲在運行時不會複製操作系統 - 至少我認爲這是一項高風險操作。在這種情況下,您可能需要在現有文件系統之外的某個位置(EEPROM,暫存區域管理器,原始閃存等)設置某種位並重新啓動,然後修改引導加載程序以進行復制。

這一切都假定你的意思是你想從設備本身複製它。你可能想要使用JTAG工具複製它,在這種情況下,我所說的一切都是無關緊要的(除了操作系統的位置 - 即使你認爲你想從外部來源)。