Linux編程基礎

Linux編程基礎 下載 mobi epub pdf 電子書 2024


簡體網頁||繁體網頁
黑馬程序員 著



點擊這裡下載
    


想要找書就要到 圖書大百科
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

發表於2024-11-18

類似圖書 點擊查看全場最低價

圖書介紹

齣版社: 清華大學齣版社
ISBN:9787302477389
版次:1
商品編碼:12239588
包裝:平裝
開本:16開
齣版時間:2017-08-01
用紙:膠版紙
頁數:288
字數:458000
正文語種:中文


相關圖書





圖書描述

內容簡介

本書分11章,首先介紹Linux的背景、開發環境、網絡配置與遠程操作及管理;其次講解Linux係統操作中的基本命令以及基礎開發中使用的工具;然後講解Shell編程的基本語法、Linux係統中的用戶和用戶組以及Linux文件係統與操作;之後對Linux程序開發涉及的進程、信號、綫程、網絡編程等重點難點知識進行講解;最後介紹Linux係統中高並發服務器的幾種模型。本書中的每個章節都采用理論與案例結閤的模式,在理論知識後通過切實可行的案例幫助學生在學習的同時實踐並鞏固所學知識。
本書的大綱結構主要藉鑒傳智播客C/C++學院所用的課程體係,也參考瞭市麵上多本Linux教材,力求在構造完整知識體係的基礎上能夠係統、全麵且精準。
本書附有配套視頻、源代碼、習題、教學課件等資源。同時,為瞭幫助初學者及時地解決學習過程中遇到的問題,黑馬程序員還專門提供瞭免費的在綫答疑平颱。
本書可作為高等院校本專科計算機相關專業的Linux課程教材。

目錄

第1章初識Linux1
1.1Linux概述1
1.1.1Linux的起源與發展1
1.1.2Linux的特點2
1.1.3GNU項目計劃4
1.2安裝Linux5
1.2.1前期準備5
1.2.2安裝CentOS7
1.3網絡配置11
1.4遠程終端訪問18
1.5本章小結22
1.6本章習題22
第2章命令與開發工具24
2.1Linux常用命令24
2.1.1命令格式24
2.1.2文件操作命令25
2.1.3網絡管理與通信命令36
2.1.4壓縮解壓命令38
2.1.5幫助命令39
2.2Linux常用開發工具41
2.2.1vi編輯器41
2.2.2GCC編譯器45
2.2.3GDB調試工具48
2.3本章小結52
2.4本章習題52
第3章用戶與用戶組管理54
3.1概述54
3.2用戶和用戶組管理55目錄Linux編程基礎3.2.1用戶管理55
3.2.2用戶組管理59
3.3用戶切換61
3.3.1su61
3.3.2sudo62
3.4本章小結65
3.5本章習題65
第4章Shell編程68
4.1Shell概述68
4.1.1Shell的分類68
4.1.2Shell的功能69
4.1.3Shell命令執行流程69
4.2Shell應用技巧70
4.3Shell編程74
4.3.1第一個Shell程序74
4.3.2Shell中的變量75
4.4Shell中的條件語句81
4.4.1條件判斷81
4.4.2if條件語句83
4.4.3select語句85
4.4.4case語句85
4.5Shell中的循環語句87
4.5.1for循環87
4.5.2while循環88
4.5.3until循環88
4.6Shell腳本調試89
4.7Shell中的函數90
4.8本章小結93
4.9本章習題93
第5章Linux文件係統與操作96
5.1磁盤與目錄96
5.1.1磁盤與磁盤分區96
5.1.2目錄結構99
5.1.3inode與dentry100
5.2Linux文件係統101
5.2.1Linux文件係統版本101
5.2.2fdisk/mke2fs102
5.2.3ext2/ext3文件係統105
5.2.4虛擬文件係統109
5.2.5掛載110
5.3Linux文件類型112
5.3.1文件類型概述112
5.3.2鏈接文件113
5.3.3設備文件114
5.4文件操作115
5.4.1文件描述符115
5.4.2文件I/O116
5.4.3文件操作121
5.5本章小結123
5.6本章習題123
第6章Linux進程管理125
6.1進程概述125
6.1.1進程處理機製125
6.1.2進程屬性126
6.2進程控製129
6.2.1創建進程129
6.2.2exec函數族135
6.2.3進程退齣138
6.2.4進程同步138
6.3進程管理命令144
6.4本章小結150
6.5本章習題150
第7章信號153
7.1信號及信號來源153
7.2信號的産生156
7.2.1係統調用156
7.2.2軟件條件158
7.2.3kill命令160
7.3信號阻塞161
7.4信號捕獲164
7.5時序競態168
7.6SIGCHLD信號170
7.7本章小結173
7.8本章習題174
第8章進程間通信176
8.1管道176
8.1.1匿名管道177
8.1.2popen()/pclose()181
8.1.3命名管道182
8.2消息隊列185
8.3信號量190
8.4共享內存195
8.5本章小結201
8.6本章習題201
第9章綫程203
9.1綫程概述203
9.2綫程操作205
9.2.1創建綫程205
9.2.2綫程退齣207
9.2.3綫程終止209
9.2.4綫程掛起210
9.2.5綫程分離213
9.3綫程屬性215
9.4綫程同步220
9.4.1互斥鎖221
9.4.2條件變量225
9.4.3信號量229
9.5本章小結232
9.6本章習題232
第10章socket編程235
10.1計算機網絡概述235
10.1.1協議與體係結構235
10.1.2網絡結構模式239
10.2socket編程基礎239
10.2.1socket編程接口240
10.2.2socket通信流程244
10.2.3網絡編程相關知識245
10.3socket網絡編程實例247
10.3.1基於TCP的網絡通信247
10.3.2基於UDP的網絡通信249
10.4socket本地通信251
10.5本章小結259
10.6本章習題259
第11章高並發服務器261
11.1多進程並發服務器261
11.2多綫程並發服務器265
11.3I/O多路轉接服務器268
11.3.1select268
11.3.2poll273
11.3.3epoll277
11.4epoll的工作模式283
11.5本章小結286
11.6本章習題287

精彩書摘

  第5章Linux文件係統與操作學習目標
  瞭解磁盤分區與目錄結構
  掌握ext2文件係統布局
  掌握數據塊尋址方式
  熟悉Linux係統中的文件類型
  掌握Linux係統中實現I/O操作的方法計算機之所以能運行,是因為在機器硬件上配備瞭完整的操作係統。操作係統規定瞭計算機的運行方式和處理請求的方式,是計算機不可分割的一部分。在操作係統安裝時,安裝程序會為計算機安裝一個文件係統。文件係統與操作係統類似,都相當於一個程序,存在於存儲設備上,但文件係統用於規定文件的存取和操作方式。存儲設備的正常使用離不開文件係統,本章將會結閤磁盤結構對文件係統和Linux係統中的文件進行講解。
  5.1磁盤與目錄
  磁盤是文件係統的底層支持,目錄是文件係統的具體錶現,磁盤與目錄都和文件係統密不可分。本節先對磁盤的結構進行講解,再講解目錄結構(即文件的組織方式),以及存取文件時涉及的關鍵結構——inode和dentry。
  5.1.1磁盤與磁盤分區
  磁盤是計算機中的主要存儲設備,一般由主軸、盤片和讀寫磁頭組成,如圖5��1所示。磁盤中包含多張盤片,每張盤片包含上下兩個盤麵,盤片固定在磁盤的主軸上,盤片的每個盤麵都有一個固定在動臂上的讀寫磁頭;計算機中的數據存儲在磁盤的盤麵上,盤片隨主軸的鏇轉而轉動,固定在動臂上的讀寫磁頭在盤片轉動的同時讀取盤麵上存儲的信息。
  圖5��1磁盤結構示意圖
  磁盤的盤片又可細分: 圖5��1中盤片上的圓環稱為磁道,每張盤片上有許多磁道。多張盤片上半徑相同的磁道組成的圓柱麵稱為柱麵,一張盤片有多少磁道,磁盤就有多少柱麵。磁道是讀寫磁頭讀寫的軌跡,讀寫磁頭可以在動臂的帶動下切換訪問的柱麵。由內及外,扇區中的磁道逐漸增大。較大的磁道能夠存儲更多的數據,但因為磁道中能存儲的數據量不同,所以以磁道作為存儲單位顯然會為數據存儲帶來麻煩。
  磁盤上的盤片被細分為多個大小相同的扇區,扇區是磁盤空間的基本單位。一般來說,一個扇區的大小為512字節。磁盤中第一個扇區非常重要,其中存儲瞭與磁盤正常使用相關的重要信息,分彆為: 主引導記錄、磁盤分區錶和魔數。第5章Linux文件係統與操作Linux編程基礎 主引導記錄(MBR,Master Boot Record)占用446個字節,其中包含一段被稱為引導加載流程(Boot Loader)的程序。計算機啓動後,會到磁盤0扇麵的0扇區去讀取MBR中的內容,隻有MBR中的程序正確無誤,計算機纔能正常開機。
  磁盤分區錶(partition table)占用64個字節,其中記錄整塊磁盤的分區狀態。每個分區的信息需要16個字節,因此磁盤分區錶若隻記錄分區信息,便最多隻能存儲4個分區的分區信息。
  魔數(magic number)占用兩個字節,用來標識MBR是否有效。
  在計算機誕生伊始,其存儲空間是極其有限的,但隨著計算機硬件與軟件的發展,普通計算機中配備磁盤的存儲空間已能用T來計算,這錶示磁盤中能夠存儲的數據也有瞭極大的提升。為瞭更好地組織文件,並提高磁盤的讀寫效率,為磁盤分區是一個明智的選擇。
  若要為現實中的空間分區,如為一間房間分區,可以通過在房間中添加格檔來實現,但對於磁盤來說,這種方法顯然行不通。在對磁盤結構分區時,我們提到,磁盤的第一個扇區中存儲著一張“磁盤分區錶”,其實利用這張錶便能為磁盤分區。
  磁盤由若乾個柱麵組成,假設一個磁盤有500個柱麵,將磁盤分為4個扇區,那麼隻需要將磁盤的分區信息記錄在磁盤分區錶中即可。按上述方式,磁盤分區與分區錶的關係應如圖5��2所示(每個分區的柱麵數可不相同)。
  圖5��2分區錶與磁盤分區
  Linux係統中遵循“一切皆文件”的思想,Linux下的設備也會被視為文件。硬盤作為設備的一種,其對應的文件被存儲於係統的/dev目錄下。若磁盤為SATA類型,則磁盤路徑名為/dev/sda,圖5��2所示的四個分區在/dev目錄下對應的文件名如下所示:
  P1: /dev/sda1
  P2: /dev/sda2
  P3: /dev/sda3
  P4: /dev/sda4
  設備的文件名由路徑、設備名與分區編號構成,若要在P2分區中存儲數據,則相應的數據會被寫到磁盤中編號為101~200的磁道上。
  Linux和Windows係統中磁盤分區的方式是相同的,也就是說Windows係統中也有一個64字節的分區錶。前文講到,分區錶中最多隻能記錄4個分區的屬性信息,但是熟悉Windows係統的用戶應該知道,Windows係統中可以有不止4個分區,這是為什麼呢?
  原來磁盤除可以劃分齣主分區外,還可以劃分齣一個擴展分區,而擴展分區可以再次劃分,由擴展分區劃分齣的分區被稱為邏輯分區。邏輯分區中的信息同樣需要存儲,通常這些信息會被存儲在由擴展分區劃分齣的第一個邏輯分區的第一個扇區中。
  若磁盤中包含500個磁道,磁盤被分為一個主分區和一個擴展分區,且擴展分區又被劃分為4個邏輯分區,那麼主分區錶和邏輯分區錶中的分區與磁盤的對應關係如圖5��3所示。
  圖5��3主分區與邏輯分區
  圖5��3的磁盤中有兩個分區錶(分彆用黑色扇形和方塊錶示)。存在於分區P1中的分區錶為主分區錶,共占64字節,其中隻記錄瞭兩個分區: P1和P2。分區P1為主分區,分區P2為擴展分區,分區P2又被劃分為4個邏輯分區L1~L4,其分區信息存儲於第101個柱麵的扇區中。若Linux係統按圖5��3所示的方式分區,/dev目錄下將會有6個設備文件,文件的路徑名分彆如下:
  P1: /dev/sda1
  P2: /dev/sda2
  L1: /dev/sda5
  L2: /dev/sda6
  L3: /dev/sda7
  L4: /dev/sda8
  ……

前言/序言

  序
  傳智播客和“黑馬程序員”
  江蘇傳智播客教育科技股份有限公司(簡稱“傳智播客”)是一傢專門緻力於培養高素質軟件開發人纔的科技公司,“黑馬程序員”是傳智播客旗下的高端IT教育品牌。
  “黑馬程序員”的學員多為大學畢業後想從事IT行業,但各方麵條件還不成熟的年輕人。“黑馬程序員”的學員篩選製度非常嚴格,包括嚴格的技術測試、自學能力測試以及性格測試、壓力測試、品德測試等。百裏挑一的殘酷篩選製度確保瞭學員質量,並降低瞭企業的用人風險。
  自“黑馬程序員”成立以來,教學研發團隊一直緻力於打造精品課程資源,不斷在産、學、研三個層麵創新自己的執教理念與教學方針,並集中“黑馬程序員”的優勢力量,有針對性地齣版瞭計算機係列教材五十多種,製作瞭教學視頻數十套,並發錶瞭各類技術文章數百篇。
  “黑馬程序員”不僅斥資研發IT係列教材,還為高校師生提供以下配套學習資源與服務。
  為大學生提供的配套服務:
  (1) 專業的輔助學習平颱“博學榖”(http://yx.boxuegu.com),有專業老師在綫為您答疑解惑。
  (2) 針對高校學生在學習過程中存在的壓力等問題,我們還麵嚮大學生量身打造瞭“播妞”。播妞不僅緻力推行快樂學習,還會有定期的助學紅包雨。有興趣的同學可添加播妞微信/QQ: 208695827。
  (3) 高校學生也可掃描右方二維碼,加入播妞粉絲團,獲取最新學習資源,與播妞一起快樂學習。
  為IT教師提供的配套服務:
  針對高校教學,“黑馬程序員”為IT係列教材精心設計瞭“教案+授課資源+考試係統+題庫+教學輔助案例”的係列教學資源。高校老師請關注碼大牛老師微信/QQ: 2011168841,獲取教材配套資源,也可以掃描右方二維碼,加入專為IT教師打造的師資服務平颱——“教學好助手”,獲取“黑馬程序員”最新教師教學輔助資源相關動態。
  前言
  隨著互聯網的發展,計算機新技術如雨後春筍,層齣不窮,這也促使越來越多的學子投入到計算機的學習與研發中;而二十多年來,Linux操作係統已逐漸被越來越多的人接受和認可,並被眾多企業廣泛應用到服務器以及嵌入式開發等領域。因此,Linux操作係統的使用以及基於Linux的應用開發成為計算機專業學子應掌握的必備技能。
  然而,黑馬程序員在近些年的觀察和研究中發現: 麵臨就業的高校學子雖已經學習瞭編程語言與操作係統等的相關課程,但缺乏動手能力,難以將理論聯係到實際。這皆因他們所用教材不是體係結構不夠係統,就是知識不夠全麵,再加上講解的知識較深奧,以至於學子難以掌握切實可用的實質。
  針對這種現象,黑馬程序員決定推齣一本更符閤學生實際需求的教材。為保障學生在學習的過程中能學有所得,在學習之後能學以緻用,黑馬程序員經過大量調研與長期編寫,推齣瞭本書,作為Linux課程的初級教材。
  為什麼要學習本書
  Linux操作係統自誕生至今逐步發展並日漸完善,因其開源、安全、穩定等特性,成為眾多企業與政府部門搭建服務器的首選平颱。此外,Linux在移動應用與嵌入式開發領域也被廣泛采用,因此掌握Linux係統的使用與Linux平颱下的程序開發方法成為眾多計算機從業人員需要掌握的必備技能。
  本書在大綱製定上參照瞭傳智播客C/C++學院數年來結閤計算機發展趨勢及企業需求所研發課程體係中的Linux係統編程部分,涵蓋瞭Linux基本操作、常用工具、係統管理與程序開發等使用Linux係統以及在Linux環境下進行開發所需的必要知識;在內容安排上,由Linux環境搭建入手,逐步講解瞭Linux的基本操作、常用工具、係統管理以及程序開發等知識,由淺入深,由易到難,循序漸進;在講解方式上,將理論與實踐相結閤,為大多知識點都配備相應案例,保障讀者能將理論與實踐結閤,在掌握理論知識的同時強化動手能力。
  如何使用本書
  本書以與企業中所用環境(Red Hat Enterprise Linux)較為接近的Linux版本(CentOS 6.8)為開發環境,主要介紹Linux係統的使用與Linux環境下的程序開發。本書中涉及的命令、語法與係統調用都配備瞭具體的案例,旨在讓讀者瞭解Linux平颱下的常用服務器前言Linux編程基礎模型。
  若本書用於課堂教學,建議教師在講解理論知識後,先引導學生自主動手實現教材中提供的案例,培養學生思考問題、分析問題、解決問題的能力,以期學生可更深刻地理解、掌握相應知識。
  若讀者為自主學習者,建議您勤思考、勤練習、勤總結,盡量完成並熟練掌握教材中配備的案例,並通過章節配套測試題進行自我檢測和查漏補缺。若您在學習的過程中遇到睏難或者有疑惑,可嚮問答精靈谘詢。
  本教材共分11章,每章的大體內容如下。
  �r 第1章首先介紹Linux係統的背景,包括Linux的起源、發展、應用領域、常用版本,以及GNU項目計劃和POSIX版本;之後介紹Linux環境搭建過程;最後介紹VMware虛擬網絡配置、Linux的遠程終端訪問和遠程文件管理。通過本章的學習,讀者可對Linux係統的背景有所瞭解,並能順利搭建Linux環境,掌握Linux的遠程終端訪問方式及遠程文件的管理。
  �r 第2章講解Linux係統中的基本命令與開發工具,其中基本命令部分介紹與文件、網絡、通信、壓縮解壓及幫助相關的命令,開發工具部分介紹vi編輯器、GCC編譯器與GDB調試工具。掌握本章所講的知識,可提高Linux係統使用與Linux環境開發的效率。
  �r 第3章講解Linux係統中與用戶、用戶組管理相關的知識。Linux是一個支持多用戶的操作係統,通過本章的學習,讀者應能掌握Linux係統中管理用戶、用戶組的命令,以及用戶切換的方法。
  �r 第4章講解Linux的內核——Shell的相關知識、Shell應用技巧以及Shell腳本編程的相關語法。其中Shell編程語法包括Shell變量、條件語句、循環語句、函數,4.6節還給齣瞭Shell腳本的調試方法。
  �r 第5章講解磁盤與目錄、Linux文件係統、Linux文件類型與文件操作,其中重點為磁盤的邏輯分區方式、文件係統的結構、文件操作。通過本章的學習,讀者應掌握以上重點知識,並熟悉磁盤分區、掛載、卸載的方式與創建文件係統的方法。
  �r 第6章講解Linux進程管理相關的知識,包括進程處理機製、進程屬性、進程控製以及進程管理命令。通過本章的學習,讀者應熟練掌握進程的處理機製,以及控製進程的方法,包括創建進程、退齣進程與進程同步等。
  �r 第7章講解Linux係統中的信號機製,包括信號來源、産生方式、信號阻塞、信號捕獲和時序競態等知識。通過本章的學習,讀者應能在終端與程序中使用信號管理和控製進程。
  �r 第8章講解進程間通信的方式,包括管道通信、消息隊列通信、信號量通信與共享內存通信。通過本章的學習,讀者應熟悉Linux係統中進程通信的這幾種機製,並能在程序中使用這些機製實現進程通信。
  �r 第9章主要講解Linux係統中的綫程,包括綫程的定義、綫程相關操作、綫程的屬性,以及實現綫程同步的機製。綫程操作包括 Linux編程基礎 下載 mobi epub pdf txt 電子書 格式

Linux編程基礎 mobi 下載 pdf 下載 pub 下載 txt 電子書 下載 2024

Linux編程基礎 下載 mobi pdf epub txt 電子書 格式 2024

Linux編程基礎 下載 mobi epub pdf 電子書
想要找書就要到 圖書大百科
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

用戶評價

評分

評分

評分

評分

評分

評分

評分

評分

評分

類似圖書 點擊查看全場最低價

Linux編程基礎 mobi epub pdf txt 電子書 格式下載 2024


分享鏈接




相關圖書


本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

友情鏈接

© 2024 book.qciss.net All Rights Reserved. 圖書大百科 版權所有