2016/08/16

[c/c++]私のC言語 (1)

気力がないときでも書けるようなシリーズを作ろう、と思い立ち、普段使っているC言語のことを書くことにした。
なるべく記事は毎日書きたいのだけど、今やっている仕事のことは書けないし、記事に書くまでもないようなことをやっていることも多いので、そういうときの逃げがほしいのだ。

コーディングは、たぶん9割以上C言語でやっているので、ネタとしては困りにくいんじゃなかろうか、と思ったのだ。


第1回 組み込みとC言語

社会人になってからは医療機器メーカーだったのでC言語などで組み込みソフトウェア開発をやっていたので、もう組み込みソフトウェア開発専用で生きている。
ちょっと、他のこともできないとまずいな。。。とは思うけど、飯の種としてはこれしかないのだ。

たまに、JavaやC#をやったりすると、メモリを直接操作したい。。。と思う。
あまり他の言語に詳しいわけじゃないけど、メモリを直接操作するのは危ないから、新しい言語はそうさせないようになっていってるんじゃなかろうか。

JavaはJVM、C#は.NET Frameworkの上で動く前提だと思うから、小さいマイコンでは動かすのは難しいだろうが、そういうのがない言語であればメモリ操作さえなければ組込用であっても使えるんじゃなかろうか?

ただ、組み込みで「Hello, World!」といっても、よくてUART経由で出力させることになるだろうから、どうやってUART制御する?ということになって、OSが載っているわけでもないから自分で作るか、となる。
そうなってくると、UARTのレジスタがあるメモリを直接操作したいので、C/C++以外だとちょっと厳しいんじゃなかろうか、と思うのであった。

 

「組み込み」と書いたけど、方面によってやってることがいろいろ違うと思う。
たぶん「WEBアプリ」とひとくくりにまとめたらいかんのと同じようなもんだろう。

私は、比較的小さな、卓上で動く程度のサイズのものが多い。
工場で動くロボットや、自動車内で使うようなお仕事はやっていない。受託だし。
小さいと、電池で動くか、ACアダプタで動かすようなものになる。
そういうなると、電池があまり減らないようにとか、連続で使っても熱くならないのがいいとか、そういうことが気になってくる。

 

何が言いたかったかというと、同じC言語を使うにしても、扱う装置によってノウハウが違うので、自分でずっと普通だと思っていたやり方が、違う装置になって通用しない!みたいなこともあるだろうなあ、と思ったのだ。
お客さんによっても要望が違ったりするし。

なので、これからときどき「私のC言語」ということで書いていくけど、そういう人もいるのね、くらいで思ってもらえればいいな、と防御線を張ったのでした。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。