Android Init 一些列印資訊無法看到

2021-09-24 18:07:18 字數 1326 閱讀 5798

在路徑

system/core/init/
中加了一些列印需要進行除錯,發現加了之後總是列印不出來。

我使用的是列印函式是:

log(info)
寫了乙個測試列印的**:

for

(int k=

0;k<

100;k++

)

結果發現只列印了2行出來。很奇怪。

加了很大的延遲之後才能正常列印出來。

log這個函式為什麼這樣呢? 沒有搞明白。!!!

嘗試使用linux標準的列印,printf ,cout,發現無法列印。

這個網上有解釋:

linux系統為每個使用者程序預設開啟了3個檔案,即標準輸入、標準輸出及錯誤輸出,並且分配了檔案描述符,與前三個檔案一一對應,分別是0、1、2三個

init程序其實就是linux的使用者程序,只不過他是第乙個,因此,也符合這個規定。

看** 標準的輸入、輸出被重定向了:

system/core/init/log.cpp
void

initkernellogging

(char

* ar**)

dup2

(fd,0)

;dup2

(fd,1)

;dup2

(fd,2)

;if(fd >2)

close

(fd)

; android:

:base:

:initlogging

(ar**,

&android:

:base:

:kernellogger, initaborter)

;}

dup2對標準輸出進行了重定向

我把重定向的**注釋掉,標準的輸出函式可以列印出來了。

void

initkernellogging

(char

* ar**)

dup2(fd, 0);

dup2(fd, 1);

dup2(fd, 2);

if (fd > 2) close(fd);

*/ android:

:base:

:initlogging

(ar**,

&android:

:base:

:kernellogger, initaborter)

;}

暫時先這樣,先除錯問題。

關於列印頁面的一些經驗

大家經常遇到再ie中列印 時需要隱藏一些不需要列印的物件,比如說按鈕,輸入框,或者希望莫個 顯示的時候 線是由顏色的,而列印的時候只需要有粗細之分,其實在css中可以設定在列印或者顯示的不同樣式,最近作了乙個應用 實屬逼上梁山 可以得到以上效果,下面是我的樣式表。大家仔細看一下其實只要建立2個sty...

一些人,一些事,一些

我覺得這是國內it企業浮躁和傳統的官本位性質決定的,導致國內企業都本末倒置。要想改變命運,我覺得有以下出路 1.不做技術了,改做混混 混混的概念很廣泛的,比如銷售 經理 幹部 皮包公司之類其實都屬於這類。中國就是這樣,越浮越掙錢,只有混混才能發財。要不更進一步,做流氓,廣義的流氓,也很不錯。2.專心...

POS印表機一些特殊控制

procedure tform1.button1click sender tobject varrprinter textfile i integer begin assignfile rprinter,lpt1 rewrite rprinter for i 0 to memo1.lines.cou...