原创 Android下uid與多用戶釋疑(一)

Android是基於Linux的OS,Linux下有一套自己的賬戶管理體系,而Android對此有一些封裝和改動。同事,Android也引進了自己的多用戶功能。所以,大量的類似“uid”的概念存在於Android中,讓

原创 Android系統app的domain(安全上下文)設定方法

背景 在運行了SELinux的Linux系統中,一般通過爲C/C++編寫的可執行文件指定特殊的安全上下文,然後用type_transition語句設定這些文件被執行後,產生對應的C/C++進程的安全上下文,通過這種方法,可以爲系統

原创 Android下uid與多用戶釋疑(二)

3.Android多用戶 Android4.2開始支持多用戶。Linux的uid/gid多用戶體系已經被用在App管理上了,所以android重新開發了一套多用戶體系,在UserManagerService中管理,P

原创 sqlite操作總結(二)

sqlite除了可以讀寫基本的數據類型,還包括二進制類型,下面描述在sqlite中讀寫二進制數據的方法。 首先,在建表時,將這類數據的類型定義爲BLOB: CREATE TABLE IF NOT EXISTS T1 ("Persi

原创 ext4文件系統結構分析應用實例--mount/umount文件系統改變了文件系統鏡像的哪些數據?

背景 在上一篇博文《構造固定大小的文件並進行格式化的方法》(https://blog.csdn.net/keheinash/article/details/104581785)中,提到創建ext4文件系統鏡像是爲了用於驗證大文件加

原创 構造固定大小的文件並進行格式化的方法

背景 這兩天工作中需要使用大文件驗證文件加解密模塊的效果,一般來說,無論是大文件還是小文件,要驗證解密後的結果是否和明文一致,都是用md5sum、shasum等計算摘要的方式,比較解密後的結果的摘要和明文的摘要,如果摘要一致,則說

原创 正則表達式中斷言的使用以及簡單例子

原文鏈接: https://www.cnblogs.com/dogecheng/p/11466687.html https://www.cnblogs.com/he-qing-qing/p/11331080.html 版權聲明:本

原创 用哈希表判斷兩個單鏈表是否相交的問題

判斷兩個單鏈表是否相交,一般有下面幾種方法: 1.遍歷第一個鏈表,記錄每次獲得的節點地址,然後遍歷第二個鏈表,看記錄的節點地址是否存在第二個鏈表中,這種方法的時間複雜度爲O(n^2)。 2.對第一個鏈表的每個節點地址構造哈希表,

原创 shell編程:遞歸遍歷目錄下的所有文件並統一改名

遇到一道題目,如何把某個目錄下的每個文件統一在名字前加上”abc”,用shell實現 首先分析,一個目錄下除了文件,還可能存在目錄,這裏可以看出需要有遞歸操作,如果是文件直接改名,目錄則進入然後進行遍歷 如何實現遍歷?我們寫一個

原创 Linux多線程鎖屬性設置

互斥鎖是Linux下多線程資源保護的常用手段,但是在時序複雜的情況下,很容易會出現死鎖的情況。 可以通過設置鎖的屬性,避免同一條線程重複上鎖導致死鎖的問題。 通過int pthread_mutexattr_settype(pthr

原创 隊列的實現(2):用鏈表實現隊列

上一篇文章: http://blog.csdn.net/keheinash/article/details/51125063 利用數組實現了循環隊列,這是靜態的隊列,缺點是需要預設大小,當隊列滿時,無法再插入新的數據,只有等隊

原创 隊列的實現(1):循環隊列的實現

隊列是一種“先進先出的數據結構”,可分爲靜態隊列和鏈式隊列。靜態隊列一般使用數組實現,數組需要預先定義內存大小,爲了避免內存浪費,一般使用循環隊列。接下來講述循環隊列的原理以及實現代碼。 循環隊列數據結構定義: int fron

原创 sqlite操作總結(四)

sqlite是一款輕量級的數據庫,提供了C/C++的API,在嵌入式領域應用廣泛。我是在Linux下利用sqlite的源碼編譯成動態庫,在我的代碼裏直接調用sqlite的接口,非常易於使用。 當我們把執行sqlite3_exec接

原创 利用單鏈表實現棧

棧是一種僅限於在頭尾操作的數據結構,和隊列相反,棧的特點是“先進後出”,因此又稱爲LIFO。 和隊列一樣,棧也有鏈表和數組兩種實現方式,各自的優缺點和介紹隊列時提到的基本相同。以下介紹使用鏈表實現棧的方式(鏈式棧)。下面是鏈式棧的

原创 sqlite操作總結(一)

sqlite是一款輕量級的數據庫,提供了C/C++的API,在嵌入式領域應用廣泛。我是在Linux下利用sqlite的源碼編譯成動態庫,在我的代碼裏直接調用sqlite的接口,非常易於使用。 簡單列舉幾個常用的接口,網上的資料都有