自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

转载 IO内存

1)cat /proc/iomem看到的内容:IO memory空间的地址资源分配情况,以树状结构显示。request_mem_regionioremap 2)cat /proc/ioports看到的内容IO port空间的地址资源分配情况,以树状结构显示。[源于x86平台的设计思想,目前基本不用了]request_regionioremap  

2013-09-17 16:48:43 775

转载 IO端口和IO内存

A.几乎每一种外设都是通过读写设备上的寄存器来进行的。外设寄存器也称为“I/O端口”,通常包括:控制寄存器、状态寄存器和数据寄存器三大类,而且一个外设的寄存器通常被连续地编址。CPU对外设IO端口物理地址的编址方式有两种:一种是I/O映射方式(I/O-mapped),另一种是内存映射方式(Memory-mapped)。而具体采用哪一种则取决于CPU的体系结构。

2013-09-17 14:53:43 471

转载 linux中的 IO端口映射和IO内存映射【转】

CPU地址空间(一)地址的概念1)物理地址:CPU地址总线传来的地址,由硬件电路控制其具体含义。物理地址中很大一部分是留给内存条中的内存的,但也常被映射到其他存储器上 (如显存、BIOS等)。在程序指令中的虚拟地址经过段映射和页面映射后,就生成了物理地址,这个物理地址被放到CPU的地址线上。        物理地址空间,一部分给物理RAM(内存)用,一部分给总线用,

2013-09-17 14:44:01 571

转载 IORESOURCE_IO和IORESOURCE_MEM

内核中有很多资源,但属于IO资源的有:#define IORESOURCE_IO        0x00000100    /* Resource type */#define IORESOURCE_MEM        0x00000200#define IORESOURCE_IRQ        0x00000400#define IORESOURCE_DMA        0

2013-09-17 14:18:22 5204

转载 文件和路径名称获取

1. getcwd 获取当前工作目录:  UNIX C函数。相关函数:get_current_dir_name, getwd, chdir头文件:#include 定义函数:char * getcwd(char * buf, size_t size);函数说明:getcwd()会将当前的工作目录绝对路径复制到参数buf 所指的内存空间,参数size 为buf 的空间

2013-09-05 14:48:53 440

原创 Minigui学习--font

1.字体结构体定义:/** The logical font structure. */typedef struct _LOGFONT {    /** The type of the logical font. */    char type [LEN_FONT_NAME + 1];    /** The family name of the logical font. */

2013-09-05 11:06:06 1397

原创 Minigui学习--icon

icon类型:HICON定义在/minigui/gdi.h文件中1.创建icon/** * \fn HICON GUIAPI CreateIconEx (HDC hdc, int w, int h, \                const BYTE* AndBits, const BYTE* XorBits, int colornum, \              

2013-09-04 15:23:52 897

转载 字符串转为float,int,double类型

1. 函数名: atof功 能: 把字符串转换成浮点数表头文件 #include 定义函数 double atof(const char *nptr);函数说明 atof()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('\0')才结束转换,并将结果返回。参数nptr字符串可包含正负号、小数点或E(e)来表示

2013-09-04 14:39:53 3608

原创 Minigui学习--窗口用到的一些函数

1.获取和设置窗口额外数据:MG_EXPORT DWORD GUIAPI GetWindowAdditionalData (HWND hWnd);/** * \fn DWORD GUIAPI GetWindowAdditionalData (HWND hWnd) * \brief Retrives the first additional data of a window. *

2013-09-04 14:18:34 1427

原创 Minigui学习--光标

1.系统光标类型定义:在../minigui/minigui.h文件中定义#define MAX_SYSCURSORINDEX    22/* System cursor index. *//** System arrow cursor index. */#define IDC_ARROW       0/** System beam cursor index. */#de

2013-09-03 15:08:54 1408

原创 Minigui学习--画不同图形

1.画直线(1)将画笔移动到线的起始点:MG_EXPORT void GUIAPI MoveTo (HDC hdc, int x, int y);:moves the current pen position of the DC \a hdc to \a (x,y).The next line or other pen drawing operation will start from t

2013-09-02 17:47:50 2268

原创 Minigui学习--DC

1.相关函数:MG_EXPORT HDC GUIAPI GetDC (HWND hwnd); //gets a window DC of the specified \a hwnd, and returns  the handle to the DC. MiniGUI will try to return an unused DC from the internal DC pool, rath

2013-09-02 11:29:13 1339

原创 Minigui学习---鼠标获取和坐标在不同区域转换

(1)设置鼠标的所在的Wnd:函数定义(window.h文件中定义的):MG_EXPORT HWND GUIAPI GetCapture(void); //Retrives the handle to the window (if any) that has captured the mouse.return The handle to the window that has captur

2013-08-30 11:17:36 1354

原创 Minigui学习--绘制

DrawText

2013-08-29 14:44:55 602

原创 Minigui学习--RECT

1.RECT(1)定义:在common.h文件中有如下定义:typedef struct _RECT{    /**     * The x coordinate of the upper-left corner of the rectangle.     */    int left;    /**     * The y coordinate of th

2013-08-29 14:43:56 943

原创 Minigui学习---字符集

(1)获取系统的字符集:const char* sys_charset = GetSysCharset (TRUE);解析:此接口在/usr/local/include/gdi.h文件中定义,原型如下:/** * \fn const char* GUIAPI GetSysCharset (BOOL wchar) * \brief Gets the current syste

2013-08-29 14:19:21 1113

原创 Minigui学习--MAINWINCREATE 结构体

1.介绍:hMainWnd = CreateMainWindow (&CreateInfo);  每个MiniGUI 应用程序的初始界面一般都是一个主窗口,你可以通过调用CreateMainWindow函数来创建一个主窗口,其参数是一个指向MAINWINCREATE 结构的指针,本例中就是CreateInfo,返回值为所创建主窗口的句柄。MAINWINCREATE 结构描述一个主窗口的

2013-08-29 11:23:10 1874

转载 Minigui学习--MiniGUI的三种运行模式

MiniGUI 针对三种运行模式分别定义了不同的宏。 (1)  MiniGUI-Threads: _MGRM_THREADS (2)  MiniGUI-Processes: _MGRM_PROCESSES 和_LITE_VERSION (3)  MiniGUI-Standalone : _MGRM_STANDALONE 和 _LITE_VERSION 和_STAND_ALONE

2013-08-28 17:45:07 2578

转载 用valgrind检测glib的内存错误

前段时间我们发现一个daemon总是随机的crash,对于这种随机的crash的BUG,我们自然会想到是内存越界问题引起的。但是用valgrind检测却没有发现任何错误,那部分代码比较复杂,结果花了几天也没有发现任何线索。后来,我想起glib里有自己的内存管理机制,通过glib分配的内存是glib自己管理的,valgrind只是重载glibc的内存管理函数,它根本不知道glib的存在,因此glib

2013-08-22 17:49:40 839

转载 设置glib的log级别

glib提供了一系列的log函数,像g_message、g_critical、g_warning、g_debug和g_error等,可以根据信息的类别调用不同的函数。     在我们的程序中,为了调试方便,很多地方调了g_debug,结果程序运行起来后,终端上的信息打印得眼花缭乱,不但影响性能,而且把真正有用的信息淹没掉了。        Glib既然提供了log级别,自然可以按log

2013-08-22 17:46:54 1733

转载 glib 介绍

glib用户手册:http://gtk-doc-cn.googlecode.com/svn/docs/glib/index.htmlhttp://lserv.deg.gubkin.ru/docs/glib/index.html GLib是一个跨平台的、用C语言编写的库,起初是GTK+的一部分,但到了GTK+第二版,开发者决定把跟图形界面无关的代码分开,这些代码于是就组装成了GLib

2013-08-22 10:54:12 696

转载 glib 哈希表学习(2)

1:哈希表原型        GHashTable* g_hash_table_new (GHashFunc hash_func,                                                             GEqualFunc key_equal_func);    GHashTable* g_hash_table_new_full (GHas

2013-08-22 10:51:15 843

转载 glib中的哈希表学习(1)

哈希表 是一类容器,也称为“映射”、“联合数组(associative array)” 或者“目录(dictionary)”。正如语文辞典使用一个定义来关联一个词,哈希表使用一个 键(key) 来唯一标识一个 值(value)。哈希表可以根据键非常快速地执行插入、查找和删除操作;实际上,如果使用得当,这些可以都是常数时间 —— 也就是 O(1) —— 操作。这比从一个有序列表中查找或删除条

2013-08-22 10:36:55 596

转载 GLib常用函数简介

如果在程序中要使用到glib库中的函数,则应该包含glib.h头文件(在gtk.h和gnome.h头文件中已经包含了glib.h了)1 类型定义1. 整数类型:gint8、guint8、gint16、guint16、gint31、guint32、gint64、guint64。不是所有的平台都提供64位整型 2. 整数类型gshort、glong、gint和short、long、

2013-08-22 10:26:27 5842 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除