割り込みはOSの要であり、OSが周囲の環境と相互作用し反応するための効率的手段となっている。非常に小さなスタック（50バイトや60バイト）しか持たない古いシステムでは、OSが対応しなければならないイベントの発生源を「監視」するポーリング方式を採用していたが、現代の大きなスタックを持つシステムでは一般的ではない。現代の多くのCPUは、割り込みをベースとしたプログラミングを直接サポートしている。割り込みが発生すると、その時点のレジスタコンテキストを退避し、そのイベントに対応した特定のコードを実行する。非常に基本的なコンピュータにもハードウェア割り込み機能があり、プログラマは特定の割り込みが発生したときに実行すべきコードを設定することができる。割り込みを受信すると、コンピュータのハードウェアは実行中のプログラムを自動的に一時停止させ、状態を退避させ、その割り込みに事前に割り当てられているコードを実行する。これは例えば読書中に電話が鳴ったとき、本にしおりを挟み、電話に出るのに似ている。現代的なOSでは、割り込みはOSのカーネルが扱う。割り込みはコンピュータのハードウェアが発生させる場合もあるし、実行中のプログラムが発生させる場合もある。ハードウェアから割り込みが発生した場合、OSのカーネルがそのイベントにどう対応するかを一般に何らかの処理コードを実行して決定する。割り込みには優先順位があり、それに従って実行するコードが決定される。再び人間にたとえれば、電話が鳴ると同時に火災を知らせる火災報知器の非常ベルも鳴ったら、電話には出ずに避難するだろう。ハードウェア割り込みの処理は通常、デバイスドライバと呼ばれるソフトウェアに委任される。デバイスドライバはOSのカーネルの一部という場合もあるし、別のプログラムという場合もあるし、混在する場合もある。デバイスドライバは割り込みによって得た情報を各種手段を通じて動作中のプログラムに中継する。実行中のプログラムがOSに対して割り込みを発生させる場合もある。例えば、あるプログラムがハードウェアにアクセスしたい場合、OSのカーネルに対して割り込みを発生させ、結果として制御をカーネルに移す。するとカーネルは必要な処理を行う。また、プログラムがメモリなどの資源を追加で要求する場合、割り込みを発生させてカーネルに知らせる。ただし、それらは一般にシステムコールと呼ばれ、ハードウェア割り込みとは実装が異なることもある。
OSはアプリケーションプログラムとコンピュータハードウェアの間のインタフェースを提供し、OSに組み込まれた規則や手続きに従うことによってアプリケーションプログラムはハードウェアとやりとりできる。OSはまた、アプリケーションプログラムの開発と実行を簡素化するサービス群も提供する。アプリケーションプログラムの実行にあたって、OSのカーネルがプロセスを生成する。プロセスの生成には、メモリ空間などの資源の割り当て、マルチタスクシステムでのプロセスへの優先度の割り当て、プログラムのバイナリコードのメモリへのロード、アプリケーションプログラムの実行開始といった仕事が含まれる。そうして初めてユーザーやハードウェアデバイスとやりとりを開始できる。
ファームウェアとデバイスドライバの助けを借り、カーネルはコンピュータの全ハードウェアデバイスの基本的制御を提供する。RAM上のプログラムのメモリアクセスを管理し、どのプログラムがどのハードウェア資源へのアクセスを得るかを決定し、常に運用が最適化されるようCPUの状態を設定し、ファイルシステムと共にディスク、磁気テープ、フラッシュメモリといった長期的不揮発性記憶装置でのデータの編成を行う。
OSはアプリケーションソフトウェアを動作させるのが第一の目的である。このためのインターフェースがAPI（アプリケーション・プログラミング・インタフェース）とABI（アプリケーション・バイナリ・インタフェース）である。カーネルはシステムコールによってアプリケーションにサービスを提供する。さらに基本ライブラリも含めた形でアプリケーションに対してAPI/ABIを提供する。アプリケーションによってはOS上のミドルウェアやアプリケーションフレームワークなどをAPIとして使用する場合もある。APIはプログラミングのためのインターフェースであり、プログラムを作成する際の規則を構成する。例えば、C言語での関数やFORTRAN/Pascalなどのライブラリ呼び出しの仕様といったものがそれにあたる。一方、ABIはコンパイルされたソフトウェアがOSの機能を呼び出す際のインタフェースであり、プロセスが動作する際の規則を構成する。例えば、Unix系のOSはAPIがほとんど共通だが、ABIはOSによって異なる。したがって、同じCPUを使ったシステムであっても、ABIが異なれば実行ファイルが異なる。ABIには、呼出規約、システムコールの方法などが含まれる。なお、OSの垣根を越えたABIもいくつか存在する。例えば、OCMP (Open Computing Environment for MIPS Platform) というMIPS系チップを使用したUNIX機によるバイナリ共通インタフェースが日本電気やソニー、住友電気工業、日本タンデムコンピューターズなどにより定義され、その定義に沿ったUNIX-OSが複数販売された。
さらにトゥドハリヤの出自も不明である。一般にフッツィヤ2世あるいはツィダンタ2世の息子あるいは孫とみなされているが、フッツィヤ2世の未亡人シュッミリ（シュムミリ）の夫とする説もある。ハラプとの条約文書でトゥドハリヤは「朕が玉座に登ったとき」と述べているが、通例では「朕が父の玉座に登ったとき」と書くのが普通なので、トゥドハリヤは王であったフッツィヤやツィダンタとの血縁関係になかったとみることも出来る。文書によれば、トゥドハリヤ1世以前の最後の正統な王はフッツィヤ2世であったが、ムワタリ1世に簒奪された。フッツィヤの未亡人シュッミリは二人の息子を唆してムワタリを殺させた。しかしテリピヌ法典では、王を殺した者は王位に就くことは許されないと定められていたので、別の兄弟のトゥドハリヤが王位に就いたとされる。またムワタリの護衛隊長ムワシュが王の仇をとってシュッミリとその二人の息子を殺しムワタリ派を糾合してフルリ人と同盟したが、トゥドハリヤがフルリと戦って王位に就いたともいう。さらにはトゥドハリヤ自身がフッツィヤ殺害の黒幕で、シュッミリと再婚してその連れ子にムワタリを殺させたとする説さえある。
今日の計算機はデータ解析や学習など多様な機能と高い性能が必要なため、目的にあった高性能デバイスを用いて用途に合わせた高性能計算機を構築したいというニーズがある。しかし、従来の計算機構成では、CPUとI/Oデバイス間は、システムバス標準であるPCI Express (PCIe)で、一つの機器内に閉じられている。そのため、I/Oデバイスの数や構成が限られ、用途ごとに特化されたハードウェアをもつ計算機が必要であった。そこで、NECの研究所は、それまで計算機内部で閉じていたPCI Express (PCIe)をネットワーク(Ethernet)上に仮想化し、Ethernetを介してCPUとI/Oデバイスを自由に接続できる計算機スケールアップ技術（ExpEther技術）を開発し、2006年12月に発表した。 2012年5月には、ExpEther技術を搭載したExpEtherブリッジLSIを開発し、初めて製品化。ホスト側に装着する「ExpEtherボード(1G)」、各種I/OデバイスをEthernet経由で接続する「ExpEtherI/O拡張ユニット(1G)」、Ethernetを介してホストに接続する端末「ExpEtherクライアント」の3製品を発売した。    これを用いて世界で初めて、CPU、ストレージ、GPUなどの多種多様な市販PCIeデバイスを、利用目的に合わせて再構成可能な計算機システム(ExpEtherシステム)を実用化した。以降、PCIeとEthernet規格の高性能化に伴い、順次ExpEtherブリッジLSIがリリースされている。2013年10月、伝送性能を従来の1Gから10GBに大幅に向上したExpEtherボードとExpEther I/O拡張ユニットが発売された。 2014年12月には、複数のコンピュータで、Ethernet上のPCIe SR-IOV対応デバイスを同時共有できる新機能を追加したExpEther I/O拡張ユニットが発売された。 2016年2月に40GBへ高性能化したExpEtherボードとExpEther I/O拡張ユニットがUSAで発売され、2017年5月には、日本にて同製品が発売されている。