日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux系统初学者指南,观点|Linux 系统调用的初学者指南

發布時間:2024/9/27 linux 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux系统初学者指南,观点|Linux 系统调用的初学者指南 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在過去的幾年中,我一直在做大量容器相關的工作。先前,我看到 Julien Friedman 的一個很棒的演講,它用幾行 Go 語言寫了一個容器框架。這讓我突然了解到容器只是一個受限的 Linux 進程中的機器。

構建這個受限視圖涉及到 Golang 系統調用包中的很多調用。最初,我只是用到了表面的那些,但過了一段時間,我想剝下洋蔥的下一層,看看這些系統調用是什么,以及它們的工作原理。我將在 OSCON 的演講中分享我所學到的東西。

顧名思義,syscalls 即系統調用,它們是你從用戶空間請求進入 Linux 內核的方式。內核為你做一些工作,例如創建一個進程,然后再回到用戶空間。

有一個常見的機制使所有的系統調用轉換到內核,這是由 libc 庫處理的。 用戶空間代碼設置一些寄存器,包括其想要的系統調用的 ID 以及需要傳遞給系統調用的所有參數。它觸發一個 “陷阱” 將控制轉換到內核。

這就是用戶空間代碼如何向內核請求的,而 Linux 也有一個偽文件系統,它允許內核將信息傳遞給用戶空間,其內容看起來像普通的目錄和文件。

/proc 目錄是一個很好的例子。看看里面,你會發現有關機器上運行的進程的各種有趣的信息。在某些情況,像 cgroups(控制組)那樣,用戶空間可以通過寫入這些偽文件系統下的文件來配置參數。

當你在使用容器時,特別有趣的是,主機的 /proc 包含了所有有關容器化的進程的信息。這包括環境變量,它們也保存在 /proc 偽文件系統中,這意味著你的主機可以訪問所有正在運行的容器的環境。如果你通過環境變量將諸如憑證或數據庫密碼這類秘密傳遞到容器中,則可能會產生安全性后果。

許多編寫常規程序的程序員可能不覺得他們經常使用系統調用。但實際上他們會經常調用,因為每天的活動比如制作文件或者更改目錄都涉及 Linux 的系統調用。

你不必是一位系統程序員才能享受系統調用的樂趣!

如果你想要了解更多,Liz 會在 Austin,Texas 舉辦的 OSCON 2017 上演講 Linux 系統調用的初學者指南。

(題圖:?opensource.com)

作者簡介:

Liz Rice - Liz Rice 是一位技術傳播者,也是 Aqua Security 的容器安全專家。此前,她共同創立了 Microscaling Systems,并開發了其實時伸縮引擎,以及流行的圖像元數據網站 MicroBadger.com。她擁有豐富的從網絡協議和分布式系統,以及數字技術領域,如 VOD,音樂和 VoIP 軟件的開發、團隊和產品管理經驗。

本文由 LCTT 原創編譯,Linux中國 榮譽推出

總結

以上是生活随笔為你收集整理的Linux系统初学者指南,观点|Linux 系统调用的初学者指南的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。