标签 学习笔记 下的文章

嵌入式Linux开发学习笔记:开发环境

硬件环境准备

综述

如果要学习嵌入式开发,尤其是刚开始学习,那么手边有一个嵌入式设备基本上是必须的。虽然没有设备用仿真器也可以,不过看不到实物的话理解起来会稍微纠结一点。ADS(ARM Developer Suite)
具体来说,学习嵌入式开发要准备的硬件包括:
1、开发板
2、PC与开发板的连线

开发板

开发板(demoboard)是用来进行嵌入式系统开发的电路板,包括中央处理器、存储器、输入设备、输出设备、数据通路/总线和外部资源接口等一系列硬件组件。开发板一般由嵌入式系统开发者根据开发需求自己订制,也可由用户自行研究设计。开发板是为初学者了解和学习系统的硬件和软件,同时部分开发板也提供的基础集成开发环境和软件源代码和硬件原理图等。常见的开发板有51、ARM、FPGA、DSP开发板。
对于学习者来说,有一个开发板可以对嵌入式开发有更直观的了解,如果说不缺那么几百块钱的话,还是买个好些。基本上这个开发板能帮你渡过从入门到掌握之间的阶段。… Read the rest

嵌入式Linux开发学习笔记:嵌入式开发基础

嵌入式开发概述

嵌入式系统的概念

嵌入式系统的定义为:以应用为中心、以计算机技术为基础、软硬件可裁剪、适用于应用系统,对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

简单地说,嵌入式系统就是设计适用于某个功能的专用硬件,搭配与之对应的经过优化的操作系统,并在其中运行这个设备专属的软件

嵌入式系统的特点

  1. 软件、硬件可裁剪
  2. 对功能、可靠性、成本、体积、功耗严格要求

嵌入式开发的方向

硬件层

是整个嵌入式系统的根本,如果现在单片机及接口这块很熟悉,并且能用C和汇编语言来编程的话,从嵌入式系统的硬件层走起来相对容易,硬件层也是驱动层的基础,一个优秀的驱动工程师是要能够看懂硬件的电路图和自行完成CPLD的逻辑设计的,同时还要对操作系统内核及其调度性相当的熟悉的。但硬件平台是基础,增值还要靠软件。硬件层比较适合于,电子、通信、自动化、机电一体、信息工程类专业的人来搞,需要掌握的专业基础知识有,单片机原理及接口技术、微机原理及接口技术、C语言。… Read the rest

Linux系统使用学习笔记:日常操作

Shell热键

Tab*2
命令补齐

Ctrl+C
中断当前程序

Ctrl+D
=exit

切换终端
文字模式CTRL+ALT+F1-F6
图形模式CTRL+ALT+F7
启动xwindow:startx

命令

关机

shutdown
关机

sync
将数据同步写入硬盘中

reboot
重启

poweroff

halt

系统管理

ls
列目录
参数
-al
列出所有的文件详细的权限与属性
 
    当为[ d ]则是目录,例如上表档名为『.gconf』的那一行;
    当为[ – ]则是文件,例如上表档名为『install.log』那一行;
    若是[ l ]则表示为连结档(link file);
    若是[ b ]则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
    若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。

info
chm版man
快捷键

A B
空格键 向下翻一页
[Page Down] 向下翻一页
[Page Up] 向上翻一页
[tab] 在node 之间移动,有node 的地方,通常会以* 显示。
[Enter] 当光标在node 上面时,按下Enter
Read the rest

Linux系统使用学习笔记:文件系统

分区Pattern

分区基础知识

主要启动记录区(Master Boot Record, MBR)

可以安装启动管理程序的地方,有446 bytes

分割表(partition table)

记录整颗硬盘分割的状态,有64 bytes

每个分区对应的文件
主分区1-4
扩展分区5-n:IDE5-63 SATA5-15

文件系统类型

ext2/ext3
是Linux适用的档案系统类型。

physical volume (LVM)
这是用来弹性调整档案系统容量的一种机制, 可以让你的档案系统容量变大或变小而不改变原有的档案数据内容

software RAID
利用Linux操作系统的特性,用软件模拟出磁盘阵列的功能

swap
就是内存置换空间!由於swap并不会使用到目录树的挂载, 所以用swap就不需要指定挂载点

vfat
同时被Linux与Windows所支援的档案系统类型

目录

目录说明

/ (root, 根目录):
与开机系统有关
 

以下目录不可与根目录分开
/etc:配置文件
/bin:重要执行档
/dev:所需要的装置文件
/lib:执行档所需的函式库与核心所需的模块
/sbin:重要的系统执行文件
Read the rest

《Real time rending》 3rd 学习笔记(第四章)

 

4       变换

变换是这样一种操作:将点、矢量或颜色之类的用某种方式转换它们。对于计算机图像从业者,掌握变换非常重要。使用变化,你可以定位、变形和动画物体、光源和镜头。所有运算都是在相同坐标系统中,使用不同方式将物体被投影在平面上。

线性变换(liner transform)保持矢量和或标量乘积的变换:

f(x)+f(y+=f(x+y)

kf(x)=f(kx)

例如,f(x)=5x变换取一个标量x并将x中每个元素乘5,这种变换是线性的,任何两个矢量乘5后相加与先加再成结果相同。这个函数叫做缩放变换(scaling transform),它改变了物体的大小。旋转变换是另一种变化,它从起点旋转一个矢量。缩放和旋转,事实上所有3元素矢量的线性变换都可以用一个3*3矩阵表示。

但是这个矩阵一般不够大。一个3元素向量的函数f(x)=x+(7,3,2)不是线性的,将这个函数应用在两个独立向量上,形成结果时将增加(7,3,2)两次。[f(x)+f(y)≠f(x+y)]。为一个矢量增加固定矢量执行了一次平移(translation),例如,它将所有位置移动了相同的数量。这是一种有用的变换,我们将这几种变化联合起来。… Read the rest

《Real time rending》 3rd 学习笔记(第三章)

 

 

3       图形处理器

历史上,图形硬件加速最早从管线的最后一步,光栅化开始,逐步管线前端发展,如今已经包括了程序阶段的算法。相较于软件,硬件的优点在于速度快,速度是至关重要的。

1999年NVIDIA Geforce256是第一块包括硬件顶点处理的显卡,NIVDIA发明了新词图形处理单元(graphics processing unit,GPU)来区分GeForce 256与之前只能做光栅化的显卡。

之后的几年,GPU从可配置的复杂的固定功能管线发展到了高度可编程的“白板”,开发者可以实现他们自己的算法。多种可编程的shader是控制GPU的主要手段。

vertex shader可以对每个顶点做多种操作;pixel shader处理每一个像素,允许对每一个像素执行着色方程; geometry shader允许GPU创建和销毁几何图元(点、线、三角形)on the fly。运算结果可以被写入高精度缓冲器并被重复使用。

3.1        

Read the rest

《Real time rending》 3rd 学习笔记(第二章)

2       图形渲染管线

渲染管线的主要功能是通过给定一个虚拟摄像机,三维空间内的物体,光影,着色方程(shading equation),纹理和其他信息,创建或渲染一张二维图像。

绘制线条的算法:Bresenham’s line-drawing algorithm、symmetric double-step algorithm

有关基础绘图算法参考书《计算机图形学的算法基础]. Procedural Elements of Computer Graphics》(Rogers)

2.1         结构

实时渲染管线大致可以分三个阶段:程序(application)、几何体(geometry)、光栅器(rasterizer)

程序阶段(Application stage由程序驱动,因此由软件实现并在cpu上执行。Cpu通常包括多个核心,所以可以并行执行多个线程。在cpu上执行的任务包括碰撞检测(collision detection)、全局加速算法(global acceleration algorithms),动画(animation),物理仿真(physics simulation)等。… Read the rest

《Real time rending》 3rd 学习笔记(第一章)

 

以前试着翻译《real time rending》,因为这样或者那样的原因拖了一年多没有继续,今天整理硬盘的时候看到了这篇放了很久的笔记,索性发上来吧。
不是完全的逐句翻译,可以当作读书时的参考吧。
=============================================

1       介绍

1.1         内容综述

第二章,图像渲染管线:

这章讲的是实时渲染的核心,如何进行场景描述并把它转化成可视图像的原理。

第三章,图像处理器:

现代GPU的渲染管线实现阶段使用的是固定功能和可编程单元的组合。

第四章,变换:

变换是计算对象位置、方向、大小、形状;摄影机位置、视野的基本工具。

第五章,外观:

这一章开始讨论实现现实的表面时,材质、灯光的定义以及使用。同时也包含了与外观有关的主题,例如使用反锯齿和伽马校正提高图像质量等。

Read the rest

分类目录