男女刺激高清视频在线观看,两男一女添女人的p毛视频,少妇性综合网站

扣逼自拍自拍亚洲,去色色av,欧美一级黄色视频色图,99热这里只有精品国产,又刺激又黄又好看的视频,亚洲bt区

首頁(yè) > 展商 >
展商推薦 | 在國(guó)產(chǎn)開(kāi)源操作系統(tǒng) RT-Thread 重溫 UNIX 彩色終端
返回
展商推薦 | 在國(guó)產(chǎn)開(kāi)源操作系統(tǒng) RT-Thread 重溫 UNIX 彩色終端
發(fā)布時(shí)間: 2024-07-24
瀏覽次數(shù): 436

上篇文章里我們向大家介紹了 RT-Thread v5.1.0 的一些新特性。其中包括了終端環(huán)境的進(jìn)一步完善。終端是人機(jī)交互的重要接口。實(shí)用的終端工具可以顯著地提升系統(tǒng)使用者的幸福指數(shù)。舉例來(lái)說(shuō),當(dāng)我們想要修改一些系統(tǒng)配置,或是編寫(xiě)腳本時(shí),一個(gè)好用的文本編輯器總是不可或缺。以 UNIX 文本編輯器 Vim 為例子。得益于 v5.1.0 內(nèi)核對(duì)于 POSIX 的支持,我們拉取源碼構(gòu)建燒錄后,就可以在 RT-Thread Smart 上享受到原滋原味的 Vim 編程體驗(yàn)啦。


圖片

感覺(jué)如何?如果你不滿足于淺嘗輒止,請(qǐng)不要擔(dān)心。接下來(lái)的文章里我們將向你繼續(xù)分享 RT-Thread Smart 中的終端環(huán)境組成和使用。

Busybox

被業(yè)內(nèi)稱之為瑞士軍刀的BusyBox,嵌入式Linuxer對(duì)它肯定不會(huì)感到陌生,甚至熟悉到忽略他無(wú)時(shí)無(wú)刻的存在。它在單一的可執(zhí)行文件中提供了精簡(jiǎn)的Unix工具集,可運(yùn)行于多款POSIX環(huán)境的操作系統(tǒng)。

RT-Thread Smart 已適配了上百種 Busybox 命令。而 Busybox 也是 Smart 當(dāng)前的終端環(huán)境的一個(gè)重要組成部分。其中包括 init 提供的初始化和系統(tǒng)管理,ash提供的命令解釋、腳本執(zhí)行、作業(yè)控制等。接下來(lái)我們結(jié)合實(shí)際例子深入探索這些部分的實(shí)際應(yīng)用和能力。

圖片

init進(jìn)程介紹

init(為英語(yǔ):initialization的簡(jiǎn)寫(xiě))是 Unix 和 類Unix 系統(tǒng)中用來(lái)產(chǎn)生其它所有進(jìn)程的程序。它以守護(hù)進(jìn)程的方式存在,其進(jìn)程號(hào)為1。系統(tǒng)在引導(dǎo)時(shí)加載內(nèi)核后,便由內(nèi)核加載init程序,由init程序完成余下的引導(dǎo)過(guò)程,比如加載執(zhí)行級(jí)別,加載服務(wù),啟動(dòng)Shell/圖形化界面等等。

init進(jìn)程運(yùn)行之后會(huì)加載解析/etc/inittab文件的內(nèi)容,根據(jù)腳本項(xiàng)目決定接下來(lái)的運(yùn)行模式和需要啟動(dòng)的命令。以下是本次體驗(yàn)中使用的 inittab 腳本。

1# Copyright (c) 2006-2024, RT-Thread Development Team
2#
3# SPDX-License-Identifier: Apache-2.0
4
5# Mount Filesystem
6::sysinit:mkdir -p /dev/shm /dev/pts /proc
7::sysinit:mount -a
8
9# Run getty & login
10console::respawn:/sbin/getty 115200 /dev/console
11
12# Restart bussiness
13::restart:/sbin/init

根據(jù)這個(gè)腳本,init 進(jìn)程會(huì)首先創(chuàng)建掛載點(diǎn),然后通過(guò) mount 命令掛載文件系統(tǒng)。等到上序進(jìn)程都退出后,啟動(dòng) getty 獲得 console TTY 設(shè)備作為會(huì)話控制終端。getty 接著會(huì)啟動(dòng) login。它在 TTY 設(shè)備上等待用戶登錄,并在用戶名、密碼校驗(yàn)成功后啟動(dòng) shell 程序,也就是 busybox ash 。

ash介紹

Almquist shell,經(jīng)常被簡(jiǎn)稱為 A Shell 或 ash,一種Unix shell,源自于Bourne shell,由肯尼斯·艾昆斯特(Kenneth Almquist)在SVR4上建立了這個(gè)分支。它的特色是快而且輕巧,兼容于POSIX,在后來(lái)的BSD版本上,它取代了Bourne shell。在BusyBox中,實(shí)現(xiàn)了類似于ash標(biāo)準(zhǔn)的shell的程序。


結(jié)合上文介紹的初始化過(guò)程配置,在系統(tǒng)登錄完成后,就會(huì)看到 ash 打印的命令提示符。此時(shí)一個(gè) ash 進(jìn)程就運(yùn)行在 RT-Thread Smart 內(nèi)核中實(shí)現(xiàn)用戶交互,命令解析。

既然來(lái)到shell中,那就不得不忽略其強(qiáng)大的腳本執(zhí)行功能。shell 腳本的兼容度對(duì)于批處理、自動(dòng)化測(cè)試來(lái)說(shuō)非常重要。我們通過(guò)一個(gè)流行的 shell 腳本單元測(cè)試工具 shUnit2 展示這個(gè)功能。

https://github.com/kward/shunit2

shUnit2 本質(zhì)是一套 shell 腳本庫(kù),包含了眾多預(yù)定義函數(shù)。我們利用它,可以用簡(jiǎn)單的腳本實(shí)現(xiàn)復(fù)雜的單元測(cè)試過(guò)程。將克隆下來(lái)的倉(cāng)庫(kù)放入根文件系統(tǒng)的 /root 文件夾之后,可以在 ./shunit2/example 下看到一些樣例代碼。這里給出一個(gè)測(cè)試 suite 腳本。

1#!/bin/sh
2# 本腳本就是倉(cāng)庫(kù)對(duì)應(yīng)路徑 ./example/suite_test.sh 文件的內(nèi)容。
3# 這是一個(gè)測(cè)試套件樣例,允許開(kāi)發(fā)者將測(cè)試函數(shù)注冊(cè)到 shUnit2 框架中,
4# 使其成為測(cè)試執(zhí)行的一部分。對(duì)應(yīng)的,沒(méi)有注冊(cè)的函數(shù)不會(huì)在 report 中體現(xiàn)
5suite() {
6  suite_addTest suite_test_one
7
8  suite_test_two
9}
10
11suite_test_one() {
12  assertEquals 1 1
13}
14
15suite_test_two() {
16  assertNotEquals 1 2
17}
18
19# Load and run shUnit2.
20. ../shunit2

在 ash 中執(zhí)行這個(gè)文件,我們就成功在 RT-Smart 中運(yùn)行了一個(gè)基于命令解釋器實(shí)現(xiàn)的單元測(cè)試 suite。


圖片

作業(yè)控制(Job Control)介紹


在解釋作業(yè)控制前,我們先要簡(jiǎn)單介紹一下它的概念。對(duì)于當(dāng)前操作者來(lái)說(shuō),能夠操作的命令控制臺(tái)終端shell是一個(gè)獨(dú)立的shell,并根據(jù)是否可以直接操作當(dāng)前shell的程序來(lái)將shell中的作業(yè)分為前臺(tái)與后臺(tái)兩種狀態(tài)。能夠直接在shell上交互的程序稱為前臺(tái)狀態(tài),而不能直接交互的程序?yàn)楹笈_(tái)狀態(tài)。如果把所有的前后臺(tái)程序都統(tǒng)一稱作作業(yè)(job),那么可以基于當(dāng)前的shell對(duì)所有的job來(lái)進(jìn)行作業(yè)控制,從而稱作job control。


如上所述job control就是基于當(dāng)前的shell前后臺(tái)作業(yè)來(lái)實(shí)現(xiàn)作業(yè)管理的,典型的管理有:將一個(gè)前臺(tái)程序ctrl+c終止掉,或?qū)⒁粋€(gè)新的作業(yè)啟動(dòng)放入后臺(tái)(&后綴啟動(dòng)),或?qū)⒁粋€(gè)后臺(tái)程序放入前臺(tái)(fg命令)。其它的操作例如還有:jobs命令查看所有后臺(tái)作業(yè)狀態(tài),ctrl+z暫停一個(gè)前臺(tái)作業(yè)并放入后臺(tái),bg將一個(gè)后臺(tái)作業(yè)轉(zhuǎn)入后臺(tái)運(yùn)行等等。常用的操作命令集如:


● jobs命令

● fg 命令

● bg 命令

● ctrl+c/ctrl+z/ctrl+d/ctrl+\

● & 啟動(dòng)后臺(tái)作業(yè)

那么作業(yè)控制有什么具體的應(yīng)用呢?假設(shè)一個(gè)日常生活中的常見(jiàn)場(chǎng)景,首先我們使用 Vim 創(chuàng)建一個(gè)文件開(kāi)始編輯。編輯過(guò)程中,可能突然需要做別的事情。此時(shí)就可以像 GUI 中的“最小化”操作一樣,通過(guò) Ctrl^z 掛起 Vim 并回到 ash。通過(guò) jobs 命令我們可以看到 Vim 掛起后更新為作業(yè) %1 并處于停止?fàn)顟B(tài)(Stopped)。


當(dāng)我們想要繼續(xù)編輯時(shí),就可以在 ash 中使用 fg 命令指定 Vim,將其恢復(fù)到前臺(tái)運(yùn)行。這類似 GUI 中的“最大化”操作。當(dāng)我們?cè)?Vim 完成文檔編輯操作并退出后,可以通過(guò) jobs 命令看到作業(yè)已經(jīng)清空。通過(guò) cat 命令我們看到文件已經(jīng)成功保存。

總結(jié)


基于 Busybox ,我們介紹了 RT-Smart 終端環(huán)境的使用體驗(yàn),看到了“瑞士軍刀” BusyBox 強(qiáng)大的功能。通過(guò)實(shí)際的啟動(dòng)腳本示例,展示了 init 進(jìn)程如何加載和初始化系統(tǒng),通過(guò) shUnit2 展示了 ash 提供的強(qiáng)大腳本執(zhí)行能力,并借助 Vim 展示了job control 的前后臺(tái)控制特性。

不知道大家是否對(duì) RT-Smart 的能力有了進(jìn)一步了解。如果您對(duì) RT-Thread Smart 的應(yīng)用和功能感興趣,可以在RT-Thread 官方發(fā)布的 ART-Pi Smart 開(kāi)發(fā)板上了解、學(xué)習(xí)和開(kāi)發(fā) RT-Thread Smart 系統(tǒng)與應(yīng)用。這是首個(gè)運(yùn)行 RT-Thread Smart 的 ARM Cortex-A7 開(kāi)發(fā)板,具有強(qiáng)大的硬件性能和豐富的外設(shè)接口。

圖片

ART-Pi Smart 硬件規(guī)格情況


探索新升級(jí)!在 ART-Pi Smart 體驗(yàn) RT-Thread Smart v5.1.0

可以參考以上推文,了解 ART-Pi Smart 的 busybox 與應(yīng)用開(kāi)發(fā)體驗(yàn)及開(kāi)發(fā)板獲取方式。此外我們也發(fā)布了prebuilt(https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-smart/introduction/rt-smart-experiences/rt-smart-experiences)版本鏡像供您在 QEMU 上立即體驗(yàn)到包括 Weston、dropbear、vim、tmux 在內(nèi)的各種工具和組件。

歡迎大家在 RT-Thread Github 倉(cāng)庫(kù)或論壇上向我們反饋意見(jiàn)和建議。另外,如果您對(duì)參與到 RT-Thread 的平臺(tái)支持(risc-v、arm、arm64 平臺(tái)上的驅(qū)動(dòng)、內(nèi)核代碼完善)、應(yīng)用移植與開(kāi)發(fā)、文檔維護(hù)感興趣,我們誠(chéng)邀您加入 Smart 興趣小組,參與到與 Smart 相關(guān)的開(kāi)源貢獻(xiàn)中。




關(guān)于elexcon2024深圳國(guó)際電子展

elexcon2024深圳國(guó)際電子展將于2024年8月27-29日在深圳會(huì)展中心(福田)舉辦。匯聚400+家全球優(yōu)質(zhì)品牌廣商齊聚現(xiàn)場(chǎng),打造電子全產(chǎn)業(yè)鏈創(chuàng)新展示、一站式采購(gòu)及技術(shù)交流平臺(tái)。集中展示集成電路、嵌入式系統(tǒng)、電源管理/功率器件、電子元件與供應(yīng)鏈、OSAT封裝服務(wù)、Chiplet異構(gòu)集成產(chǎn)業(yè)鏈專區(qū)、3D IC設(shè)計(jì)/EDA工具、IC載板/玻璃基板、先進(jìn)材料、半導(dǎo)體制造專用設(shè)備等熱門(mén)產(chǎn)品;展會(huì)期間還將舉辦一系列技術(shù)論壇,展示全球產(chǎn)業(yè)動(dòng)態(tài)及未來(lái)技術(shù)趨勢(shì)。參展/演講/贊助請(qǐng)聯(lián)系:0755-8831 1535,更多展會(huì)詳情請(qǐng)登錄:mf0o.cn