自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 (综合)xorg-xserver相关完全解析

本文主要是从以下几个方面介绍xorg-xserver 相关的知识 1.linux系统图形界面框架2.xserver 和x client启动过程3.图形2d,3d加速原理简介4.xserver主分支代码解析。5.xserver,xclient协议简介6.一个基于Xlib的简单例子解析7.radeon驱动初始化代码解析.1.l

2015-09-21 11:24:48 6909

转载 Git之忽略文件(ignore file)

1、    环境Windows XP SP3 + TortoiseGit + msysGit 2、  ignore files的三种方法 以下涉及的ignore文件均为如下格式:# 以'#'开始的行,被视为注释.                                                              

2015-09-21 11:22:08 470

转载 linux内核学习笔记之——list_for_each_entry

在Linux内核源码中,经常要对链表进行操作,其中一个很重要的宏是list_for_each_entry:意思大体如下:假设只有两个结点,则第一个member代表head,list_for_each_entry的作用就是循环遍历每一个pos中的member子项。图1:pos:                                                 

2015-09-10 14:54:04 737

转载 list_for_each()与list_for_each_safe()的区别

list_for_each()的定义:[plain] view plaincopyprint?/**   * list_for_each    -   iterate over a list   * @pos:    the &struct list_head to use as a loop counter.   * @head

2015-09-10 14:09:07 1045

转载 Nouveau源码分析(三):NVIDIA设备初始化之nouveau_drm_probe

Nouveau源码分析(三)向DRM注册了Nouveau驱动之后,内核中的PCI模块就会扫描所有没有对应驱动的设备,然后和nouveau_drm_pci_table对照.对于匹配的设备,PCI模块就调用对应的probe函数,也就是nouveau_drm_probe. [cpp] view plaincopyprint?//

2015-09-02 10:12:59 977

转载 Nouveau源码分析(零)

前言:最近在尝试操作系统图形化的驱动加速方面,因为我家电脑是NVIDIA的,所以就先研究一下NVIDIA方面的吧.Intel和AMD的显卡都有丰富的文档,因此相对来说比较简单.而NVIDIA则十分保守,甚至于没有一点公开官方文档可供查阅.非官方文档也是屈指可数,至于网上的微型驱动实现更是一个不个. [曾经找过支持intel显卡的小型操作系统,还真找到了一个,对照intel文档看起来

2015-09-01 16:43:33 1212 1

转载 Nouveau源码分析(七): 各SUBDEV/ENGINE初始化 (1)

Nouveau源码分析(七)虽然各个SUBDEV/EGINE的初始化实际还是在nouveau_drm_load里,但还是换个标题吧. 等把各个SUBDEV/ENGINE之类的说完再换回去.上次已经按着初始化的顺序介绍了一下各个subdev的用途,现在按顺序,首先来看VBIOS的ctor函数:[cpp] view plaincopyprint?

2015-09-01 16:41:49 485

转载 Nouveau源码分析(六):NVIDIA设备初始化之nouveau_drm_load (3)

Nouveau源码分析(六)上一篇中我们暂时忽略了两个函数,第一个是用于创建nvif_device对应的nouveau_object的ctor函数:[cpp] view plaincopyprint?// /drivers/gpu/drm/nouveau/core/engine/device/base.c  488 static stru

2015-09-01 16:40:44 947

转载 Nouveau源码分析(五):NVIDIA设备初始化之nouveau_drm_load (2)

Nouveau源码分析(五)接着上一篇来,先把nouveau_drm_load再贴出一遍来吧:[cpp] view plaincopyprint?// /drivers/gpu/drm/nouveau/nouveau_drm.c  364 static int  365 nouveau_drm_load(struct drm_

2015-09-01 16:39:53 1065

转载 Nouveau源码分析(四):NVIDIA设备初始化之nouveau_drm_load (1)

Nouveau源码分析(四)probe函数成功返回之后,DRM模块就会调用struct drm_driver的load函数,对应nouveau的nouveau_drm_load.这个函数虽然看起来不是特别长,但每一个调用的函数展开后就会变得非常长了![cpp] view plaincopyprint?// /drive

2015-09-01 16:38:44 853

转载 Nouveau源码分析(二):Nouveau结构体的基本框架

Nouveau源码分析(二)在讨论Nouveau对Nvidia设备的初始化前,我准备先说一下Nouveau结构体的基本框架Nouveau的很多结构体都可以看作是C++中的类,之间有很多相似的东西,比如继承关系,virtual成员函数等.模拟继承先尝试阅读一下这个代码:[cpp] view plaincopyprint?

2015-09-01 16:37:01 687

转载 Nouveau源码分析(一):从module_init开始

Nouveau源码分析(一)[cpp] view plaincopyprint?// /drivers/gpu/drm/nouveau/nouveau_drm.c  1089 module_init(nouveau_drm_init);  1090 module_exit(nouveau_drm_exit);  相信只

2015-09-01 16:34:44 779

空空如也

空空如也

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

TA关注的人

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