【問鏈-EOS公開課】第十二課 EOS整體程式碼結構
EOS由programs、plugins、librarires、和contracts四部分組成,可以看出石墨烯的架構和EOS的架構是很相近的,EOS增加了對智慧合約的支援。實際上EOS並沒有直接用石墨烯的原始碼,而是重寫了90%的程式碼,不過基本架構是一樣的。
programs(應用層)
cloes:客戶端命令列互動模組,用於解析使用者命令,根據具體命令請求呼叫相應的介面,例如檢視區塊資訊、操作錢包等等。
nodeos:伺服器端,也就是區塊生產節點,用於接受客戶端的遠端請求,並打包區塊,主要包含四個外掛,chain_plugin、http_plugin、net_plugin、producer_plugin。
keosd:錢包管理模組,主要包括三個外掛,wallet_plugin、wallet_api_plugin、http_plugin。
plugins(外掛層)
支援動態載入相關元件,實現了應用層的業務邏輯和區塊鏈底層實現的解耦,同時為應用開發者提供友好的API介面,比較重要的有以下幾個外掛:
chain_plugin
http_plugin
net_plugin
producer_plugin
libraries(庫函式層)
為應用層和外掛層提供基礎能力,實現了區塊鏈的底層關鍵技術,例如,交易處理,生產區塊,加密功能,檔案IO操作,網路通訊能力等等;
appbase
chain
fc
-crypto
-io
-log
-network
-rpc
utilities
constracts(智慧合約層)
主要包含一些智慧合約的示例程式碼。
相關推薦
【問鏈-EOS公開課】第十二課 EOS整體程式碼結構
EOS由programs、plugins、librarires、和contracts四部分組成,可以看出石墨烯的架構和EOS的架構是很相近的,EOS增加了對智慧合約的支援。實際上EOS並沒有直接用石墨烯的原始碼,而是重寫了90%的程式碼,不過基本架構是一樣的
【問鏈-EOS公開課】第十四課 EOS從單簽名到多簽名
一、基本知識 賬戶:是儲存在區塊鏈上的人們可識別的ID。 許可權:每個事務都有,它是由已配置許可的賬戶所評估的。 閾值:每個被命名的許可權都有一個有效範圍,必須滿足是在許可下的一個簽名事務,將被視為有效。 簽名:事務的簽名是通過利用一個客戶端來執行,該客戶端擁有一個已載入並已解鎖的錢包。
【問鏈-EOS公開課】第十一課 EOS 智慧合約相互呼叫
EOS中合約之間是可以相互呼叫的,主要通過inline action完成合約之間的呼叫。 譬如在擲骰子游戲中,存在兩個玩家先下注資金,然後比較骰子大小後決定勝負,贏的那一方將獲得所有的下注資金。在eosio原始碼eos/build/contract/dice 智
【問鏈-EOS公開課】第十六課 EOS中文白皮書2.0
摘要 EOS.IO軟體引入了一種新的區塊鏈架構,意在實現去中心化應用的效能擴充套件。通過建立類似作業系統的結構,在此基礎上可構建各種應用程式。該軟體提供帳戶、身份驗證、資料庫、非同步通訊以及在數以百計的CPU或群集上的程式排程。該技術的最終形式是形成一個區塊鏈架
【問鏈-EOS公開課】第十五課 用cleos註冊EOS主網賬戶、投票和發幣
第一步: 安裝docker https://www.docker.com/community-edition #install docker for CentOS. (其他作業系統看上面連結) sudo yum install -y yum-utils device-mapper-
【問鏈-EOS公開課】第十課 EOS 錯誤碼整理
EOS 目前大約有180種錯誤型別,雖然有錯誤碼,但是還是很籠統的,具體的報錯資訊還得看detail裡面的內容 一、常見的錯誤碼以及issue上對應的錯誤記錄 3010001 Invalid name 賬戶名格式1-12位(a-z,1-5,“.” ) 且”.”不
【問鏈-EOS公開課】第八課 EOS 資料庫與持久化 API(一)
在 EOS 中,智慧合約執行完畢後,所佔用的記憶體會釋放。程式中的所有變數都會丟失。如果智慧合約裡要持久地記錄資訊,比如遊戲智慧合約要記錄每位使用者遊戲記錄,本次合約執行完畢後資料不能丟失,就需要將資料儲存到 EOS 資料庫中。與資料庫互動的 API 被官方成為 Persistence API,中文可以叫做持
【問鏈-EOS公開課】第九課 EOS 資料庫與持久化 API(二)
上次的文章詳細講解了 EOS 資料庫的架構,本文將以官方示例為基礎,詳解 EOS 資料庫的開發實戰。 基本步驟 在智慧合約裡與 EOS 資料庫互動,首先要定義儲存的資料: 定義物件:具體就是定義一個 C++ 類或者 C++ 結構體,資料表就由一個個物件組成。 定
【問鏈-EOS公開課】第十三課 EOS外掛機制深入解析
外掛體系 EOS外掛由三層類來實現。 最頂層是抽象類abstract_plugin,定義了外掛的基本介面。 中間層是外掛模板類plugin,主要用來解決外掛之間依賴呼叫。 最底層是具體外掛類,專注單個外掛的業務功能實現。 nodeos程序啟動後第一步是註冊外掛
【問鏈財經-區塊鏈基礎知識系列】 第十六課 區塊鏈將變革教育產業,未來有六大應用方向
區塊鏈是什麼? 2008 年中本聰發表的論文《比特幣:一種點對點的電子現金系統》。文章提出,希望可以建立一套新型的電子支付系統,這套系統“基於密碼學原理而不是基於信用,使得任何達成一致的雙方能夠直接進行支付,從而不需要第三方中介參與”。 2009 年 1 月 3 日,區塊鏈的第一個區
【問鏈財經-區塊鏈基礎知識系列】 第十七課 區塊鏈應用於汽車保險行業所帶來的變革
編者按:在一般汽車保險詐騙案,汽車駕駛會故意安排假車禍,然後向保險公司提出各種不實和非法的索賠。據德勤(Deloitte)統計,這些假車禍每年讓保險業損失約7億新元。汽車駕駛若對不同保險公司索賠,除非共享跨產業資料,否則很難發現欺詐行為。區塊鏈結合汽車保險行業將會產生新的火花。
【問鏈財經-區塊鏈基礎知識系列】 第十八課 區塊鏈應用於貸款結算
編者按:在金融業務中,企業或個人向金融機構進行借貸,產生貸款業務,貸款結算是當貸款所有本金、利息和費用都收回後,貸款即告結清。貸款結清是信貸資金的風險已不存在,貸款安全回收,併為銀行帶來了收益。那結合區塊鏈,貸款結算會帶來哪些改變? 商業銀行的主要業務有三類:其一,存款
【問鏈財經-區塊鏈基礎知識系列】 第十九課 區塊鏈應用於電子存證
編者按:在傳統的具有法律效益的存證需要第三方權威公證處進行公證,並且需要繫結時間戳和相關資訊,步驟繁瑣,進度比較慢,後來存證電子化後一定程度上提高了效率、節省了成本,但也會有一些其他的問題,比如第三方篡改電子存證,雖然絕大多數這種情況不會發生,但是當涉及到巨大的利益時,就很難保證
【問鏈-區塊鏈基礎知識系列】 第十課 首席架構師談區塊鏈技術演進
一、區塊鏈和比特幣,都有“幣-鏈-網”三層含義 1、第一層含義是“幣”。這個“幣”並不是剛才王行長所說的真正意義上的“貨幣”,而是一種與區塊鏈密切相關的通證(Blockchain Token)。其本質,是記錄在區塊鏈賬本結構中的某個“元資訊”。例如,比特幣區塊鏈的賬本中的記錄的主要元資料
【MySQL必知必會】第十章 創建計算字段
客戶機 cat 第十章 去掉 quantity 字段 cme 引用 field 1、字段(field):一般與列(同義),經常互換使用,不過數據庫列一般稱之為列,字段通常用在計算字段的連接上。 2、拼接:將值連接到一起構成單個值。 註:多數DBMS使用+或||來實現拼接
【MySQL必知必會】第十六章 創建高級聯結
類型 where子句 contact items order by 其他 mysq custom 必知必會 1、使用表別名 好處: a、縮短SQL語句。 b、允許在單條SELECT語句中多次使用相同的表。 輸入: SELECT cust_name,cu
【第四組】第十二次沖刺會議報告
commit 執行 完成 技術文檔 整體 alt 點擊 轉換 導入 張:做了:美化初始化界面,解決文件沖突 困難:嵌入js的時候傳的是string[],但是只執行string[0] 規劃:多個點的連接(動態添加point),點擊標簽跳轉,導入圖片,顯示界面 孔:做了:細
【第一組】第十二次沖刺例會紀要
磁貼 什麽 bsp 做了 李白 二次 昨天 png ges 開發小組:Neu Old Driver 沖刺經理:何圖 小組成員:李白洋、王彬宇、李恒雨、黃文睿、安迪 1、 昨天做了什麽 黃文睿:調整界面,重新整理代碼 李白洋:、完成空教室查詢頁面 何圖:完成教師評價頁面
【軟工項目組】第十五次會議
運用 安排 nbsp clas gpo 服務器 post 軟工 服務 第十五次會議 時間:2017-12-30 19:00 至 20:30 地點:第三教學樓A樓休息區 集體寫代碼與答疑討論的時間。 樣式設計。 近期任務 賀一純、王越琛:css的運用。 王哲光
【軟工項目組】第十七次會議
blog 開始 規劃 class 討論 過程 1-1 完成 數據庫設計 第十七次會議 時間:2018-1-12 19:00 至 20:00 地點:第三教學樓A樓休息區 討論最終規劃。 近期任務 賀一純、王越琛:css的運用。 王哲光、生力軍:前端頁面編寫。 陳