原创 操作系統常用的調度算法總結

1 常見的批處理作業調度算法   1.1 先來先服務調度算法(FCFS):    就是按照各個作業進入系統的自然次序來調度作業。這種調度算法的優點是實現簡單,公平。其缺點是沒有考慮到系統中各種資源的綜合使用情況,往往使短作業的用戶不滿意,

原创 比特幣交易原理分析

最近一直在自學區塊鏈,這段時間開始系統總結一些學習的內容,寫成博客內容,希望能給初學者或者想要系統學習區塊鏈技術的同學一些幫助。 在這一系列技術總結後,會帶大家動手從零開發一個迷你區塊鏈。 迷你區塊鏈體驗地址: http://minibl

原创 android studio 導入本地外部項目或庫

  應用程序 / App1 / build.gradle settings.gradle 圖書館 / library1 / build.grade settings.gradle library2 / build

原创 swig 之 go 語言調用c,多參數返回

由於任務的原因,有一個項目需要用go語言調用c代碼。之前有接觸過swig,因此直接上官網去swig,果不其然,它是支持go語言的,二話不說,直接搞起。 首先,如果您不熟悉swig,可以自行百度。然後,本人也是不熟悉go語言,只爲了能在go

原创 android library 編譯ndk文件 編譯器的問題

最近在Android studio中進行開發。 創建了一個APP 和一個lib。 其中lib進行了ndk開發。 要問爲什麼,就希望把lib做成share庫。 但是遇到了問題,在進行sm3算法實現的時候(c代碼) 發現lib庫中的位移操作有

原创 編譯原理之詞法分析、語法分析、語義分析

詞法分析(Lexical analysis或Scanning)和詞法分析程序(Lexical analyzer或Scanner)    詞法分析階段是編譯過程的第一個階段。這個階段的任務是從左到右一個字符一個字符地讀入源程序,即對構成源程

原创 c/c++中define用法詳解及代碼示例

c++中define用法 define在c++語言中用法比較多,這裏對其進行整理。 1.無參宏定義 無參宏的宏名後不帶參數。  其定義的一般形式爲: #define 標識符 字符串11 其中的“#”表示這是一條預處理命令。凡是

原创 c語言的__FILE__、__LINE__和#line

C語言中的__FILE__用以指示本行語句所在源文件的文件名,舉例如下(test.c): #include <stdio.h>int main(){printf("%s\n",__FILE__);} 在gcc編譯生成a.out,執行

原创 JNI 字符串處理

訪問字符串 jstring 2 char * jstring類型是指向JVM內部的一個字符串,和C風格的字符串類型char*不同,所以在JNI中不能通把jstring當作普通C字符串一樣來使用,必須使用合適的JNI函數來訪問JVM內部

原创 DH密鑰交換和ECDH原理

1、有兩個全局公開的參數,一個素數q和一個整數a,a是q的一個原根。 2、假設用戶A和B希望交換一個密鑰,用戶A選擇一個作爲私有密鑰的隨機數XA<q,並計算公開密鑰YA=a^XA mod q。A對XA的值保密存放而使YA能被B公開獲得

原创 c++ 多值返回,指針使用

一般來說, 如果一個函數需要返回多個參數,可以採用以下兩種方法: 第一種方法是將返回值作爲寫參數。 第二種方法是定義一個結構,返回指向該結構的指針。 下面的一個例子是指針使用的一個例子。 change1 是值傳遞,不能作爲返回值使用

原创 android解析XML文件

一、基本介紹 對XML解析有SAX和DOM等多種方式,Android中極力推薦xmlpull方式解析xml。xmlpull不僅可用在android上同樣也適用於javase,但在javase環境中需自己獲取xmlpull所依賴的類庫,

原创 android studio 引入so使用

第一步:把so庫放到主module的libs/下的對應CPU架構目錄中,比如libs/armeabi中。 主module的build.gradle文件裏面,android標籤裏添加: sourceSets { main {

原创 Android APK加固完善篇

作者:http://blog.csdn.net/jiangwei0910410003/article/details/51557135 一、前言 時隔半年,困擾的問題始終是需要解決的,之前也算是沒時間弄,今天因爲有人在此提起這個

原创 C++ const用法

C++ const 允許指定一個語義約束,編譯器會強制實施這個約束,允許程序員告訴編譯器某值是保持不變的。如果在編程中確實有某個值保持不變,就應該明確使用const,這樣可以獲得編譯器的幫助。 1.const 修飾成員變量  1