linux作業系統基礎:1、作業系統區分實體記憶體和虛擬記憶體;2、了解記憶體和硬碟的關係;3、各部分常出現的漏洞,如cpu容易出現該類瓶頸的郵件伺服器、動態web伺服器;4、掌握Linux本身的一些最佳化。
linux作業系統基礎:
1.作業系統總體介紹
#•CPU: 就像人的大腦,主要負責相關事情的判斷以及實際處理的機制。
查詢指令: cat /proc/cpuinfo
•記憶體: 大腦中的記憶區塊,將皮膚、眼睛等所收集到的資訊記錄起來的地方,以供CPU進行判斷。查詢指令: cat /proc/meminfo
物理記憶體
物理內存,就是我們將記憶體條插在主機板記憶體槽上的記憶體的容量的大小。看電腦配置的時候,主要看的就是這個實體記憶體
虛擬記憶體
Windows中運用了虛擬記憶體技術,即拿出一部分硬碟空間來充當記憶體使用,當記憶體佔用時,電腦就會自動調用硬碟來充當內存,以緩解內存的緊張。
關係:windows中虛擬記憶體和實體記憶體可能都會被使用,linux中,只有實體記憶體使用完了,才會使用虛擬記憶體
•硬碟: 大腦中的記憶區塊,將重要的數據記錄起來,以便未來能再次使用這些數據。
查詢指令: fdisk -l (需要root權限)
2.記憶體和硬碟的關係
具體指令後面會介紹
3.作業系統監控指令>單獨寫一份
#•vmstat
•sar
• iostat
•top
•free
•uptime
#•netstat
•ps
•strace
•lsof
4.如何分析作業系統
實際流程:讀取資料》資料>硬碟》虛擬記憶體(swaP)》記憶體》 cpu快取》執行佇列
分析方向,剛好相反
5.各個部分常出現的漏洞
•CPU: 容易出現該類別瓶頸的郵件伺服器、動態網頁伺服器
•記憶體: 容易出現該類別瓶頸的列印伺服器、資料庫伺服器、靜態網頁伺服器
•磁碟I/O: 頻繁讀寫操作的項目
•網路頻寬: 頻繁大量上傳下載項目
#6.Linux本身的一些最佳化
1.系統安裝最佳化
當安裝linux系統時,磁碟分割、 SWAP記憶體的分配都會直接影響系統效能。對於虛擬記憶體SWAP的設定,現在已經沒有了所謂虛擬記憶體是物理記憶體兩倍的要求,但是根據經驗,如果記憶體較小(實體記憶體小於4GB),一般設定SWAP交換分割區大小為記憶體的2倍;如果實體記憶體大約4GB小於16GB,可以設定SWAP大小等於或略小於實體記憶體即可;如果內存在16GB以上,原則上可以設定SWAP為0,但最好設定一定大小的SWAP
• 2. 核心參數最佳化
例如,如果系統部署的oracle資料庫應用,那麼就需要對系統共享記憶體段( kernel.shmmax, kenerl.shmmni, kernel.shmall)、
系統信號量( kernel.sem)、檔案句柄( fs.file0max)等參數進行最佳化設定;如果部署的WEB應用,那麼就需要根據web應用特性進行網路參數的最佳化,例如修改net.ipv4.ip_local_port_range、net. ipv4.tc_tw_reuse、net.core.somaxconn等網路
核心參數
• 3. 檔案系統最佳化
在linux下可選的檔案系統有ext2,、ext3 、 xfs、 ReiserFS
linux標準檔案系統是從VFS開始,然後ext、ext2, ext2是linux上的標準檔案系統, ext3是在ext2基礎上增加日誌形成的。從VFS到ext3,設計想法沒有太大變化,都是早期UNIX家族基於超級塊和inode的設計概念設計而成。 XFS檔案系統是SGI開發的一個高級日誌檔案系統,透過分散處理磁碟請求、定位資料、保持cache的一致性來提供對檔案系統資料的低延遲、高頻寬的訪問,因此XFS極具伸縮性,非常健壯,具有優異的日誌記錄功能、可擴充性強、快速寫入等優點。 ReiserFS在Hans Reiser領導下開發出來的一款高效能的日誌檔案系統,透過完全平衡樹來管理數據,包括檔案資料、檔案名稱及日誌支援等。與ext2、 ext3相比,最大的優點是存取效能和安全性大幅提升。具有高效率、合理利用磁碟空間,先將的日誌管理機制,刻意的搜尋方式,海量磁碟儲存等優點
4.重點知識
#實體記憶體和虛擬記憶體
(1).如何查看實體記憶體和虛擬記憶體?
Top 指令可以檢視實體記憶體與虛擬記憶體的數值
(2).Buffer
是硬碟控制器上的一塊記憶體晶片,具有極快的存取速度,它是硬碟內部儲存和外部介面之間的緩衝器。由於硬碟的內部資料傳輸速度和外界介面傳輸速度不同,快取在其中扮演一個緩衝的角色。快取的大小與速度是直接關係到硬碟的傳輸速度的重要因素,能夠大幅提升硬碟整體效能。
(3).Cache
CPU快取(Cache Memory)是位於CPU與記憶體之間的暫存器,它的容量比記憶體小的多但是交換速度卻比記憶快很多。快取的出現主要是為了解決CPU運算速度與記憶體讀寫速度不匹配的矛盾,因為CPU運算速度要比記憶體讀寫速度快很多,這樣會使CPU花費很長時間等待資料到來或把資料寫入記憶體。在快取中的資料是記憶體中的一小部分,但這一小部分是短時間內CPU即將訪問的,當CPU調用大量資料時,就可避開記憶體直接從快取中調用,從而加快讀取速度
(4).CPU中斷
當CPU執行完一條現行指令時,如果外設向CPU發出中斷請求,那麼CPU在滿足回應的情況下,將發出中斷回應訊號,同時關閉中斷,表示CPU不在受理另外一個裝置的中斷。這時,CPU將尋找中斷請求來源是哪一個設備,並保存CPU自己的程式計數器(PC)的內容。然後,他將轉移到處理該中斷來源的中斷服務程序。 CPU在保存現場訊息,設備服務(如交換數據)以後,將恢復現場資訊。在這些動作完成以後,開放中斷,並回到原來被中斷的主程式的下一個指令。
(5).上下文切換
上下文切換(Context Switch) 或在環境切換
多任務系統中,上下文切換是指CPU的控制權由運行任務轉移到另外一個就緒任務時所發生的事件。
在作業系統中,CPU切換到另一個進程需要保存目前進程的狀態並恢復另一個進程的狀態:當前運行任務轉為就緒(或掛起、刪除)狀態,另一個被選定的就緒任務成為目前任務。上下文切換包括保存目前任務的運行環境,恢復將要運行任務的運行環境。
進程上下文以進程的PCB(進程控制區塊,也稱為PCB,即任務控制區塊)表示,它包括進程狀態,CPU暫存器的值等。
通常透過執行一個狀態保存來保存CPU目前狀態,然後執行一個狀態復原重新開始運作。
上下文切換會對效能造成負面影響。然而,一些上下文切換相對其他切換而言更加昂貴;其中一個更昂貴的上下文切換是跨核上下文切換(Cross-Core Context Switch)。一個執行緒可以運行在一個專用處理器上,也可以跨處理器。由單一處理器服務的執行緒都有處理器關聯(Processor Affinity),這樣會更有效。在另一個處理器核心搶佔和調度執行緒會造成快取遺失,作為快取遺失和過度上下文切換的結果要存取本機記憶體。總之,這稱為“跨核上下文切換”。
6.進程與執行緒
程式概念
進程是表示資源分配的基本單位,又是調度運作的基本單位。例如,使用者執行自己的程序,系統就建立一個流程,並為它分配資源,包括各種表格、記憶體空間、磁碟空間、I/O裝置等。然後,把該行程放人進程的就緒佇列。進程調度程序選中它,為它分配CPU以及其它有關資源,該進程才真正運行。所以,進程是系統中的並發執行的單位。
執行緒概念
執行緒是進程中執行運算的最小單位,也是執行處理機調度的基本單位。如果把行程理解為邏輯上作業系統所完成的任務,那麼執行緒表示完成該任務的許多可能的子任務之一
行程和執行緒的關係
(1)一個執行緒只能屬於一個行程,而一個行程可以有多個執行緒,但至少有一個執行緒。 (2)資源分配給進程,同一進程的所有執行緒共享該進程的所有資源。
(3)處理機分給線程,也就是真正在處理機上執行的是執行緒。
(4)執行緒在執行過程中,需要協同同步。不同行程的執行緒間要利用訊息通訊的辦法實現同步。
相關學習推薦:linux影片
:
######################1.Linux是大小寫敏感的系統,舉個例子,Mozilla, MOZILLA, mOzilla和 mozilla是四個不同的命令(但是只有第四個mozilla是真正有效的命令)。還有,my_filE, my_file,和 my_FILE是三個不同的檔案。使用者的登入名稱和秘密也是大小寫敏感的(這是因為UNIX系統和C語言的傳統一向是大小寫敏感所致)。
2.檔案名稱最多可以有256個字符,可以包含數字,點號”.”,下劃線”_”,橫桿”-”,加上其他一些不被建議使用的字符。
3.檔案名稱前面帶”.」的檔案在輸入”ls”或”dir” 指令時一般不顯示。可以把這些文件看作是隱含文件,當然你也可以使用指令”ls –a」來顯示這些文件。
4.「/」對等於DOS下的」\」(根目錄,意味著所有其他目錄的父目錄,或是在目錄之間和目錄和檔案之間的一個間隔符號)。舉個例子,cd /usr/doc。
5.在Linux系統下,所有的目錄顯示在單一目錄樹下(有別於DOS系統的磁碟機識別)。這意味著所有的實體設備上的所有檔案和目錄都合併在單一的目錄樹下。
6.在設定檔裡,以#打頭的行是註解行。在修改設定檔的時候盡量不要刪除舊的設定――可以把原來的設定加上」#」變成註解行,總是在修改地方對應地加入一些關於修改的註釋,你會發覺在以後的管理中獲益多多。
7.Linux是繼承性的多用戶作業系統。你的個人設定(和其他使用者的個人設定)放在你的主目錄下(一般是/home/your_user_login_name)。許多的設定檔的檔名都以”.”開頭,這樣用戶一般看不到這些文件。
8.整個系統範圍的設定大致放在目錄/etc下。
9.和其他的多用戶作業系統類似,在Linux下,檔案和目錄有自己的擁有者和存取權限。一般來說,你只被允許檔案到你的主目錄下(/home/your_user_login_name)。學習一些關於檔案權限管理的相關知識,否則你一定會覺得Linux實在很麻煩。
10.指令參數選項一般由”-”引導,後面跟著一個字元(或”--“,當選項超過一個字元時)。這樣,”-”有點象DOS下的”/”。舉個例子,輸入指令 rm --help。
相關推薦:程式設計影片課程
以上是linux作業系統基礎有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

Linux的发行版有很多,这里罗列7个漂亮的Linux发行版,可以说是Linux操作系统界的颜值担当了。elementaryOS网站:https://elementaryos.cnelementaryOS操作系统是最漂亮的Linux发行版之一。它基于macOS外观,同时为Linux用户提供了出色的用户体验。如果用户已经习惯使用macOS,则使用elementaryOS不会有任何问题。另外,elementaryOS操作系统基于Ubuntu,因此用户也可以轻松找到大量应用程序来完成任务。elemen

内核空间和用户空间对于32位操作系统而言,它的寻址空间(也称为虚拟地址空间或线性地址空间)大小为4G(即2的32次方)。这意味着一个进程可以拥有最大4G的地址空间。操作系统的核心是内核(kernel),它是与普通应用程序分离的,有权限访问受保护的内存空间和底层硬件设备。为了保证内核的安全,现代操作系统通常限制用户进程直接操作内核。通常,这通过将虚拟地址空间划分为两个部分来实现,即内核空间和用户空间。就Linux操作系统而言,最高的1G字节(从虚拟地址0xC0000000到0xFFFFFFFF)被

linux系统下svn安装方式常见有3种:1、使用操作系统预编译的软件包工具,如在“Ubuntu/Debian”上使用“sudo apt-get update”“sudo apt-get install subversion”进行安装;2、从源代码编译安装,官网下载源代码然后在Linux终端执行命令进行编译和安装;3、使用第三方包管理器如“Yum”进行安装,注意依赖项问题即可。

在这里为大家介绍一下统信uos安装的配置要求,统信uos是一款基于Linux内核的国产操作系统,具有稳定、安全、易用等特点,因此在国内得到了广泛的应用,为了确保统信uos的顺利安装和运行,我们需要了解它的配置要求。硬件配置统信uos的安装对硬件有一定的要求,具体如下:处理器:x86或x86_64架构的处理器,建议使用主频在1GHz以上的处理器。内存:至少2GB内存,建议使用4GB或以上内存。硬盘:至少20GB可用空间的硬盘,建议使用SSD固态硬盘以提高系统运行速度。显卡:支持DirectX9.0

一、前言在学习Linux操作系统时,你是否曾经有过这样的疑问:为什么我们的电脑能够识别并使用不同的USB设备呢?为什么Linux系统不会把鼠标当成键盘来使用呢?让我们一起来探讨一下USB设备在Linux系统中的识别和加载过程。二、USB设备的识别和加载当我们将一个USB设备插入电脑时,Linux内核会自动检测并加载相应的驱动程序,使设备能够正常工作。接下来,我们将深入探讨USB设备在Linux系统中的识别和加载过程。2.1USB控制器检测设备插入USB控制器是一个硬件设备,用于控制USB总线上的

如果一个系统被多个用户使用,你或许出于个人原因想在文件管理器中隐藏一些文件或文件夹不让其他人看到(绝大多数用户不会对Linux系统进行深入了解,所以他们只会看到文件管理器列出的文件和文件夹),我们有三种方法可以来做这件事。此外,(除了隐藏)你还可以使用密码保护文件或文件夹。在这个教程中,我们将讨论如何用非重命名的方法在文件管理器中隐藏文件和文件夹。我们都知道,通过以点(“.”)前缀重命名一个文件或文件夹的方式,可以在Linux中将该文件或文件夹隐藏。但这不是隐藏文件或文件夹的正确/高效方式。一些

在Unix或Linux操作系统上,scp实用程序(securecopy)与更著名的命令cp类似,但用于在安全加密的网络上在主机之间传输文件和目录。由于它依赖于ssh进行数据传输,因此它提供了相同的安全性并使用了相同的身份验证ssh。与rcp不同,scp命令将提示您输入用于身份验证的密码(如果需要)。在本文中,我们将深入研究Linux中文件的安全传输,并学习如何使用scp命令。通过对常用scp开关和选项的详细解释和示例用例,您将了解如何使用此实用程序。在开始之前了解以下这些很重要由于scp依赖于s


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),