while Loopをbreakするとsdcardが損傷
Hardware :Microzed Microsdcard ドライブ付き
起動されるOSはlinuxです。
sdcardからFileを読み出し、Task実行終了、Command Prompt受け付け状態でsdcardをunmountすると、次回の起動時
FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
がでます。
sdcardの内容をチェックすると、File類の一つが存在はするがsizeがゼロになっていることがあります。
多くの場合は上記のErrorが表示されても使用できます。
しかし放置はできません。
詳細process:
root@usr:# mount /dev/mmcblk0p1 /mnt# /mnt/startup.sh
root@usr:
myproc Started
Device Driver Open No fd= 3
これによりmyproc内で無限Loop開始
Windows10マシンからTCP/IP接続が行われ、終了時はその回線を切ります。
これによりTarget側はLoopがbreakしCommand Promtに復帰します。
root@usr:# umount /mnt# ls -l /mnt
root@usr:
によりなにも表示されないのでunmountは成功していると思います。
Resetにより再起動。
これでError発生、となります。
sdcardからの読出しは開始のわずかな時間に終了しています。
ですからmyprocのloop中に
umount -l /mnt
としても差し支えはないと思いますが、それはしていません。
sdcardからの読出し後に行われた動作は、sdcardの損傷に関係ないと思います。
それでも上記の不具合、何かの誤認あるいは誤操作があるのかもしれません。
ご示唆いただけると助かります。
回答2件
あなたの回答
tips
プレビュー