計算機的組成
馮諾依曼體系
? ? ? ? 一般而言,計算機的組成遵循著“馮諾依曼體系結構”。這種結構的體現實質上是一種存儲程序的原理,把程序本身當作數據來對待,程序和該程序處理的數據用同樣的方式來存儲。這種結構的要點是:計算機的數制采用二進制;計算機應該按照程序順序執行。
? ? ? ? 由“馮諾依曼體系”可以知道,計算機是由幾個獨立的單元所組成的,包括控制器,運算器,存儲器,輸入設備,輸出設備五大單元所組成。
各組成的功能
??????? 從宏觀角度來講,計算機又分為兩個部分組成,分別是硬件和軟件。硬件的組成對應著“馮諾依曼體系結構”的五大單元。軟件則是由包括匯編語言,系統軟件和應用軟件。一臺正真意義上的標準計算機必須是帶有軟件和硬件的。
硬件:
??????? 控制器:所對應的硬件為CPU,CPU被稱為計算機的中央處理器,它是計算機的核心組成部分??刂破魇撬闹匾M成部分之一??刂破魇怯嬎銠C的指揮系統,它通過地址訪問存儲器,從存儲器中取出指令,經編碼器分析后,更具指令分析結果產生相應的操作控制信號作用于其他部件,使得個部件在控制器下有條不紊地協調工作。
??????? 運算器:所對應的硬件也為CPU,它也是CPU重要的組成部分之一??刂破饔脕韺崿F算數運算和邏輯運算的部件。
??????? 存儲器:存儲器是計算機中用來存放所有數據和程序的記憶部件,它的基本功能是按指定的地址存(寫)入或者?。ㄗx)出信息。計算機中的存儲器可分成兩大類:一類是內存儲器,簡稱為內存;另一類是外存儲器,簡稱外存。存儲器由若干個存儲單元所組成,每個存儲單元都有一個地址,CPU通過地址對存儲單元進行讀寫。存儲器對應著電腦上的內存條和硬盤。內存儲器就是內存,外存儲器就是硬盤。一個存儲器所包含的字節數即為存儲容量,單位為B,KB,MB,GB,TB等。
軟件:
???????? 軟件是指一系列按照特定順序組織的計算機數據和指令的集合。一般來講軟件被劃分為系統軟件,應用軟件和介于兩者之間的中間件。
匯編語言:一種用于CPU的低級語言。它使用助記符代替二進制語言,方便人們的閱讀及操作。一種匯編語言只能與相應的計算機系統結構對應,無法在不同平臺移植。
系統軟件:用來運行或控制硬件所開發的計算機軟件,如操作系統,編譯器,數據庫等。
應用軟件:為了某種特定用途而被開發的軟件。它可以是一個特定的程序,也可以是一個由眾多獨立程序組成的龐大軟件系統。
LINUX的發行版
什么是LINUX
? ? ? ? ? ? ?Linux是一套免費使用和自由傳播的Unix操作系統,是一個基于POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的UNIX工具軟件、應用程序和網絡協議。它支持32位和64位硬件。Linux繼承了Unix以網絡為核心的設計思想,是一個性能穩定的多用戶網絡操作系統。
? ? ? ? ? ? ?該操作系統的內核Linux Torvalds于1991年10月5日首次發布。
LINUX的著名發行版
? ? ? ? ? ? ? 按照程序包管理器的不同,Linux被分成了許多不同的派系。
Linux的主流發行版有一下幾種:
1.Debian
分支: Ubuntu,knopix
2.Slackware
????? 分支:S.u.S.E
???????????? SLES, OpenSUSE
3.RedHat
????? 分支:RedHat Enterprise Linux,? Centos,? Fedora Core.
4.其他版本
????? Gentoo, ArchLinux.
LINUX發行版之間的不同
? ? ? ? ? ? Linux各發行版之間最大的不同之處在于軟件包管理器的不同,不同的系統,軟件包管理系統也不相同。常見的軟件包管理系統有:
dpkg: 一般常用在Debian系列。
rpm : 一般常用于RedHat系列,S.u.S.E也可使用.
前端工具:
apt-get:用于Debian系列
yum:用于RHEL和CentOS
dnf:用于Fedora
ZYpper:用于S.u.S.E和opensuse
urpmi:用于Mandriva Linux和Mageia
LINUX的哲學思想
- 一切皆文件?
? ? ? ? ?此思想是UNIX/LINUX的基本哲學之一。不僅普通文件,目錄,字符設備,快設備等在UNIX/LINUX中都以文件被對待;它們雖然類型有所不同,但是對其提供的只是同一套操作界面。
物理終端:/dev/console
虛擬終端:/dev/tty# [1, 6]
串行終端:/dev/ttyS#
偽終端:/dev/pts/#
- 小型,單一用途的程序;
???? 程序和可執行文件不能太復雜,這樣能夠保證Linux內核的高效運行。
- 連接程序,共同完成復雜功能。
???? 復雜的任務可以通過連接多個簡單的程序實現復雜的功能。對于復雜的功能linux通過許多簡單程序的組合等方式實現,在保證簡單功能的高效性的同時,復雜的程序也必然是高效性的。
- 避免了令人困惑的用戶界面。
???? 在使用windows的過程中,常常會出現一些致命的提示錯誤或誤操作導致系統無形的崩掉,如果解決不了,就要操作系統,這樣的操作大大的給用戶帶來了麻煩。Windows作為一個閉源系統,一旦出現復雜性的問題,一般的人是根本沒有辦法解決的。對于Linux這樣的開源系統,無論什么問題都可以通過簡潔的命令行來實現排錯,修改系統的配置文件,一切都是簡潔明了地實行操作。
- 配置數據庫存儲在文本中。
???? Linux所有的配置信息都存放在文本配置文件中,無論什么配置只需要修改其配置文件即可。
- 盡量避免與用戶交互
???? 方便容易以編程的方式實現自動化任務
Linux系統上命令的使用格式和幾種常用命令的使用方法
命令格式
? ? ? ? ?命令的語法通用格式:command [options] [arguments]
???????? 命令的使用原理:發起命令實則為請求內核將某個二進制程序運行為一個進程。
???????? 命令本身就是一個可執行的程序文件:命令文件為二進制格式的文件,有可能會調用共享庫文件;
命令存放路徑:
普通命令:/bin, ?/usr/bin,? /usr/local/bin
管理命令:/sbin, /usr/sbin, /usr/local/bin
共享庫存放路徑:
32bits庫:/lib,? /usr/lib,? /usr/local/lib
64bits庫:/lib64,/usr/lib64,/usr/local/lib64
*:并非所有的命令都有一個在某目錄與之對應的可執行程序文件
命令必須遵循特定的格式規范:exe, msi, ELF(Linux)
可通過file命令來查詢? 實例:~】#file /bin/ls
命令的兩大類:
???????? Shell程序自帶的命令:內置命令
???????? 獨立的可執行程序文件,文件名即命令名:外部命令
???????? Shell程序是獨特的程序,負責解析用戶所提供的命令,它被稱為命令解析器。查看命令的類型命令:type COMMAND
選項(OPTIONS):
? ? ? ? ? 選項用來指定命令的運行特性;
選項的兩種表現形式:
????????? 短選項:-C,? 舉例:-l, -d
????????????????? 有些命令的選項沒有“-”;如果命令同時使用多個短選項,多數可合并:-l -d = -ld
????????? 長選項:–word, 舉例:–help, –human-readable
????????????????? 長選項不能合并;
參數(ARGUMENTS):
????????? 參數用來指定命令的作用對象;
????????? 有些命令可同時帶多個參數,多個之間以空白字符分隔;
????????? 舉例:ls? -ld? /var/log
常用命令:
ifconfig
????????? ifconfig命令被用于配置和顯示Linux內核中網絡接口的網絡參數。
語法:ifconfig [interface]
常用方法:
ifconfig:查看當前系統中存在的網絡接口設備信息
ifconfig [name]:查看指定的網絡接口設備信息
ifconfig -a:查看所有網絡接口信息(包括非運行狀態下的網卡)
ifconfig [name] up:啟動指定網卡設備工作。
ifconfig [name] down:關閉指定網卡設備工作。
ifconfig [name] add “IPV6 ip address”:添加指定網卡的ipv6地址。
ifconfig [name] del “IPV6 ip address”:刪除指定網卡的ipv6地址。
ifconfig [name] hw ether “MAC address”:修改指定網卡的mac地址。
ifconfig [name] “ip address”:設置指定網卡的ip地址
ifconfig [name] “ip address” netmask “netmask”:設置指定網卡的IP和子網掩碼。
ifconfig [name] “ip address”netmask “netmask”broadcast “ip address”:設置指定網卡的IP和子網掩碼,廣播地址。
iconfig [name] mtu [num]:設置指定網卡的最大傳輸單元。
*:使用此命令若需要永久生效,則需要通過修改配置文件,配置文件路徑為:
/etc/sysconfig/network-scripts/
echo
??? ?echo用來將字符串輸出到終端上。它通常在Shell腳本中使用,以便將狀態信息輸出到屏幕或文件中。
????? 語法格式:echo [short options] [string]
??????????????? echo [long options]
echo -n:不進行換行
echo -e:讓轉義符生效;
轉義符號:
\a:發出警報聲
\b:刪除前一個字符
\c:不加換行符
\f:換行且光標仍停留在原來的位置
\n:換行
\r:光標移至行首,但不換行
\t:制表符
\\:插入“\”字符
????? String可以使用引號,均可使用單引號和雙引號;
????? 單引號:強引用,變量引用不執行替換;
? ? ? ? ? ? ? ? ? ? ?~]# echo ‘$SHELL’
????? 雙引號:弱引用,變量引用會被替換;
? ? ? ? ? ? ? ? ? ? ?~]# echo “$SEHLL”
tty
? ? ? tty用來查看當前的終端設備
???? 語法格式:tty [options]
常用方法:
tty
startx
?????? startx用來帶動x-window。
常用方法:
start:啟動x會話
startx -w:強制啟動x會話
export
?????? 用于將shell變量輸出為環境變量。
?????? 語法格式:bash builtin commands
常用方法:
-f:代表【變量名稱】中為函數名稱
-n:刪除指定的變量。變量實際上并為刪除,只是不會輸出到后續指令的執行環境中。
-p:列出所有shell賦予程序的環境變量
pwd
??????? pwd用來表示以絕對路徑的方式顯示用戶當前的工作目錄。
??????? 語法格式:pwd [options]
常用方法:
pwd:顯示當前用戶的工作目錄
history
??????? history用于顯示指定數目的指令命令,讀取歷史命令文件中的目錄到歷史命令緩沖區,將歷史命令緩沖區寫入命令文件。
??????? 語法格式:bash builtin commands
常用方法:
-c:清空當前的歷史命令
-a:將歷史命令文件中的命令寫入歷史命令文件中
-r:將歷史命令文件中的命令讀入當前歷史命令緩沖區
-w:將當前歷史命令緩沖區命令寫入歷史命令文件中
“number”:打印最近n條歷史命令
shutdown
???????? shutdown用來關閉操作系統
???????? 語法格式:[options…] [time] [wall…]
常用方法:
-c:取消關機
-f:重新啟動時不執行fsck
-F:重新啟動時執行fsck
-h:將系統關機
-k:送出信息給所有用戶,但不會實際關機
-n:不調用init程序進行關機,而由shutdown控制
-r:重啟系統
time:設置多久時間后執行shutdown指令
wall:要傳送給所有登入用戶的信息
poweroff?
?????? poweroff是用來關閉操作系統的另一命令
???????? 語法格式:poweroff [options]
-n:關閉操作系統時不執行sync操作
-w:不是真正意義上的關機
-d:關機時,不將操作寫入日志文件
-f:強制關閉系統
-i:關閉系統之前關閉所有的網卡
-h:關閉操作系統之前將系統中所有的操作設置為備用模式
reboot
???????? reboot用來重啟操作系統
???????? 語法格式:reboot [options]
常用方法:
-d:重新開機時不將數據寫入數據文件/var/tmp/wtmp
-f:強制重新開機,不調用shutdown指令的功能
-i:在重開機之前,先關閉所有網絡界面
-n:重開機之前不檢查是否有未結束的程序
-w:僅做測試使用,并不是真正的將系統重新啟動,只會將重新開機的數據寫入/var/log目錄下的wtmp記錄文件
hwclock
????????? hwclock是一個硬件時鐘訪問工具,它用于顯示當前時間,設置硬件時鐘的時間和設置硬件時鐘為系統時間,也可設置系統時間為硬件時鐘的時間。
????????? 語法格式:hwclock [functions] [options]
常用方法:
-adjust:校正目前的硬件時鐘
-debug:顯示hwclock執行時詳細的信息
-hctosys:將系統時鐘調整與當前的硬件時鐘一致
-set -date:設定硬件時鐘
-show:顯示硬件時鐘的時間與日期
-systohc:將硬件時鐘調整為與當前的系統時鐘一致
-text:測試程序
date
??????? date用于顯示或設置系統時間與日期
??????? 語法格式:date [options] [+format]
常用方法:
-d<字符串>:顯示字符串所指的日期與時間
-s<字符串>:根據字符串設置的日期與時間
+format:格式符
%F:年月日
%T:小時分鐘秒
%Y:年
%m:月
%d:日
%H:小時(24H進制)
%S:秒
%s:秒(從1970-01-01 00:00:00開始到命令執行那一刻的描述unix元年)
LINUX上獲取命令幫助
獲取命令的使用幫助
? ? ? ? ?命令大體分為內部命令和外部命令
???????? 內部命令:help COMMAND
???????? 外部命令:
- 命令自帶簡要格式的使用幫助
? ? ? ? ? #COMMAND? –help
- 使用手冊:manual
位置:/usr/share/man
#man? COMMAND
MAN的section:
NAME:功能性說明
SYNOPSIS:語法格式
DESCRIPTION:描述
OPTIONS:選項
EXAMPLES:使用示例
AUTHOR:作者
BUGS:報告程序bug的方式
SEE ALSO:參考
在SYNOPSIS中:
???????? [ ]:可選內容;< >:必須提供的內容;
???????? a | b | c:多選一; …:同類內容可出現多個;
手冊中有壓縮格式的文件,有章節之分:
man1, man2,…
man1:用戶命令:
man2:系統調用;
man3:C庫調用;
man4:設備文件及特殊文件;
man5:文件格式;(配置文件格式)
man6:游戲使用幫助;
man7:雜項;
man8:管理工具及守護進行;
~]# man? CHAPTER? COMMAND
*:并非每個COMMAND在所有章節下都有手冊;
?????????? 查看:~]# whatis COMMAND
打開手冊后的操作方法:
空格鍵:向文件尾翻一屏;
ctrl+d:像文件尾部翻半屏
ctrl+u:向文件首部翻半屏
回車鍵:向文件尾部翻一行
K:向文件首部翻一行
G:跳轉至最后一行
數字+G:跳轉至指定行
1G:跳轉至文件首部
文本搜索:
/keyword:從文件首部向文件尾部依次查找;不區分字符大小寫;
?keyword:從文件尾部向文件首部依次查找;
n:與查找命令方向相同;
N:與查找命令方向相反;
退出:q:quit
LINUX發行版的基礎目錄名稱命名法則及使用規定
LINUX文件系統
??????? 規則:1.文件名名稱嚴格區分字符大小寫;
? ? ? ? ? ? ? ? ? ?2.文件可以使用除/以外任意字符;
? ? ? ? ? ? ? ? ? ?3.文件名長度不能超過255字符;
? ? ? ? ? ? ? ? ? 4.以.開頭的文件為隱藏文件;
? ? ? ? ? ? ? ? ? ? ? .:當前目錄;
? ? ? ? ? ? ? ? ? ? ?..:當前目錄的上一級目錄;
工作目錄:working directory
家目錄:home
LINUX文件系統描述
/:主層次的根,是整個文件系統層次結構的根目錄;
/bin: 存放在單用戶模式可用的必要命令二進制文件,所有用戶均可用。
/boot:存放引導加載程序文件,如kernels,initrd等;
/dev:存放必要的設備文件
/etc:存放主機特定的系統級配置文件。
/home:用戶的主目錄,包括保存的文件,個人配置,等;
/lib:/bin和/sbin中的二進制嗯我那件的必需的庫文件
/media:可移動的多媒體掛載點。
/mnt:臨時掛載的文件系統
/opt:可選的引用程序軟件包
/proc:以文件形式提供進程以及內核信息的虛擬文件系統,在Linux中,對應進程文件系統的掛載點;
/root:根用戶的主目錄;
/sbin:必要的系統級二進制文件,如,init,ip,mout;
/srv:系統提供的站點特定數據
/tmp:臨時文件通常在系統重啟后刪除;
/usr:二級層級存儲用戶的只讀數據;包含(多)用戶主要的公共文件以及應用程序;
…….
????????
?
????
?
?
?
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/91906
作業寫的很不錯,基礎命令及Linux組成有一個了解,繼續加油。