日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux中终端字符界面打印QQ,教你如何在开发驱动时在图形界面下的终端打印字符!!...

發布時間:2025/3/20 linux 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux中终端字符界面打印QQ,教你如何在开发驱动时在图形界面下的终端打印字符!!... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我們平時在圖形界面下開一個終端(xterm),然后在程序里面開發程序時,用printk()打印一些我們需要打印的信息,但是這些信息不能在當前終端下面顯示出來,只能通過dmesg才能查看,很麻煩,這兩天從書上學了一個方法,拿出來和大家分享一下,簡單的幾句代碼就可以解決這個問題,代碼如下:

#include

#include

#include

#include

#include

#include

MODULE_LICENSE("GPL");

MODULE_AUTHOR("ZHANG FEI LONG");//這些信息可以通過modinfo??XXX.o查看

static void print_string(char * str)

{

struct tty_struct * my_tty;? ?//將要顯示字符的終端

#if(LINUX_VERSION_CODE<=KERNEL_VERSION(2,6,5))//條件編譯判斷kernel版本

my_tty = current->tty;

#else

my_tty = current->signal->tty;

#endif

if(my_tty!=NULL)

{

((my_tty->driver)->ops->write)(my_tty,

#if(LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,9))

0,

#endif

str,

strlen(str));

#if(LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,9))

((my_tty->driver)->ops->write)(my_tty,0,"\015\012",2);

#else

((my_tty->driver)->ops->write)(my_tty,"\015\012",2);

#endif

}

}

static int __init print_string_init(void)

{

print_string("The module has been inserted,Hello World");

return 0;

}

static void __exit print_string_exit(void)

{

print_string("The module has been removed,Farewell world");

}

module_init(print_string_init);

module_exit(print_string_exit);

代碼里面的關鍵部分就是print_string(char *)這個函數了,以后我們就可以調用這個信息隨便的在自己xterm里面打印信息了。

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的linux中终端字符界面打印QQ,教你如何在开发驱动时在图形界面下的终端打印字符!!...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。