linux学习笔记
Escropion
嘿,我的老伙计!
展开
-
make config,make menuconfig,make oldconfig,make xconfig,make defconfig,make gconfig 的简单介绍
在进行内核配置,或者是对一些软件的配置和编译中,常常会遇到: make config make menuconfig make oldconfig make xconfig make defconfig make gconfig————————————————————————————— 1、make config 是文本式,对话式,基于命令行的一种配置。转载 2016-10-30 17:18:48 · 1132 阅读 · 0 评论 -
linux下Sqlit安装及应用
下载安装sqlite去sqlite官方首页下载想要的版本的sqlite源码包[lwn@localhost sqlite]$ wget http://www.sqlite.org/sqlite-3.6.16.tar.gz进入下载目录,解压文件sqlite-3.6.16.tar.gz解压后生成sqlite-3.6.16目录. cd 进入sqlite-3.6.16[lwn@localhost sqlite原创 2017-06-11 17:01:43 · 1238 阅读 · 0 评论 -
linux学习之——网络 socket 编程实例
一、socket编程模型: 服务端工作流程:调用 socket() 函数创建套接字用 bind() 函数将创建的套接字与服务端IP地址绑定用 listen() 函数监听socket() 函数创建的套接字,等待客户端连接当客户端请求到来之后,调用 accept() 函数接受连接请求,返回一个对应于此连接的新的套接字,做好通信准备调用 write()/read() 函数和 send()原创 2016-09-27 13:39:57 · 965 阅读 · 0 评论 -
3G模块SIM5360E实现拨号上网功能
3G模块SIM5360E实现拨号上网功能在物联网领域网络互连是非常重要的一个环节。各种传感器采集必要的信息经过单片机的处理之后需要通过网络将数据上报给服务器。在物联网领域联网方式一般为无线网,二用得最多的又是各运营商提供的物网卡(物联网SIM卡)拨号上网。这里基于3G拨号上网做一个学习总结。我使用的是联通的WCDMA拨号上网方式,其他的拨号上网方式大同小异。添加内核支持在内核的make menuco原创 2017-06-07 19:43:46 · 2901 阅读 · 0 评论 -
linux shell 脚本编程基本语法
linux shell 脚本编程打印ip命令: ifconfig eth0 | grep ‘inet’| awk ‘{print $2}’ 第一行:#!/bin/sh:表示有bin/sh来执行 -a:表示and,类似于C语言中的& -o:表示or,类似C语言中的| linux有很多sheel csheel等 .pl是python脚本 1. sheel变量不需要声明类型 2. 变量无需原创 2017-06-06 17:32:03 · 5851 阅读 · 2 评论 -
FL2440——RT3070 softAP模式 实现无线路由器功能
FL2440实现无线路由器功能RT3070无线网卡有两种工作模式STA模式和softAP模式,分别由STA驱动和softAP驱动来实现,STA驱动支持无线网卡工作在STA模式下,可以连接到网络实现上网功能。而SoftAP的驱动支持无线网卡工作在softAP模式下,可以作为一个软的接入点,实现无线路由器功能。在前面一篇博客总结了STA模式的驱动移植,使得我们的开发板能够连接到互联网实现上网功能。这里对原创 2017-05-27 21:05:34 · 1472 阅读 · 0 评论 -
FL2440添加DS18B20驱动
FL2440添加DS18B20驱动linux内核对于各种外设支持非常好,内核已经集成了大部分驱动,DS18B20属于单总线设备,在内核的驱动代码目录(drivers/w1/)下有专门的单总线设备驱动,我们只需要对其稍作修改就能使用。Dallas 1-wires是Dallas公司的单总线设备,DS18B20(温湿度传感器)就是其中最具代表的设备,只用一根总线与cpu进行通信并且实现数据传输。具有体积小原创 2017-04-27 14:44:14 · 582 阅读 · 0 评论 -
fl2440添加SD卡驱动
fl2440添加SD卡驱动linux中对s3c2440的驱动已经完善得比较好,如果需要使用相关驱动,我们只需要在make menuconfig中选上相应的配置选项,并且稍稍修改内核源码就可以使用相关驱动。SD卡的驱动也不例外make menuconfig 选项Device Drivers —> <*> MMC/SD/SDIO card support —>原创 2017-04-17 20:51:21 · 436 阅读 · 0 评论 -
plat_button驱动实例
plat_button驱动实例前面对plat_button驱动代码重要部分做了简要分析,现在基于plat_button驱动代码写一个测试程序,用以测试驱动代码的功能是否正确。驱动代码源码/********************************************************************************* * Copyright: (C) 2原创 2017-04-14 15:08:34 · 469 阅读 · 0 评论 -
plat_led驱动总结
plat_led驱动总结@(linux 编程)[led, 驱动]platform驱动介绍在学习platform驱动之前,我写过最原始的 led 驱动程序,其包含了硬件初始化和设备注册的所有工作。这种模型理解起来直观易懂,但是在实际的应用当中却显得不那么理想。设备信息和驱动代码冗余在一起,一旦设备信息发生一点变化将会导致整个驱动程序的大幅度修改甚至重写,十分的麻烦。因此,linux引入了platfor原创 2017-04-12 18:52:54 · 711 阅读 · 0 评论 -
浅析open、close函数
在了解open函数之前想看看系统调用和文件描述符的概念;系统调用:系统调用是操作系统为用户态运行的进程与硬件设备(CPU,磁盘,打印机等)进行交互提供的一组接口函数。文件描述符:对于内核而言,所有打开的设备,文件,网络socket都是通过文件描述符引用,文件描述符是一个非负整数。当打开一个现有文件或者创建一个新文件时,内核向进程返回一个文件描述符。当读写一个文件时,使用open或creat原创 2017-03-26 11:45:21 · 1831 阅读 · 0 评论 -
浅析request_mem_region和ioremap函数的理解
在了解这两个函数之前我们首先要明白CPU的寻址。任何一种外设都是通过读写寄存器来控制的,寄存器又通常包括三大类:控制寄存器,状态寄存器和数据寄存器。根据CPU体系的不同,CPU对I/O端口的编址方式分为I/O映射和内存映射两种方式。(1).I/O映射方式: 以intel为代表的i386系列处理器中,内存和外部I/O是独立编址独立寻址。即在该体系中存在两种地址空间:内原创 2017-03-25 18:45:51 · 3586 阅读 · 0 评论 -
linux调试程序利器 GDB学习笔记
作为程序员,调试程序是不可避免的,在windows下通常的IDE比如 keil 软件会有集成的debug图形化调试工具,使用起来非常简单易懂。在linux下虽然没有图形化调试工具,但是gdb作为文本界面的调试工具其功能也是非常强大的,在这里简单介绍gdb的用法。一.调试准备1.首先我们编写一个测试程序:[lwn@VM_255_164_centos temp2]$vim gdbtes原创 2017-04-01 17:04:59 · 815 阅读 · 1 评论 -
C代码编译过程分析
C代码编译过程分析一.概述C代码整个编译过程是极其复杂的,其中涉及到的编译器知识,硬件知识,工具链知识是非常多的,深入了解整个编译过程对于程序员理解分析以及编程有很大帮助。本文通过对C代码编译过程的分析,希望对读者对C代码的编译过程有一定的了解。此外,建议大家在平时遇到问题的时候多思考,多实践。在分析之前我们首先了解一下什么是编译以及整个编译过程分为那几个部分。编译的概念:编译原创 2016-11-19 18:29:27 · 690 阅读 · 0 评论 -
linux学习——动态库和静态库实例分析
动态库和静态库分析一.概述 上一篇文章提到了静态链接和动态链接,本文对动态库和静态库做一个分析总结。本质上来说库是一种可执行代码的二进制形式,是目标文件的集合。可以被操作系统载入内存执行。由于windows和linux的本质不同,因此二者库的二进制是不兼容。Linux系统支持的函数库包括静态库和动态库(共享库),通常放在目录 /lib, /user/lib下面。原创 2016-11-20 13:08:38 · 629 阅读 · 0 评论 -
链表操作实例(创建节点,增加节点,倒序链表,销毁链表等)
链表操作实例 该实例为:不断输入学生信息(学生姓名,性别,年龄,分数)后,打印输出所有的结果。其中用到了链表的初始化,创建,长度计算,增加节点,倒序链表内容等。这里简单介绍几个重要的链表操作函数。完整代码下载地址:http://download.csdn.net/detail/edroid1530/9671371 github下载地址:https://github.com/原创 2016-11-02 19:41:39 · 1096 阅读 · 0 评论 -
linux学习——交叉编译器制作&配置过程
本文为交叉编译器的配置过程以及相关知识的简单介绍。一、预备知识 1、交叉编译与交叉编译器。 交叉编译:简单来说就是一个平台上生成另一个平台能够执行的可执行代码。 例如:我们平时使用的个人电脑的CPU是x86架构的指令集,所以编译生成的可执行代码只能够在x86架构的平台上运行,如果要在ARM的平台上运行,需要由ARM的指令体系编译生成能够在ARM平台能够执行的代码。我原创 2016-10-19 20:19:21 · 1148 阅读 · 0 评论