自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (1)
  • 收藏
  • 关注

原创 操作系统_再识(序言)

从来都没有写过博客,想写一些博客记录一些学习经历。工作三年了,再次选择未来工作时,还是有一些纠结。我大学是学计算机科学与技术出身的。大学期间,觉得对计算机有所了解。大学时学的课程:大一:C语言,计算机一些基础课程。大二:数据结构,汇编语言,数电/模电分析,算法导论。大三:编译原理,计算机组成原理,微机接口原理,数据库原理,(ASP.NET,java)。大四:

2013-05-27 22:39:37 676 1

转载 Shell脚本编程的常识

(这些往往是经常用到,但是各种网络上的材料都语焉不详的东西,个人认为比较有用)七种文件类型d            目录                                                       l             符号链接s             套接字文件

2013-05-30 13:04:15 551

转载 关于 shell 脚本编程的10 个最佳实践

每一个在UNIX/Linux上工作的程序员可能都擅长shell脚本编程。但大家解决问题的方式却不尽相同,这要取决于对专业知识的掌握程度、使用命令的种类、看待问题的方式等等。对于那些处在shell脚本编程初级阶段的程序员来说,遵循一些恰当的做法可以帮助你更快、更好的学习这些编程技巧。下面,我们就来讨论这些能帮助你学习shell脚本编程的方法吧。 1、多动手 你想学习shell脚本编程

2013-05-30 13:00:49 466

转载 Linux shell脚本编写基础

第1部分. Linux 脚本编写基础1.1 语法基本介绍1.1.1 开头程序必须以下面的行开始(必须方在文件的第一行):#!/bin/sh  符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。  当编辑好脚本时,如果要执行该脚本,还必须使其可执行。  要使脚本可执行:编译 chmod +x filename 这样才

2013-05-30 13:00:10 517

转载 linux下automake用法(转)

作为Linux 下的程序开发人员,大家一定都遇到过Makefile ,用make 命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile ,如果要想写出一个符合自由软件惯例的Makefile 就不那么容易了。   在本文中,将给大家介绍如何使用 autoconf 和automake 两个工具来帮助我们自动地生成符合自由软件惯例的Makefile ,这样就可以

2013-05-30 12:56:52 435

转载 例解 autoconf 和 automake 生成 Makefile 文件

引子无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令。不管是自己进行项目开发还是安装应用软件,我们都经常要用到make或 make install。利用make工具,我们可以将大型的开发项目分解成为多个更易于管理的模块,对于一个包括几百个源文件的应用程序,使用make和 makefile工具就可以轻而易举的理顺各个源文件之间纷繁复杂的相互关系。但是如果通过

2013-05-30 12:55:23 370

转载 跟我一起写Makefile:MakeFile介绍

makefile 介绍make命令执行时,需要一个 makefile 文件,以告诉make命令需要怎么样的去编译和链接程序。首先,我们用一个示例来说明makefile的书写规则。以便给大家一个感性认识。这个示例来源于gnu的make使用手册,在这个示例中,我们的工程有8个c文件,和3个头文件,我们要写一个makefile来告诉make命令如何编译和链接这几个文件。我们的规则是:1)如果

2013-05-30 12:52:00 403

转载 简单而又完整的Makefile

简单而又完整的Makefile(原)        刚开始学习makefile是一个痛苦的过程,从杂乱无章的规则到一个简单的makefile再到一个系统化的makefile不是一蹴而就的事情。今天我就写一个简单的,规范的(相对而言),功能也算齐全的Makefile。适合于初学者的makefile。希望对新加入linux的同学们有用;一,源文件准备       假设在

2013-05-30 12:48:55 545

转载 Linux makefile 教程 非常详细,且易懂

最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。            于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。           后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比

2013-05-30 12:47:44 453

转载 SQL语句大全

--语 句 功 能  --数据操作SELECT --从数据库表中检索数据行和列INSERT --向数据库表添加新数据行DELETE --从数据库表中删除数据行UPDATE --更新数据库表中的数据-数据定义CREATE TABLE --创建一个数据库表DROP TABLE --从数据库中删除表ALTER TABLE --修改数据库表结构CREATE

2013-05-30 12:36:00 864

转载 嵌入式笔试

1:用C语言实现大小端的测试   IntCheckCpu()      {union{int a;char b;}c;c.a=1;if(c.b==1)printf(“小端”);else printf(“大端”);}2:volatile的作用有哪些?Volatile第一变量相当于告诉编译器这个变量的值会随时发生变化,每次使用之前都要去内存里从新

2013-05-30 12:10:25 587

转载 操作系统_再识(uboot start.S分析)

#include#include #ifdefined(CONFIG_S3C2410)#include#elifdefined(CONFIG_S3C2440)//include/configs/smdk2440.h中定义。#include#endif #include /******************************************

2013-05-30 12:09:45 598

转载 操作系统_再识(linux 等待队列)

Linux内核的等待队列是以双循环链表为基础数据结构,与进程调度机制紧密结合,能够用于实现核心的异步事件通知机制。在这个链表中,有两种数据结构:等待队列头(wait_queue_head_t)和等待队列项(wait_queue_t)。等待队列头和等待队列项中都包含一个list_head类型的域作为"连接件"。它通过一个双链表和把等待tast的头,和等待的进程列表链接起来。从上图可以清晰

2013-05-30 12:08:44 751

转载 嵌入式Linux学习步骤

2、Shell 编程基础 Shell简介 认识后台程序 Bash编程熟悉Linux系统下的编辑环境 熟悉Linux下的各种Shell 熟练进行shell编程熟悉vi基本操作 熟悉Emacs的基本操作 比较不同shell的区别 编写一个测试服务器是否连通的shell脚本程序 编写一个查看进程是否存在的shell脚本程序

2013-05-30 12:07:05 483

转载 操作系统_再识(Linux Platform Device and Driver)

Linux Platform Device and Driver  Linux Platform Device and Driver作者:Dongas日期:08-06-27 从Linux 2.6起引入了一套新的驱动管理和注册机制:Platform_device和Platform_driver。Lin

2013-05-30 12:06:22 608

转载 操作系统_再识(Linux设备文件简介)

概述设备管理是linux中比较基础的东西,但是由于Linux智能程度的越来越高,Udev的使用越来越广泛,使得越来越多的Linux新用户对 /dev 目录下的东西变得不再熟悉。有时候遇见问题就会变得抓狂。Linux 中的设备有2种类型:字符设备(无缓冲且只能顺序存取)、块设备(有缓冲且可以随机存取)。每个字符设备和块设备都必须有主、次设备号,主设备号相同的设备是同类设备(使用同一个驱动

2013-05-30 12:05:42 684

转载 Shell 编程基础

2、Shell 编程基础 Shell简介 认识后台程序 Bash编程熟悉Linux系统下的编辑环境 熟悉Linux下的各种Shell 熟练进行shell编程熟悉vi基本操作 熟悉Emacs的基本操作 比较不同shell的区别 编写一个测试服务器是否连通的shell脚本程序 编写一个查看进程是否存在的shell脚本程序

2013-05-30 12:04:51 567

转载 20年嵌入式领域开发经验精华

来源:www.armjishu.com 作者:jesse 转载请注明出处 首先,如果你有幸看到这篇文章,千万不要试图在2个小时内阅读完,就算你2个小时阅读完,我相信你也不会理解里面讲解的精华之处,我相信,你应该将此文章,慢慢品尝,这绝对是一篇需要品尝2~3天,再结合自己过往的经验,加上自己的思考,我相信会对你不仅仅是技术能力,甚至包括整体的思维方式都会有一个非常大的提高。 我写这篇

2013-05-30 12:04:06 1178

转载 操作系统_再识(Linux设备模型之input子系统详解)

------------------------------------------本文系本站原创,欢迎转载!转载请注明出处:http://ericxiao.cublog.cn/------------------------------------------一:前言在键盘驱动代码分析的笔记中,接触到了input子系统.键盘驱动,键盘驱动将检测到的所有按键都上报给了input

2013-05-30 12:02:58 508

转载 堆栈入门——堆和栈区别

在计算机领域,堆栈是一个不容忽视的概念,我们编写的C语言程序基本上都要用到。但对于很多的初学着来说,堆栈是一个很模糊的概念。堆栈:一种数据结构、一个在程序运行时用于存放的地方,这可能是很多初学者的认识,因为我曾经就是这么想的和汇编语言中的堆栈一词混为一谈。我身边的一些编程的朋友以及在网上看帖遇到的朋友中有好多也说不清堆栈,所以我想有必要给大家分享一下我对堆栈的看法,有说的不对的地方请朋友们不吝赐教

2013-05-30 11:50:52 421

转载 操作系统_再识(Linux设备驱动程序学习-Linux设备模型(总线、设备、驱动程序和类))

文章的例子和实验使用《LDD3》所配的lddbus模块(稍作修改)。总线总线是处理器和一个或多个设备之间的通道,在设备模型中,所有的设备都通过总线相连,甚至是内部的虚拟"platform"总线。总线可以相互插入。设备模型展示了总线和它们所控制的设备之间的实际连接。在 Linux 设备模型中, 总线由 bus_type结构表示, 定义在  :str

2013-05-30 11:49:53 517

转载 操作系统_再识(Linux块设备读写流程)

在学习块设备原理的时候,我最关系块设备的数据流程,从应用程序调用Read或者Write开始,数据在内核中到底是如何流通、处理的呢?然后又如何抵达具体的物理设备的呢?下面对一个带Cache功能的块设备数据流程进行分析。1、 用户态程序通过open()打开指定的块设备,通过systemcall机制陷入内核,执行blkdev_open()函数,该函数注册到文件系统方法(file_operations

2013-05-28 21:20:48 1399

转载 操作系统_再识(linux设备管理文件系统-devfs与udev)

linux下有专门的文件系统用来对设备进行管理,devfs和sysfs就是其中2种。  在2.6内核以前一直使用的是devfs,devfs挂载于/dev目录下,提供了一种类似于文件的方法来管理位于/dev目录下的所有设备,我们知道/dev目录下的每一个文件都对应的是一个设备,至于当前该设备存在与否先且不论,而且这些特殊文件是位于根文件系统上的,在制作文件系统的时候我们就已经建立了这些设备文

2013-05-28 21:15:46 915

转载 操作系统_再识(字符设备驱动编写步骤)

1.标准字符设备驱动  a.注册设备号如   if(key_major) /*静态注册*/        err = register_chrdev_region(devno, 1, DEVICE_NAME);    else    {    /*动态注册*/        err = alloc_chrdev_region(&devno, 0, 1, DE

2013-05-28 21:13:00 575

转载 操作系统_再识(kobject,kset,子系统层次结构)

在LINUX中最让人不解的大概就是/sys下面的内容了下面首先让我们来创建一个简单的platform设备,并从这个设备的视角进行深入,在此篇文章的深入过程中,我们只看kobeject的模型我所使用的内核版本号为2.6.26,操作系统的内核版本号为2.6.27-7,暂未发现2.6.27-7与2.6.26的重大不同首先写一个简单的模块#include #include

2013-05-28 21:09:19 729

转载 操作系统_再识(kobject,kset,子系统层次结构)

kobject,kset,子系统层次结构内核通常用kobject结构将各个对象连接起来组成一个分层的结构体系。 parent 是指向另外一个kobject结构(分层结构中上一层的节点)的指针,主要用途是在 sysfs层次中定位对象. 一个 kset 是嵌入到相同类型结构的 kobject的集合。但 struct kobj_type关注的是对象的类型,而s

2013-05-28 20:40:14 730

转载 操作系统_再识(Linux从文件到字符设备)

在/dev下面有很多设备,其中也有大家广为使用的字符设备,呢里面的文件是如何与字符设备挂钩的呢~  平时我们使用的open函数是如何动态加载字符设备的操作集的呢~下面就让我们慢慢剖析~ (以内核2.6.26为参考)一.首先是文件系统~   需要动态解析文件路径名  像/dev/ts0  在文件系统里分为3个部分  1./(根文件目录)  2.dev(根文件目录下的dev目录

2013-05-28 00:45:21 629

转载 操作系统_再识(Linux 驱动模型)

1 底层机制Linux 的设备驱动模型的底层机制主要包括:kobject,kobj_type,kset 等几个结构。这几个结构的定义在include/linux/kobject.h 中。1.1 kobject 代表设备驱动模型中一个基本对象,类似于MFC 中最顶层的基类CObject。每个kobject 都对应于sysfs 中的一个目录。上层结构例如device,devic

2013-05-28 00:32:58 543

转载 操作系统_再识(Linux内核分析)

相关内核源代码分析:  1.系统的引导和初始化:Linux 系统的引导有好几种方式:常见的有 Lilo, Loadin引导和Linux的自举引导  (bootsect-loader),而后者所对应源程序为arch/i386/boot/bootsect.S,它为实模式的汇编程序,限于  篇幅在此不做分析;无论是哪种引导方式,最后都要跳转到 arch/i386/Kernel/setup.S

2013-05-28 00:00:24 574

转载 操作系统_再识(Linux介绍)

Linux目录结构详解 /bin  这是放例如: ls, mv, rm, mkdir, rmdir, gzip, tar, telnet, 及 ftp 等等常用的执行文档的地方(这些执行档的执行方法会在后面提到),有时候这个目录的内容  与 /usr/bin 是一样的(有时候甚至会使用连结档哩),是给一般使用者使用的执行程序放置的所在!  /boot  没错,这里就是放置你 L

2013-05-27 23:27:14 454

Linux C编程一站式学习

Linux C/C++/系统编程 一站式学习

2013-05-30

空空如也

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

TA关注的人

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