[開源分享] Go語言原本、微小的自執行 RISC-V 模擬器、生成、分析、轉換和操作顏色的命令列工具、滲透測試資源、隱私即時通訊、可移植的輕量級跨平台應用程式開發框架等

這裡分享探討 Golang 原始碼核心的中文電子書、微小自執行的 RISC-V 模擬器與自託管 RISC-V 管理程式、使用 Rust 開發取代 ‘ls’ 指令的程式、從一個頁面關注部落格 維基 YouTube 頻道以及 Twitter Instagram 等賬戶 用於生成 分析 轉換和操作顏色的命令列工具、用於 web 自動化的最好的 Python 程式庫、純粹使用 Javascript 實現的 git、Laracon 2020 (全世界最大的 Laravel 開發者研討會) 線上研討會網站的原始碼、 .NET Core 專案架構樣板、使用 AWS 的基礎設施做即時的車牌辨識、 安裝 Kubernetes Apps 最簡單的方法、滲透測試備忘錄集錦、優秀的滲透測試資源,工具和其他列表、網路安全軟體,程式庫,文件書籍等資源集錦、Flutter 粒子時鐘、強調隱私的即時通訊程式可移植的輕量級跨平台應用程式開發框架快速的、多執行緒的 malloc 實施 查詢 JSON 物件的 SQL 微方言實現

學習資源

Go 語言原本

這個專案是一個簡體中文線上電子書,在探討 Go 語言的原始碼核心,目前不再維護了,不過還是值得參考


Selfie – 一個教育軟體系統的一個微小的自編譯 C 編譯器,一個微小的自執行 RISC-V 模擬器,和一個微小的自託管 RISC-V 管理程式

Selfie 為本科生和研究生提供了一個設計和實現程式語言和執行時( runtime )系統的教育平台。 重點是編譯器、程式庫、作業系統甚至虛擬機器監視器的構造。 通常的主題是識別和解決系統程式碼中的自引用( self-reference ),這被視為在教授系統工程時的關鍵挑戰,因此得名。

這個專案除了教學簡報 還有搭配一本免費的電子書 Selfie: Computer Science for Everyone

工具

exa – 使用 Rust 開發取代 ‘ls’ 指令的程式

Exa 是 Unix 和 Linux 作業系統附帶的命令列程式 ls 的替代品,具有更多的功能和更好的預設值。它使用顏色來區分檔案型別和元資料。 它知道 symlinks、延伸屬性和 Git。 它很小,很快,只是一個二進位格式檔案。

Fraidycat – 從一個頁面關注部落格、維基、 YouTube 頻道,以及 Twitter、 Instagram 等賬戶

Fraidycat 是 Firefox 或 Chrome 的一個瀏覽器外掛——或者是一個 Electron 應用程式——可以用來在各種平台上跟蹤人們。 但是,與其向你展示一個傳統的“收件箱”或“飼料”檢視的所有收到的郵件-Fraidycat 還向你概述誰是活躍分子,並簡要介紹他們的活動。


Pastel – 用於生成、分析、轉換和操作顏色的命令列工具

Pastel 是一個命令列工具,用於生成、分析、轉換和操作顏色。 它支援許多不同的色彩格式和色彩空間,如 RGB (sRGB)、 HSL、 CIELAB、 CIELCh 以及 ANSI 8位元和24位元表示。

Web 應用程式開發

Helium – 比 Selenium-python 容易50% 。 是用於 web 自動化的最好的 Python 程式庫

是一個用於自動化 web 瀏覽器的 Python 程式庫

其內部運作原理是 Helium 將每個呼叫轉發給 Selenium。 不同之處在於 Helium的 API 要高階得多。 在 Selenium 中,你需要使用 HTML ID、 XPaths 和 CSS 選擇器來標識 web 頁面元素。 另一方面,Helium 允許你通過使用者可見的標籤來引用元素。 因此,Helium 指令碼比類似的 Selenium 指令碼短30-50% 。 更重要的是,它們更容易閱讀,並且對於底層網頁的變化更加穩定。

因為 Helium 只是 Selenium 的包裝器,所以可以自由地混合這兩個程式庫。


isomorphic-git – 一個純粹使用 Javascript 實現的 git,可使用於 node 和瀏覽器

之前有專文介紹過,請參考 一個純粹使用 Javascript 實現的 git,可使用於 node 和瀏覽器


Laracon 2020 線上研討會網站的原始碼

Laracon 是全世界最大的 Laravel 開發者研討會活動


Laravel 選項框架 – 使用各種支援的輸入型別在一個地方管理 Laravel 應用程式的動態設定


LiveWire – 一個用於 Laravel 的全端框架,它減輕了構建動態 ui 的痛苦

使用文件請參考 https://laravel-livewire.com/docs/quickstart/


Asmin – .NET Core 專案架構樣板

Asmin 提供你一個 .NET Core 的基礎架構讓你可以快速啟動專案

資料科學

使用 AWS 的基礎設施做即時的車牌辨識

這是一個客戶端3(YOLOv3,CRAFT 文字檢測器,CRNN 文字識別器) cortex 部署的機器學習模型。 這個客戶端只與這些 cortex api 協同運作。

這個應用程式使用已部署的 cortex api 作為 PaaS,從視訊攝像機捕獲 frames,將它們傳送到 cortex APIs 進行推斷,在收到響應後對它們進行重組,然後在輸出串流上覆蓋檢測 / 識別。 這是在汽車的儀表盤上即時完成的(由 Raspberry Pi + GSM 模組組成)。 通過 GSM 模組的 4G 連線可以進入網際網路。

雲端和網路管理

arkade – 安裝 Kubernetes Apps 最簡單的方法

Arkade (簡稱 ark)提供了一個帶有強型別 flags 的乾淨 CLI,可以在一個命令中將圖表和應用程式安裝到叢集中。

這邊有跟這個工具有關的 blog


滲透測試備忘錄集錦

收集了許多有用的 Pentesting 備忘錄


優秀的滲透測試資源,工具和其他列表


網路安全軟體,程式庫,文件書籍等資源集錦

行動應用程式設計

Flutter 粒子時鐘

有一個網站使用 Flutter 做各種前端的時鐘 App Flutter Clock Challenge,這個粒子風格的時鐘是其中的一個


Signal Android – 私人的即時通訊程式

強調隱私的即時通訊程式,連史諾登都出來背書

程式設計語言/程式庫

Neutralino – 可移植的輕量級跨平台應用程式開發框架

Neutralino 是一個輕量級和可移植的應用程式開發框架。 它允許你使用 javascript / typescript、 HTML 和 CSS 開發跨平台應用程式。

類似 Electron ,所以這邊有比較 Neutralinojs vs Electron vs NW.js

為什麼選擇 Neutralino?

在 Electron 和 NWjs 中,你必須安裝 node.js 和數百個相依程式庫。 嵌入式 Chromium 和 Node 會產生大量的資源消耗,甚至使得像“ hello world”這樣的簡單應用程式在大小上也相當可觀。 Neutralino 提供了一個輕量級和可移植的 SDK,它是 Electron 和 NW.js 的替代品,也有很多優點。


Kernel – Wasm – 沙盒 Kernel mode WebAssembly runtime

在 Linux 核心中安全地執行 WebAssembly,具有比原生效能更快的效能。

開發背景

大約一年前,我編寫了執行在 Linux 核心中的另一個 WebAssembly“ usermode”子系統 Cervus。 當時我們還沒有 WASI 或任何“營運準備”的非 web runtime,儘管 Cervus 專案已經證明這個想法是可行的,並且具有巨大的潛力。

現在 WASM 生態系統正在發展,是時候為真正的應用程式構建一個完整的 in-kernel WASM runtime。

為什麼要在 Kernel 中執行 WebAssembly?

效能和彈性!

因為 WASM 是由虛擬機器保護的虛擬 ISA,所以我們不需要依靠外部硬體和軟體檢查來確保安全。 在核心中執行 WASM 可以避免這些檢查引入的大部分經常性消耗,例如系統呼叫( context switching )和copy_{from,to}_user,從而提高效能。

此外,擁有低階的控制意味著我們可以實現許多在使用者空間中繁重或不可能實現的特性,比如虛擬記憶體技巧和處理密集的核心事件(比如網路封包過濾)。


TCMalloc

TCMalloc 是 Google 客製化的 C 語言的 malloc ()和 C++ operator new 的實現,用於 C 和 C++ 程式碼中的記憶體分配。 TCMalloc 是一個快速的、多執行緒的 malloc 實施。


JsonSQL – 查詢 JSON 物件的 SQL 微方言實現,純粹用 Scala 編寫

JsonSql 是一個 scala 程式庫,您可以使用熟悉的 SQL 語法來查詢 json 檔案。


也許你會有興趣

不受 FB 演算法影響,歡迎透過 e-mail 訂閱網站更新

Comments are closed.

由 WordPress.com 建置.

Up ↑

探索更多來自 Soft & Share 的內容

立即訂閱即可持續閱讀,還能取得所有封存文章。

Continue reading