埋め込みLinuxC言語の小さな常識

4677 ワード

LinuxとUnixの関係と違い
関係:Linuxは無料で使用され、自由に伝播するUnixオペレーティングシステムで、主にIntel x 86シリーズCPUに基づくコンピュータに使用されています.このシステムは世界各地の何千人ものプログラマーによって設計され実現されている.その目的は、いかなる商品化ソフトウェアの著作権にも制約されず、世界中で自由に使用できるUnix互換製品を構築することである.
違い:UNIXシステムの多くはハードウェアとセットになっているが、Linuxは多種のハードウェアプラットフォームで運行できる.
UNIXは商業ソフトウェアであり、Linuxはフリーソフトウェアであり、ソースコードを無料、公開している.
Linuxの発展マイル:1981年にIBM社がマイクロコンピュータIBM PCを発売した.
1991年、GNU Cコンパイラが登場し、Linuxユーザーの基礎と開発環境を築いた.
1991  4  13   comp.os.minix             bash     minix  ,        、      shell    。
1991 7 3 ,    Linux       comp.os.minix    (        Linux    ,     ·            FREAX,FREAX         、  、     )。
1991  10 5 ,   ·    comp.os.minix        ,      Linux     (Freeminix-like kernel sources for 386-AT)。
1993 ,   100        Linux      /    ,      5   ,  Linux 0.99         ,     10   。
1994 3 ,Linux1.0  ,   17  ,                ,      GPL  。
1998 2 , Eric 
Raymond " " GNU/Linux , , ,
 "Open Source Intiative"(        )"  "   ,                Linux     。
 
  


2001 1 ,Linux 2.4 , SMP , :USB,PC (PCMCIA) , , 。

2003 12 ,Linux 2.6 , 2.4 2.6 。
2004 1 ,SuSE Novell,SCO “ ”, Asianux, MandrakeSoft 。3 ,SGI Linux 256 Itanium 2 。
 
  
1995 1 ,Bob Young   RedHat(   ), GNU/Linux   ,   400            ,          Linux, RedHat Linux,  Linux"   ",      。            。

1996 6 ,Linux 2.0 , 40 , 。 Linux , 350 。
   Gnu  ?
   “    ”,     ·    1983 9 27                。                  GNU。
   GPL  ?

フリーソフトウェアで使用される様々なライセンスの中で、最も注目されているのは汎用公開ライセンス(General Public License、GPLと略称)かもしれない.
GPLは他のフリーソフトウェアライセンスと同様に、ライセンス社会の公衆は、ソフトウェアの実行、複製の自由、伝播ソフトウェアの発行の自由、ソフトウェアソースコードの自由を獲得し、ソフトウェアを改善し、自分が作った改善バージョンを社会に発行する自由を享受している.GPLはまた、このような修正テキストが全体的またはその一部がGPLに従うプログラムに由来する限り、その修正テキストの全体がGPLに従って流通しなければならず、その修正テキストのソースコードが社会に公開されなければならないだけでなく、このような修正テキストの流通に対して修正者自身の制限を付加することは許されないと規定している.したがって,GPLフローに従うプログラムは,非自由なソフトウェアと統合できない.GPLが表すこのような流通規則をcopyleftと呼び,copyright(著作権)の概念と「左」を表す.
GPLプロトコルの最も主要ないくつかの原則:
1、ソフトウェアが最初から最後までオープンソース形式で配布されることを確保し、開発成果が商業発売として盗まれないように保護する.GPLプロトコルによって保護されたサードパーティ製ソフトウェアのソースプログラムが使用され、非開発者に配布されると、ソフトウェア自体が自動的にGPLによって保護され、制約されたエンティティになります.つまり、ソースコードを開く必要があります.
2、GPLは大体左側の著作権(Copyleft、または「反著作権」、「著作権は左に属する」、「著作権はない」、「版責」と訳される.など)の表現.すべての原作の著作権情報を削除することができます.オープンソースを維持し、ソースコード、バイナリ版にGPLのライセンスを添付すればいいので、後世にこのソフトウェアのライセンス情報を明確に知ることができます.GPLの真髄は,ソフトウェアを完全にオープンソースの場合に,できるだけ使用者が自由に発揮できる空間を得て,ソフトウェアをより速くよりよく発展させることである.
3、ソフトウェアがどのような形式で配布されても、ソースコードを同時に添付する必要があります.例えばWeb上でダウンロードを提供するには、バイナリバージョン(もしあれば)でダウンロードした同じページに、ソースコードダウンロードのリンクを明確に提供しなければならない.光ディスク形式で公開する場合は、ソースファイルの光ディスクを同時に添付しなければならない.
4、GPLプロトコルに従って開発されたソフトウェアを開発または維持する会社または個人は、使用者に一定のサービス費用を徴収することができる.しかし、ソフトウェアの完全なソースコードを無償で提供しなければならず、ソースコードをサービスとバンドルしたり、バンドルしたりして販売してはならないという古い言葉です.
POSIX規格
POSIXは移植可能なオペレーティングシステムインターフェース(Portable Operating System Interface、略称POSIX)を表し、POSIX規格はオペレーティングシステムがアプリケーションに提供すべきインターフェース規格を定義し、IEEEは各種UNIXオペレーティングシステム上で動作するソフトウェアで定義される一連のAPI規格の総称であり、正式にIEEE 1003と呼ばれ、国際規格名はISO/IEC 9945である.
POSIX規格は、ソースコードレベルのソフトウェア移植性を得ることが望ましいことを意図している.言い換えれば、1つのPOSIX互換性のあるオペレーティングシステムのために作成されたプログラムは、他の任意のPOSIXオペレーティングシステム(他のメーカーからでも)でコンパイルして実行することができるはずである.
POSIXはUNIXに限定されない.DEC OpenVMSがPOSIX規格をサポートするなど、他の多くのオペレーティングシステムがあります.特にIEEE Std.1003.1-1990(1995年改訂)またはPOSIX.1において、POSIX.1は、ソースコードレベルのC言語アプリケーションプログラミングインターフェース(API)をオペレーティングシステムに提供するサービスプログラム、例えば、ファイルの読み書きを提供する.POSIX.1は、国際標準化機構(International Standards Organization,ISO)によって受け入れられ、ISO/IEC 9945-1:1990標準と命名されている.