1.2計算機及操做系統基礎知識1


UNIX編程藝術  講述UNIX歷史的
    system V:簡稱SysV(5版本)
           不少商業公司拿到sys v的copy,而且以之爲藍本,創建本身的商業發行版
                比較流行的有:
        IBM: 硬件平臺 Power, PowerPC,  系統是  AIX
        伯克利大學Bill Joy 等創立的  SUN: Sparc(硬件體系架構), SunOS --> Solaris, Open Solaris
        HP:cpu架構 Alpha, HP-UXlinux

    CPU常見平臺:
    摩托羅拉
            m68000, m68k
         IBM
        Power
    IBM,摩托羅拉,apple組合開發   
                PowerPC
        sun公司
        Sparc, UltraSparc
       惠普
               Alpha
    Intel
                x86
        x86_64
            amd64
        MIPS
        ARM:知本主義    只賣技術.ios

    二進制代碼:cpu對應所支持的指令(對應執行的指令)
        add: --> 彙編器(翻譯器) --> 翻譯成對應二進制格式的指令
        芯片:彙編語言  也稱爲  微碼語言
        微碼編程:程序員

        C語言  由編譯器處理獲得機器能執行的指令
            預處理、編譯、彙編、連接編程

        調用:庫   某些公用的程序,本身是不能執行的,只能被調用   .dll 動態鏈接庫   .so  共享對象
            基本庫:也稱爲標準庫安全

    DOS (單用戶、單任務系統)--> Windows (基於dos上來運行) 常因資源競爭而藍屏bash

    DEC公司: 兩種小型機  VAX:  研發vms系統 , PDP   後來要使用 UNIX,vms就不使用 
       微軟收了vms
    WindowsNT(基於vms內核的)服務器

    微軟和IBM,研發了 OS/2,後微軟退出 --> 微軟購買了OS/2,修改後獲得Vista(微軟用vms來修改OS/2獲得)架構

    BSD-->SysV  爭論
    BSD最後一次發行版:BSD Lite  從新包裝BSD發行版,後解散了
        後來被各自由軟件維護後   BSD系列系統
                FreeBSD --> MAC OS, ios
        NetBSD
        OpenBSD  安全的系統app

    因爲UNIX商業後,受權費用很貴,就開發了一個Minixdom

    MIT: Stallman倡導自由, Freedom
        口號稱爲:GNU: Gnu is Not Unix.   自由軟件運行到UNIX上
        須要遵循GPL協定: General Public License   通用公共許可證
            emacs, vi, bash   可是這些程序都是須要運行在UNIX上

        Linus: 仿照minix,根據UNIX,寫了一個Linux (是操做系統的核心)

                包裝發行Linux    GNU/Linux

        GNU/Linux   C語言寫的

    源代碼 --> 機器代碼
               編譯器
                 主版本號  次版本號   發行號
        版本號:major.minor.release
            2.1.4, 3.10.18

    發行版:把GNU軟件編譯好二進制程序在加上Linux內核

搜索  linux timeline  查看發行時間線路
發行商:
    slackware
        二次分支:s.u.s.E
    Debian
        Ubuntu
    Redhat

面向我的應用的發行版到9後    redhat 9 --> 捐贈給 Fedora

服務器版    RHEL: RedHat Enterprise Linux 3   每18個月一個新版本

    redhat: GPL, GNU

    社區版的Linux   CentOS:
        Community ENTerprise OS
         建議使用debian  桌面版

    LFS: Linux From Scratch   從零構建Linux
        書:
         任何兩個層次的不協調均可以經過添加中間層來處理協調關係

                     應用程序         
                     A    P     I          syscall(系統調用)                
                    Linux             系            統     把底層硬件的不一樣作徹底封裝,並提供給程序員開發接口
                    硬件(cpu 、內存、硬盤等)
     預處理:把宏替換、頭文件包含   編譯:把源代碼轉化成目標代碼
     彙編:  彙編成硬件可以識別的硬件指令      連接:
X86的cpu是有特權級別的,cpu是由4個環,把指令分紅4類,應用程序只能使用最外層的ring3
通常指令在ring 3,最內層是ring 0,ring 0只有內核有權限使用 。
應用程序是直接運行在cpu上的,可是受控於內核。
應用程序在內存中使用也是如此,應用程序是看不到內存的,由於內存是虛擬出來的,只有操做系統才能看到

    API:Application Programming Interface  應用程序接口     ABI:Application Binary Interface               應用程序二進制接口   操做系統提供的運行環境(不一樣操做系統是通常是不兼容的)

相關文章
相關標籤/搜索