Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器 软件资源

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 操作系统 / Linux

C++异步编程方式

C++异步编程方式

“Boost是一个极致漂亮的设计”——这是我在这一段时间内学习使用这个C++准标准库时不断涌现在我脑海的想法。不过话说回来,即便这样,C++那浩如烟海的技巧以及模板那毁誉参半的语法依然还是让人头痛的事情。Boost中有说不完的漂亮设计,无论是对函数式编程方式的支持、还是异步IO的接口、正则表达式、字符串处理算法、容器,无一不是独具匠心。更不用说这个代码跨平台的兼容性很好了。感觉C++从来没有放弃其兼容并包的设计思想,“没有最好的,只有最合适的,C++提供你...
基于3c2410的Linux2.6.22移植

基于3c2410的Linux2.6.22移植

经历近2周的时间,查阅大量的参考资料和贴子,终于成功将Linux2.6.22移植到ARM2410上。中间走了不少弯路,不过走弯路也是一种收获,因为可以碰到和解决许多问题,增长知识。因为Linux版本问题以及开发平台的不同,网上的很多文章并不完全适合自己的板子,需要自己摸索和修改。写这点东西算是对前一阶段工作的总结,以免将来忘记。移植大体的步骤主要有:(1) 交叉编译环境的建立(我的主机系统是Ubuntu7.04);(2) 开发板(我用的是博创的2410)N...
Linux源代码已超过1000万行 价值达5亿美金

Linux源代码已超过1000万行 价值达5亿美金

10月23日消息,一项分析发现,在最近发布2.6.27版本Linux内核之后,包括Linux内核文件在内的源代码行数已经超过了1000万行。 不过,这个数字包括空白行、注释和整个内核源代码全年检查的文本文件。采用不同的方法进行计算,实际文本行数刚超过900万行。但是,我们喜欢更大的1000万行的数字,因为空白实际上对于代码的可读性是很重要的。 与所有的长期编程项目一样,Linux内核代码库的规模是不断变化的,因为老的代码需要取消和更换。不过,更新的功能将不...
Linux下USB驱动之skeleton分析

Linux下USB驱动之skeleton分析

Usb_skeleton.c,是USB驱动的框架,适合USB驱动的初学者。1.结构体内核其实就是一坨坨的数据结构,加上一根根链表。对于初学者,如果直接看USB驱动代码,大概会被那些名字相近的结构体弄得晕头转向,比如usb_host_interface和usb_interface,看着看着就把两个混淆了。所以,在学习USB驱动之前,建议把相关结构体都拎出来看一下,其实,也就那么几个结构体在那装神弄鬼。USB skeleton驱动中用到的主要字段已用蓝色标出:...
Linux键盘驱动范例

Linux键盘驱动范例

键盘在所有的驱动之中最为简单的一种,但它却包含了驱动的基本框架,对以后继续深入学习其他复杂的驱动大有裨益,以下便为你逐步剖析驱动的开发。采用的是查询方式。转载请注明出处:一.内核模块的注册和撤销在加载模块的时候,首先运行的是内核模块的注册函数。它的功能包括内核注册设备以及变量的初始化。static int head,tail;int _init Keypad_init(void){int result;result=register_chrdev(KEY_...
Fedora 8 环境 2.6内核编译步骤

Fedora 8 环境 2.6内核编译步骤

第一次编译2.6的内核,十分不顺手,老是有问题。(Fedora 8,内核2.6.25 )开始的时候我用的是2.6.26的内核在root目录下解压,在make menuconfig之后没有位子可以选择arm的,在网上查了后输入命令make ARCH=arm CROSS_COMPILE=arm-linux- menuconfig,但这也有问题,因为你在menuconfig的选项都没有被保存下来,它还是要让你一个一个的慢慢的选择,这太麻烦了,想办法。在2.6.2...
给RedHat Linux安装GCC

给RedHat Linux安装GCC

突然发现原来自己虚拟机上的RedHat Liunux没有GCC编译工具。一时间不知道应该怎么办好。在网上查到只能下载rpm包。可是网上怎么都找不到,好不容易在管网上找到一个,发现太大了137M,网速却慢的可怜,估计一个月都下不下来。只好试着用安装盘,试图从光盘安装自己以前没有安装的程序。可是打开虚拟机,才发现虚拟机竟然不从光盘引导,而是直接进入了系统。我意识到是bios设置的问题,可是却不知道怎么进入bios,我傻傻的在vm菜单里面找bios设置,没有找到...
Linux GCC入门知识

Linux GCC入门知识

Linux系统下的gcc(GNU C Compiler)是GNU推出的功能强大、性能优越的多平台编译器,是GNU的代表作品之一。gcc是可以在多种硬体平台上编译出可执行程序的超级编译器,其执行效率与一般的编译器相比平均效率要高20%~30%。gcc编译器能将C、C++语言源程序、汇程式化序和目标程序编译、连接成可执行文件,如果没有给出可执行文件的名字,gcc将生成一个名为 a.out的文件。在Linux系统中,可执行文件没有统一的后缀,系统从文件的属性来区...
Linux学习笔记之学习编程的步骤

Linux学习笔记之学习编程的步骤

这十多天来,安下心来,把Linux中C语言的编程的入门学习了一下。感觉到学习它进门容易,但是要进一步深入,还是有一定的难度!在这里我总结了学习C语言的入门学习步骤。其步骤如下:第一,熟练地掌握与使用vi这个编辑器。第二呢,你得熟悉Gcc这个编译器,当然是包括它的参数。这是学习的重中之重啊!第三,才是进入C语言的学习。至于GCC编译器参数的使用,做到真正的熟练的使用,得花上半个月的时间。...
Linux读书笔记之GCC编程相关知识

Linux读书笔记之GCC编程相关知识

编译静态库文件的命令为:ar cr *.a *.o *.o解释:*.a 这是你要编译的目标静态库文件,而*.o文件是已经编译了的文件。查看静态库文件中所包含的函数命令是:ar t /path/*.a解释:/path/是路径,而*.a是你所要查看的静态库文件。编译动态库文件第一种方法:第一步得到*.o文件,其命令为:gcc -c *.c,第二步得到动态库文件,其命令是:gcc -shared *.o -o *.so(*.c你编写的动态库文件的源代码文件,动态...
Linux读书笔记之学习写makefile文件

Linux读书笔记之学习写makefile文件

我花大约一个星期的时间去学习写makefile文件,从开始学习又学习,写了又写,虽然大都以失败结束,但是在最后,却以成功一次开始之后,大部分都是以成功结束。我觉得学习makefile文件,只要记住以下几条就行了。第一,明白各个文件的相互关系。即主程序与个函数主次关系,即书上所谓的依赖关系,说白了,要明白程序之间前因后果。第二,让隐晦规则见鬼去吧。第三,在Makefile文件中的命令那一行必须要以Tab键开始。第四,试着在Makefile文件中加入shell...
Linux内核阅读必备技能

Linux内核阅读必备技能

由于操作系统的内核贴近硬件,需要对计算机的体系结构有所了解,例如CPU的工作原理、接口特性和BIOS调用等。读者千万别因为这些望而却步,这里将介绍一些阅读Linux内核源码必备的技能。获取内核一般在Linux系统中的/usr/src/linux*.*.*(*.*.*代表的是内核版本,如2.4.23)目录下就是内核源代码(如果没有类似目录,是因为还没安装内核代码)。另外还可从互连网上免费下载。注意,不要总到http://www.kernel.org/去下载,...
Linux Kernel代码分段分析尝试

Linux Kernel代码分段分析尝试

1. gcc的__attribute__编绎属性要了解Linux Kernel代码的分段信息,需要了解一下gcc的__attribute__的编绎属性,__attribute__主要用于改变所声明或定义的函数或数据的特性,它有很多子项,用于改变作用对象的特性。比如对函数,noline将禁止进行内联扩展、noreturn表示没有返回值、pure表明函数除返回值外,不会通过其它(如全局变量、指针)对函数外部产生任何影响。但这里我们比较感兴趣的是对代码段起作用子...
Linux内核中读写文件数据的方法

Linux内核中读写文件数据的方法

有时候需要在Linux kernel--大多是在需要调试的驱动程序--中读写文件数据。在kernel中操作文件没有标准库可用,需要利用kernel的一些函数,这些函数主要有: filp_open() filp_close(), vfs_read() vfs_write(),set_fs(),get_fs()等,这些函数在linux/fs.h和asm/uaccess.h头文件中声明。下面介绍主要步骤:1. 打开文件filp_open()在kernel中可以打...
Linux平台C与C++中的内存分配

Linux平台C与C++中的内存分配

C中的内存分配很早之前写的了,现在发到C版来。关于C语言内存方面的话题要真说起来的话那恐怕就没头了,所以本文仅仅是一个浅谈。关于内存问题不同平台之间有一定的区别。本文所指的平台是x86的Linux平台用C语言做程序(其实其他语言也一样),不仅要熟悉语法,其实很多相关的背景知识也很重要。在学习和研究C语言中内存分配的问题前,首先要了解一下Linux分配给进程(运行中的程序)的地址空间是什么样的。总的来说有3个段,即代码段,数据段和堆栈段(学过汇编的朋友一定很...
怎样学好Java编程

怎样学好Java编程

很多人学习Java语言,大家都想学好这门语言,如何学好呢?对于初学者来说都是很迷茫的,我也是一名初学者,今天我就谈谈我的感想,希望大家能取长补短,帮帮我这初学者,谢谢在!!!!!! JAVA比较热门,我们自己头脑不能发热,不能指望在短短一两个星期内就掌握这门语言。我觉得要学好JAVA,一定要做到:动手、动脑、动嘴、静心。 动手是最重要的。很多人学计算机技术就是看书、听课,当时明白,过后马上就忘。如果不愿意敲打键盘,就不如不学。即使有时候敲的代码你不明白...
Java语言的特点

Java语言的特点

Java语言的特点 1.强类型 Java语言是一种强类型语言,强类型能约束程序员必须遵守更多的编程规定,也能让编译器检测出程序中尽能多的错误。2.编译和解释 Java是一种高级语言编程,用Java语言编写的程序在计算机上运行需要经过编译和解释执行两个严格区分的阶段。Java的编译程序先将Java源程序翻译成与计算机无关的字节码,不是通常的编译程序将源程序翻译成特定计算机的机器代码。运行是,Java的运行系统装载和链接需要执行的类,并作必要的优化后,...
<< 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 >>