---初始Linux---

一、認識計算機

計算機 = 硬件 + 軟件

硬件:就是計算機系統中由電子、機械和光電元件等組成的各種物理裝置的總稱(CPU\GPU\...)

軟件:是用戶和計算機硬件之間及進行交流的工具

然而一個簡單的計算機或者說基本的計算機就是有兩大部分組成的:操作系統 + 硬件

其中,操作系統其實就是軟件中的一種,是一種系統軟件

二、操作系統

認識

管理計算機硬件與其他軟件資源的計算機程序,同時也是計算機系統的內核和基石。

用在什么地方?

  • 管理與配置內存【資源調度】
  • 決定系統資源供需的優先次序(簡答理解就是當兩款軟件同時運行的時候,操作系統會據決定由哪個軟件優先使用當前的系統資源)【資源調度】
  • 控制輸入設備與輸出設備(輸入設備有鼠標、鍵盤等,輸出設備有顯示器、打印機等)
  • 操作網絡與管理文件系統等基本事務。(比如平時上網操作系統也得管,新建文件、刪除文件、打開文件、保存文件等操作系統也得管)
  • 操作系統也提供了一個讓用戶與系統兩者之間進行交互的操作界面。(這個指的就是我們平時使用的圖形化界面,通過圖形化界面,我們就可以利用鼠標跟操作系統之間進行交互了)

?總的來說,用戶想要使用軟件需要操作系統調度,想要使用硬件交流也需要操作系統做橋梁

主流操作系統

桌面操作系統(PC):Windows、MacOS、Linux

嵌入式操作系統:Linux

服務器操作系統:Linux、Windows Server

移動設備操作系統:Unix【ios】【Linux【Android】【華為鴻蒙】】

?

  • Linux作為服務器的操作系統,安全穩定,而且免費開源。
  • Windows Server它的使用率非常低,最大的原因就是它是微軟推出來的,是收費的要給錢的。
  • 像智能手表、智能微波爐、智能錄像機等等,它里面的操作系統就是嵌入式操作系統。
  • 移動設備:手機、平板,它里面使用的這個操作系統,是叫做Unix操作系統
  • 根據Unix操作系統又漸漸的演變出了Linux還有IOS
  • 而安卓它是由Linux演變而來的,而Linux又是由Unix演變而來的。
  • 世界五百強當中的百分之95的企業都使用的是Linux操作系統。

?三. 初識Linux?

什么是Linux?
1. Linux是一套免費使用和自由傳播的類Unix操作系統。
2. Linux操作系統是基于以前的Unix操作系統而開發出來的。
3. 是一個基于POSIX和Unix的多用戶、多任務、支持多線程和多CPU的操作系統。
4. 它能運行主要的Unix工具軟件、應用程序和網絡協議。它支持32位和63位硬件。
5. Linux繼承了Unix以網絡為核心的設計思想,是一個性能穩定的多用戶網絡操作系統。
Linux的特點
兩個基本思想:a.一切都是文件(包括命令、硬件和軟件設備、操作系統進程等等)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??b.每個軟件都有確定的用途
1. 多用戶、多任務
2.?Linux是有圖形化界面的,但是除了圖形化界面之外,Linux還有字符的操作界面,這個字符的操作界面就跟Windows里面的cmd命令行是一樣的,我們可以通過一些命令去操作計算機
3. 支持多種平臺(Linux可以運行在多種硬件平臺上)
其它三大優點:a.源代碼完全開源 ? b.具有非常強大的網絡功能 ? ? c.工具鏈完整(簡單操作就可以配置出合適的開發環境,可以簡化開發過程,減少開發中仿真工具的障礙,使系統具有較強的移植性)
Linux和Unix的區別
Linux是基于Unix的,也就是說Linux它是由Unix演變而來的。
開源情況:

Linux它是開源的,而Unix它是不開源的,使用是需要收費的。
硬件適用:

Unix系統大多是跟硬件配套的,能在你電腦當中成功運行,但是在別人的電腦當中不一定能成功運行,因為你們兩個人的硬件是有可能不太一樣的。
但是Linux就非常好了,它可以運行在多種硬件平臺上。
本質不同:

Linux它是開放源代碼的自由軟件,用戶的自主權會非常的高。
而Unix是看不到源代碼的,用戶的自主權幾乎為零。

認識POSIX

POSIX(Portable Operating System Interface of UNIX,UNIX可移植操作系統接口)是一系列標準,旨在為操作系統提供一致的接口,使得軟件能夠在不同的UNIX系統和其他兼容系統上運行而無需修改。POSIX定義了操作系統應提供的系統服務、庫函數、命令行工具和程序的語法標準。

POSIX標準包括:

1. 系統接口:包括進程管理、文件系統、網絡通信、設備I/O等。

2. 庫函數:C語言標準庫中定義的函數,如字符串處理、數學計算、時間處理等。

3. 命令行界面:定義了一組標準的命令行工具和它們的使用方式。

4. 編程語言:支持多種編程語言,包括C、C++、Fortran、Ada等。

5. 文件系統:定義了文件和目錄的組織方式。

6. 權限和安全:定義了用戶權限和安全模型。

7. 信號處理:定義了進程間通信的信號機制。

POSIX標準使得UNIX和類UNIX系統(如Linux、macOS、FreeBSD等)能夠提供一致的編程環境,從而簡化了軟件開發和移植過程。

此外,POSIX標準也影響了非UNIX系統的開發,許多非UNIX系統也實現了POSIX兼容的接口,以提高軟件的可移植性。

?

?更細節的如下:

Linux系統是一種基于UNIX的開源操作系統,它由多個部分組成,每個部分都有特定的作用和功能。以下是Linux系統的組成以及各部分的作用和聯系:

1. 內核(Kernel):
? ?- 作用:內核是Linux系統的核心,負責管理系統資源,包括內存管理、進程管理、文件系統、設備驅動等。
? ?- 聯系:內核作為操作系統的橋梁,連接硬件和軟件,為用戶空間的程序提供執行所需的服務。

系統級軟件:

2. 文件系統(File System):
? ?- 作用:文件系統是Linux系統中存儲和組織數據的方式。它提供了一種層次化的方法來訪問文件和目錄。
? ?- 聯系:文件系統構建在內核之上,允許用戶和應用程序訪問、讀取、寫入和組織數據。

3. Shell(命令行界面):
? ?- 作用:Shell是一個命令行解釋器,允許用戶通過命令行與系統交互,執行命令和啟動程序。
? ?- 聯系:Shell提供了一個用戶友好的界面,使用戶能夠控制Linux系統的各種操作。

4. 圖形用戶界面(GUI):
? ?- 作用:圖形用戶界面提供了一個可視化的環境,使用戶能夠通過圖形和圖標與系統交互,而不僅僅是文本命令。
? ?- 聯系:GUI通常作為Shell的補充,為用戶提供更直觀的操作方式。

5. 系統庫(System Libraries):
? ?- 作用:系統庫提供了一組預先編寫的代碼,用于執行常見的系統級任務,如輸入/輸出操作、網絡通信等。
? ?- 聯系:應用程序通常依賴這些庫來執行底層操作,而無需從頭開始編寫所有代碼。

6. 應用程序(Applications):
? ?- 作用:應用程序是為特定目的而設計的軟件,如文本編輯器、網頁瀏覽器、郵件客戶端等。
? ?- 聯系:應用程序運行在Linux系統之上,使用內核、文件系統、系統庫和Shell提供的功能。

7. 設備驅動程序(Device Drivers):
? ?- 作用:設備驅動程序是內核的一部分,負責管理硬件設備,如打印機、網絡卡、圖形卡等。
? ?- 聯系:設備驅動程序使得硬件設備能夠與操作系統和應用程序交互。

8. 守護進程(Daemons):
? ?- 作用:守護進程是后臺運行的服務,用于執行特定的系統任務,如打印服務、網絡服務等。
? ?- 聯系:守護進程作為系統服務的一部分,為用戶提供持續的服務和后臺任務處理。

9. 配置文件(Configuration Files):
? ?- 作用:配置文件包含系統和應用程序的設置,它們定義了系統的行為和外觀。
? ?- 聯系:配置文件允許用戶和管理員根據需要調整系統和應用程序的運行方式。

10. 用戶和組管理(User and Group Management):
? ? - 作用:Linux系統提供了用戶和組管理機制,用于控制對系統資源的訪問。
? ? - 聯系:用戶和組管理確保了系統的安全性,通過權限和訪問控制列表(ACLs)來管理用戶對文件和程序的訪問。

總之,Linux內核是操作系統的核心,負責管理系統資源和調度,而其他系統級軟件則提供了操作系統的功能和用戶界面。這種分離的設計使得Linux系統既靈活又強大,能夠滿足各種不同的需求。

關系: 【硬件】--- 【Linux操作系統【內核】】---【軟件】

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/21101.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/21101.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/21101.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

浙江大學數據結構MOOC-課后習題-第十講-排序5 PAT Judge【未完成】

題目匯總 浙江大學數據結構MOOC-課后習題-拼題A-代碼分享-2024 題目描述 這段文字是關于如何生成PAT(一種編程能力測試)的排行榜的說明。下面是這段文字的中文翻譯: 輸入說明: 每個輸入文件包含一個測試案例。對于每個案例&…

C++ A (1020) : 冪運算

文章目錄 一、題目描述二、參考代碼 一、題目描述 二、參考代碼 #include<bits/stdc.h> using namespace std; typedef long long ll;void qq(ll a, ll b, ll m) {if (a 0) cout << 0 << endl;;ll out 1;a % m;while (b > 0){if (b & 1)//奇數的最…

[AIGC] Vue2與Vue3的主要區別和示例代碼

Vue3是Vue框架的最新版本&#xff0c;它在性能、開發體驗和代碼體積等方面都有很大的改進。接下來我們將通過比較Vue2和Vue3的主要區別&#xff0c;進一步理解這些改變是如何影響我們的。 文章目錄 一、性能提升二、Composition API三、更好的類型支持四、生命周期鉤子函數變化…

lux和ffmpeg進行下載各大主流自媒體平臺視頻

1、lux下載&#xff0c;鏈接&#xff1a;https://pan.baidu.com/s/1WjGbouL3KFTU6LeqZmACpA?pwdagpp 提取碼&#xff1a;agpp 2、ffmpeg下載&#xff0c;跟lux放在同一個目錄&#xff1b; 3、為lux、ffmpeg設置環境變量&#xff1b; 4、WINR&#xff0c;打開運行&#xff0…

帶你自學大語言模型系列 —— 前言

今天開始&#xff0c;我計劃開啟一個系列 《帶你自學大語言模型》&#xff0c;內容也已經準備了一段時間了。 該系列的落腳點是“自學”和“大語言模型”&#xff0c;二者不分伯仲&#xff0c;這也是本系列和其他技術文章不一樣的地方。 至于原因&#xff0c;我不想只做大語言…

【C++】STL中vector常見功能的模擬實現

前言&#xff1a;在上一篇中我們講到了Vector的一些常見功能的使用方式&#xff0c;今天為了進一步的去學習Vector和能夠更深度的去理解Vector的一些底層的原理。 &#x1f496; 博主CSDN主頁:衛衛衛的個人主頁 &#x1f49e; &#x1f449; 專欄分類:高質量&#xff23;學習 &…

鴻蒙ArkTS聲明式開發:跨平臺支持列表【禁用控制】 通用屬性

禁用控制 組件是否可交互&#xff0c;可交互狀態下響應[點擊事件]、[觸摸事件]、[拖拽事件]、[按鍵事件]、[焦點事件]和[鼠標事件]。 說明&#xff1a; 開發前請熟悉鴻蒙開發指導文檔&#xff1a; gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md點擊或者復制轉到…

【一刷《劍指Offer》】面試題 30:最小的 k 個數

牛客對應題目鏈接&#xff1a;最小的K個數_牛客題霸_牛客網 (nowcoder.com) 力扣對應題目鏈接&#xff1a;LCR 159. 庫存管理 III - 力扣&#xff08;LeetCode&#xff09; 核心考點 &#xff1a; topK 問題。 一、《劍指Offer》內容 二、分析題目 1、排序&#xff08;O(Nlo…

接口interfance的基本使用

一.為什么有接口&#xff1f; 接口:就是一種規則。 二.接口的定義和使用 1.接口用關鍵字interface來定義 public interface 接口名{} 2.接口不能實例化 3.接口和類之間是實現關系,通過implements關鍵字表示 4.接口的子類(實現類) 注意1&#xff1a; 接口和類的實現關系…

43.自定義線程池(一)

ThreadPool是線程池&#xff0c;里面是一定數量的線程&#xff0c;是消費者。 BlockingQueue阻塞隊列&#xff0c;線程池中的線程會從阻塞隊列中去拿任務執行。任務多了線程池處理不過來了&#xff0c;就會到Blocking Queue中排隊&#xff0c;等待執行。鏈表結構&#xff0c;特…

Netfilter/iptables

1. Netfilter組件圖 https://en.wikipedia.org/wiki/Netfilter 其中&#xff1a; etables作用于數據鏈路層&#xff0c;arptables針對ARP, iptables/ip6tables針對IP層。 nftables 是新的包過濾組件. nft是相對應的新的用戶態組件&#xff0c;用于替換etables,arptables,ipt…

從tensorflow導入EarlyStopping能運行但是一直提示未解析

在pycharm中導入早停機的庫時&#xff0c;碰上一個問題 from tensorflow.keras.callbacks import EarlyStopping這一條代碼中&#xff0c;EarlyStopping一直有個紅色波浪線&#xff0c;代表著找不到這個庫&#xff0c;提示未解析啥的。 但是運行是可以運行的&#xff0c;雖然可…

GPT-4o如何重塑AI未來!

如何評價GPT-4o? 簡介&#xff1a;最近&#xff0c;GPT-4o橫空出世。對GPT-4o這一人工智能技術進行評價&#xff0c;包括版本間的對比分析、GPT-4o的技術能力以及個人感受等。 GPT-4o似乎是一個針對GPT-4模型進行優化的版本&#xff0c;它在性能、準確性、資源效率以及安全和…

Anolis OS 8.9安裝Linux 服務器運維管理面板“1Panel”

一、簡介 1.Linux 服務器運維管理面板“1Panel” 使用go語言編寫 2.很多的項目的應用都是采用 docker 技術來實現&#xff0c;這讓 Linux 服務器的運維管理更簡單、更安全。 3.1Panel 采納最新的前端技術&#xff0c;并通過精心設計的UX 交互&#xff0c;為用戶提供更好的用戶…

Linux系統tab鍵無法補齊命令-已解決

在CentOS中&#xff0c;按下tab鍵就可以自動補全&#xff0c;但是在最小化安裝時&#xff0c;沒有安裝自動補全的包&#xff0c;需要安裝一個包才能解決 bash-completion 1.檢查是否安裝tab補齊軟件包&#xff08;如果是最小化安裝&#xff0c;默認沒有&#xff09; rpm -q ba…

關于sprintboot3版本以上中的swagger3.0的使用

文章目錄 1.配置pom.xml(添加以下內容&#xff0c;記住點一下右上方maven下載)2.application.properties添加以下配置信息3.新建swagger的config配置信息&#xff0c;文件位置如下4.添加接口注釋信息訪問swagger文檔 1.配置pom.xml(添加以下內容&#xff0c;記住點一下右上方ma…

抽象一個通用的配置沖突解決方案

最近的開發項目中遇到了一個關于配置沖突的解決和產品設計&#xff0c;一直以來都沒有處理好。最近抽空整理了一下思路和設計&#xff0c;并做了抽象&#xff0c;后續的類似使用&#xff0c;可以做到直接復用。 思路和代碼見&#xff1a;github地址&#xff1a;https://github…

spring:解決findMergedRepeatableAnnotations獲取可重復的元注解(meta-annotation)結果不正確問題

spring-core的注解工具提供的方法 AnnotatedElementUtils.findMergedRepeatableAnnotations用于從AnnotatedElement 對象獲取可重復的注解。但如果注解本身也是可以定義在其他注解之上的元注解(meta-annotation),且該注解也是可重復注解。這個方法就可能會失效。這就是我最近在…

基于java18多端展示+ idea hbuilder+ mysql家政預約上門服務系統,源碼交付,支持二次開發

基于java18多端展示 idea hbuilder mysql家政預約上門服務系統&#xff0c;源碼交付&#xff0c;支持二次開發 家政預約上門系統是一種通過互聯網或移動應用平臺&#xff0c;為用戶提供在線預約、下單、支付和評價家政服務的系統。該系統整合了家政服務資源&#xff0c;使用戶能…

RabbitMQ三、springboot整合rabbitmq(消息可靠性、高級特性)

一、springboot整合RabbitMQ&#xff08;jdk17&#xff09;&#xff08;創建兩個項目&#xff0c;一個生產者項目&#xff0c;一個消費者項目&#xff09; 上面使用原生JAVA操作RabbitMQ較為繁瑣&#xff0c;很多的代碼都是重復書寫的&#xff0c;使用springboot可以簡化代碼的…