組み込み技術者を始めるにあたって一番最初に読んでおきたい、すばらしくよくまとまっているアーティクルを見つけた。
http://www.kumikomi.net/article/explanation/2003/10kumi/01.html

以下目次

  1. プログラムはどのように動くのか
  2. main関数以前(スタートアップ)
  3. array[-1]はなぜ動くのか(配列の実体)
  4. volatileを指定したくなるとき
  5. 時間の制御問題(同期と非同期呼び出し)
  6. ポーリングと割り込み
  7. エッジ・トリガとレベル・センス
  8. メモリとポート

WEB 系からきたような人や新人にはどれもわからないことばかりだと思う。(自分がその立場だった)
自分が今携わっている開発は OS レスな LSI で、自分でターゲットボードをブートさせないといけなかったのだが、当初、ターゲットボードをブートさせるにあたりまわりにブート経験者がおらず、とても苦労した。そのときに特にハマった「割り込み」がきっちり解説されているのがこの一連のアーティクルでいい点だと思う。