2020年8月24日月曜日

[Linux] closeしても、プロセス実行が発生してしまう対策

こんにちは


ソフトな道を今日もほのぼのと歩きます。


少し前になりますが「[Linux] スレッド内で使用していたメモリがSIGINTによって壊されていた為でした。」


で進展がありましたので以下記載します。


今までの変更分


1.SIGINT処理ではprintf()は行ってはいけない

2. SIGINT処理で使用する変数型を変える

        [変更前]

            static int 型

        [変更後]

            #include <signal.h>

           

            static volatile sig_atomic_t 型

3.ポインタで渡ってくるデータはローカル変数にコピーして使う。


Segmentation fault


のエラーが3日目に発生していました。


色々調べてみたところ、


プロセスをcloseしても、プロセスが一瞬入ってくるケースがありました。

これにより、openしている時に使用するapiがclose状態で実行されていたため、

想定外な動作の結果Segmentation faultのエラーになって表れていました。


対策としては以下を行うことで解決できました。


[対策]

1. close直前に"終了したことを表すフラグ"= 1にする。

2. close実行。

3. プロセス側で"終了したことを表すフラグ"を監視し1が立っていたら何もせずに抜ける。



2020年8月4日火曜日

[NORTiv4] 本番機が無い時の進め方(GPIO)

こんにちは


ソフトな道を今日もほのぼのと歩きます。


現在、現行機に変わる後継機を作成しています。


OSはNORTi V4を使用しています。


まだ、後継機(ハード)は作成中です。


センサーに反応したらある処理を行う。といった処理を実装しています。


センサーはGPIOで反応するのですが、現行機は筐体に入っていて、


他のGPIOを使って確認するすべがない状態です。


この為、現行機のある時点における、使っていないボタンを代用して


実装していこうと思います。


[今日のひとこと]

からあげの天才をよく利用するのですが


美味しすぎます。周りはサクサク、中はジューシー


一体どんな方法で実現しているのでしょうか。


揚げ方?下ごしらえの方法?教えてほしいです。

(ワタミに就職すれば分かりますか?)


ファミリーパックをネット予約にすれば、


10個→ 12個になります。


また、備考として赤、白、黒のから揚げを指定すれば


チューニングも可能でした。


また来週食べよう。