自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 shell正则表达式

正则表达式热身正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。例如 grep, expr, sed , awk. 或Vi中经常会使用到正则表达式,为了充分发挥 shell 编程的威力,需要精通正则表达式。转载请标明:http://blog.csdn.net/y

2016-03-30 17:35:05 3703

转载 shell中几种括号的结构和变量替换

在这里我想说的是几种shell里的小括号,大括号结构和有括号的变量,命令的用法,如下:PHP 代码:1.${var}2.$(cmd)3.()和{}4.${var:-string},${var:+string},${var:=string},${var:?string}5.$((exp))6.$(var%pattern),$(var%%pa

2016-03-30 16:09:22 1274

转载 windows下实现socket通信

原本以为c是跨平台,所以,c在windows下和linux下的程序应该是类似于Java,什么都不用改变的,今儿才恍然大悟,他们的类库不一样啊……下面我贴出来一个windows下的c语言socket通信例子,这里我们客户端传递一个字符串,服务器端进行接收。【实际上我们需要完成的二进制流的传输,需要使用unsignedchar来实现,因为c里没有byte数据类型,这里我们不以byte为例,因为

2016-03-30 15:11:37 4365

转载 socket通信简介

“一切皆Socket!”话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。——有感于实际编程和开源项目研究。我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什么是socket?socket的类型有哪些?还有

2016-03-30 11:31:28 389

转载 linux下的串口通信

一、串口的基本原理1 串口通讯    串口通讯(Serial Communication),是指外设和计算机间,通过数据信号线、地线等,按位进行传输数据的一种通讯方式。    串口是一种接口标准,它规定了接口的电气标准,没有规定接口插件电缆以及使用的协议。2 串口通讯的数据格式    一个字符一个字符地传输,每个字符一位一位地传输,并且传输一个字符时,总

2016-03-29 16:16:26 15938 2

原创 NFS(arm底板与PC文件共享)

在嵌入式 Linux 开发中,需要在 Linux 主机为目标机编写程序代码,然后编译程序,生成的程序是要传输到目标机上才能调试、运行。那么如何更快、更便捷地传输文件,将影响到开发工作的效率。NFS 无疑是最好的选择。通过 NFS 服务,主机将用户指定的目录通过网络共享给目标机(和 windows 的文件网络共享类似)。目标机可以直接运行存放于 Linux主机共享目录下的程序。这样调试程序时十分方便

2016-03-25 20:06:14 2068 2

转载 Linux多线程编程小结

Linux多线程编程小结               前一段时间因为开题的事情一直耽搁了我搞Linux的进度,搞的我之前学的东西都遗忘了,很烦躁的说,现在抽个时间把之前所学的做个小节。文章内容主要总结于《Linux程序设计第3版》。1.Linux进程与线程       Linux进程创建一个新线程时,线程将拥有自己的栈(因为线程有自己的局部变量),但与它的创建者共享全局变量、文件描

2016-03-24 15:44:18 274

转载 ubuntu首次安装配置

1. 配置源和从源安装软件  安装软件前先更新源:apt-get update  配置源:vi /etc/apt/source.list。一般情况下中国的服务器比美国的慢很多,建议将cn改成us  从源安装软件:apt-get install softwarename,常用的有ssh,rpm,subversion,mysql-server等2.server版本安装桌面(一般不用)

2016-03-24 14:25:27 2035

转载 ubuntu安装SVN服务器端

ubuntu安装和配置SVN1. 安装SVN  apt-get install subversion2. 建立svn仓库  1). 建立svn目录:mkdir /home/.svn(使用隐藏目录)  2). cd /home/.svn  3). mkdir astar  4). 创建仓库astar:svnadmin create /home/.svn/astar,执

2016-03-24 14:16:12 325

转载 Ubuntu中SVN客户端安装+使用

1、 安装 svn客户端:apt-get install subversion,然后根据提示一步一步,就完成了 svn的安装。当然,也可以源码安装 svn,下载 subversion 一个最新版本的源码包,解压之后就可以安装了。2、 新建一个目录,cd 到新建目录下,将文件 checkout 到本地目录:svn checkout svn://192.168.100.249/server

2016-03-24 09:58:07 2979

原创 Ubuntu查看系统信息

查看 Ubuntu 的版本号:可以采用以下两种方法:方法一:在终端中执行下列指令:cat   /etc/issue可以查看当前正在运行的 Ubuntu 的版本号。其输出结果类似下面的内容:Ubuntu 10.04 LTS \n \l方法二:使用 lsb_release 命令也可以查看 Ubuntu的版本号,与方法一相比,内容更为详细。执行指令如下:sudo

2016-03-23 14:25:29 7296

转载 Shell中的函数调用

说起函数调用,相信大家也不会陌生,然而对于初学Shell的我来说,Shell中函数调用方式却有点让我不太习惯,自己也走了不少的弯路,因为传递参数时出了一个很“自然”的错误,也让我吃了不少的苦头,所以总结一下Shell中函数的调用方法。一、Shell中函数的定义为了方便程序和管理和模块化并减少代码的重复,函数的确是一个好东西。而Shell中函数的定义有两种方法,如下:functi

2016-03-23 10:21:21 3841

转载 Shell中脚本变量和函数变量的作用域

Shell中脚本变量和函数变量的作用域  在shell中定义函数可以使代码模块化,便于复用代码。不过脚本本身的变量和函数的变量的作用域问题可能令你费解,在这里梳理一下这个问题。(1)Shell脚本中定义的变量是global的,其作用域从被定义的地方开始,到shell结束或被显示删除的地方为止。 例1:脚本变量的作用域#!/bin/bash#define

2016-03-23 10:10:42 1343

原创 交叉编译器的安装方法

交叉编译器的安装方法,通常交叉编译器的打包发布方式有关:>> 如果以 deb 包形式发布,则需要用 dpkg 命令进行安装。示例命令:host$ dpkg -i package.deb>>如果以 bin 方式打包发布,通常则需要为该文件加上可执行权限,然会运行这个文件,完成安装。示例命令:host$ chmod +x package.binhost$ ./package.b

2016-03-22 20:53:47 11107

原创 通过gpio实现指示灯闪烁

实现脚本:#!/bin/sh led_up(){    gpio l 11 4000 0 0 0 4000}led_down(){    gpio l 11 0 4000 0 0 4000}while truedo    led_up    sleep 1    led_down    sleep 1done

2016-03-22 14:20:26 4363

原创 br-lan、eth0、eth1及lo

如果你的设备含有不少于1个的LAN接口,那这个设备在不同的接口之间可能有一个被称为交换(switch)的特殊连接。大多数的内部构造如下图所示:br-lan=lan网桥eth0=lan接口(注意 是路由上的LAN RJ45口)eth1=wan接口(注解同上)wlan0=无线端口eth0eth0是一块物理网卡。eth0.1 eth0.2都是从

2016-03-21 10:34:37 37570 2

转载 VMWare中bridged和NAT的区别

vmware虚拟机下的三种上网方式bridged,host-only,nat   ① 先说bridged (桥接方式):在这处模式下,虚拟机等同于网络内的一台物理主机,可对手动设置IP,子网掩码,DNS,且IP地址要和主机的IP在同一网段内。这样,虚拟机就和主机如同连在一个HUB上的两台计算机,只要主机能上网,虚拟机也会在这种模式下上网。 我进入linux,ifconf

2016-03-21 09:51:55 2634

转载 IP数据包的传输全过程详解

主机A与主机B通信,A Ping B,图:A-交换机-B,AB同一子网(1)ping数据包用的是ICMP协议,IP协议的一个子协议,位于三层,包含A的IP,B的IP,三层进行IP封装成包,进入二层(2)A,B处于相同子网,查看缓存中对与目的对应得B第2层mac地址,如果存在,直接进行第2层封装成帧,经物理层信号编码,以0101010010这样的bits流传输在网络介质上。(3)如果不存

2016-03-18 17:16:16 13377

原创 ubuntu常用快捷键总结

一:快捷键www.2cto.com  1.从win7到ubuntu的切换    win7(host)->ubunt(gest)  alt+tab ubunt(gest)->win7(host)  (ctrl+alt)+(alt+tab) 2.快速启动终端(gnome+terminal)                    ctrl+alt+t     注:系统-》首选

2016-03-18 15:17:34 478

原创 字符串拷贝与进制转换的简单应用

源码中需要将整数分成前后两个部分,可以用strncpy()函数来实现#include #include int main() { char str1[10]={0},str2[10]={0}; char temp[10]={0}; char *string="abcdefghi"; int i =12345678; sprintf(

2016-03-17 10:40:52 285

转载 C语言字符串函数大全

c库函数——字符串函数【C语言字符串函数大全】 char   stpcpy(char*dest,const char *src)       将字符串src复制到destchar   strcat(char*dest,const char *src)       将字符串src添加到dest末尾char   strchr(cons

2016-03-17 10:00:41 314

原创 c实现各种进制间转换

#include #include #include #include int main() { int i,v; char bs[33]; char b[33]; char hs[9]; char h[9]; char s[4]; char *e; // 十进制整数转二进制串; i=1024; ltoa(i,b,

2016-03-16 10:09:55 363

转载 make menuconfig实现及实例

编译过程:    我们在进行linux内核配置的时候经常会执行make menuconfig这个命令,然后屏幕上会出现以下界面: 这个界面是怎么生成的呢?跟我们经常说的内核配置与与编译又有什么关系呢?下面我们借此来讲解一下linux内核的配置机制及其编译过程。一、配置系统的基本结构Linux内核的配置系统由三个部分组成,分别是:   1、Makefile:分布在 L

2016-03-11 17:09:02 9316

转载 NAT应用场景

什么是穿越NAT 在上图中,ICG网关后面有两台主机分别是有线主机192.168.1.2和无线主机192.168.1.3,现在这两台主机都要访问网站www.tektalk.cn(弯曲评论,域名解析后地址为74.220.215.202),根据专栏第三期介绍,ICG要将内部主机地址进行转换(NAT),换成网关的WAN口地址发起访问,否则网站数据无法正确返回。我们先看看问题是怎么产生的,19

2016-03-11 12:45:13 8921 1

原创 L2TP详解

1.L2TP简介   L2TP(Layer 2 Tunneling Protocol,二层隧道协议)是VPDN(Virtual PrivateDial-up Network,虚拟私有拨号网)隧道协议的一种。VPDN隧道协议主要包括以下三种,目前使用最广泛的是L2TP。   a.PPTP(Point-to-Point Tunneling Protocol,点到点隧道协议)   b.L2F

2016-03-09 20:31:33 32544 1

原创 斜杠/和反斜杠\ 的区别

路径中使用斜杠/和反斜杠\的区别到底是什么。Unix使用斜杆/ 作为路径分隔符,而web应用最新使用在Unix系统上面,所以目前所有的网络地址都采用 斜杆/ 作为分隔符。Windows由于使用 斜杆/ 作为DOS命令提示符的参数标志了,为了不混淆,所以采用 反斜杠\ 作为路径分隔符。所以目前windows系统上的文件浏览器都是用 反斜杠\ 作为路径分隔符。随着发展,DOS系统已经被

2016-03-08 11:28:04 5489

原创 Samba的简单应用

场景需求:安装了Ubuntu在虚拟机上,但是代码编辑或者其它更多的操作的时候,还是习惯在windows下进行。如果windows下编辑完再上传到服务器,再编译执行,就太繁琐了。一次两次还好说,这编译级别上千次的,每次也需要上传的话,无疑是个人间悲剧。但是有了Samba,犹如雪中送炭啊。 安装Ubuntu下安装比较简单,执行 # install samba samba-c

2016-03-08 09:44:24 714

转载 TTL、RS232、CMOS电平

什么是TTL电平、CMOS电平、RS232电平?它们有什么区别呢?一般说来,CMOS电平比TTL电平有着更高的噪声容限。(一)、TTL电平标准 输出 L: 2.4V。 输入 L: 2.0V TTL器件输出低电平要小于0.8V,高电平要大于2.4V。输入,低于1.2V就认为是0,高于2.0就认为是1。于是TTL电平的输入低电平的噪声容限就只有(0.8-0)/2=0.4V,高电平的噪声

2016-03-07 20:02:00 325

原创 arm看门狗的作用

watchdog一般是一个硬件模块。在嵌入式操作系统中,常见的应用场景是系统长期运行且无人看守,当出现出现系统死机时,watchdog就会自动帮你重启系统。 看门狗的实现原理:watchdog的硬件上有个记录超时功能,然后要求用户需要每隔一段时间(此时间可以根据自己需求而配置)去对其进行一定操作,比如往里面写一些固定的值,俗称“喂狗”,那么我发现超时了,即过了设定时...

2016-03-07 19:55:28 4879

原创 CS域和PS域

CS域和PS域的区别:1、基本概念:CS:Circuit Switch表面意思就是电路交换;PS:PacketSwitch表面意思就是分组交换。2、不管是在W、TD还是CDMA中,还是在传统的GSM中,都是存在这两个概念的。3、CS业务主要是包括一些语音业务,如64K语音等等。但是也包括一些电路型数据业务,最为常见和经典的就是传真;4、PS业务就是常见的数据业务,也包括

2016-03-07 12:22:59 20950

转载 Linux系统内存90%以上被使用

首先要明确一个问题:Linux系统内存占用90%以上,是否属于正常范围?网上有详细的解释,这属于正常现象~~~ Linux/Unix系统管理内存的方式和windows是不一样的,即便是一个负载很小的linux,跑几天后,内存占用量也将达到90%以上,即便无人访问,这个数字是完全正常的。但是,这个内存占用量不会达到100%的,每天夜里系统都会执行/etc/cron.daily进行内存优化

2016-03-03 10:47:27 2598

原创 free命令中buffers与cached的区别

执行free命令后,会显示buffers和cached选项#free             total       used       free     shared    buffers     cachedMem:       3085864    2200144     885720          0     595440    1273512-/+ buffers/

2016-03-03 10:15:16 1619

转载 linux下IPTABLES配置详解

如果你的IPTABLES基础知识还不了解,建议先去看看.开始配置我们来配置一个filter表的防火墙.(1)查看本机关于IPTABLES的设置情况[root@tp ~]# iptables -L -nChain INPUT (policy ACCEPT)target       prot opt source                 destination     

2016-03-02 18:33:44 412

转载 嵌入式大牛开发经验心得

学习有捷径吗?俺认为是有的,正确的道路就是捷径。    就好象是爬山,如果有导游图,那就能找到一条最正确的路线;如果没有导游图,自己瞎琢磨,东问西问,也未必能找到最佳的路线。    有时候回首前尘,会谓叹,要是当时我这样做就好了;这也说明了人生会有一个最优解。    嵌入式系统的学习也是一样,作为电子专业或者其它专业的学生来说,想要把嵌入式系统的学习搞好,走一条成功的人生道路,那应该怎

2016-03-02 13:39:48 19000 4

Visual_C++_6.0_MFC_入门教程

Visual_C++_6.0_MFC_入门教程

2014-02-24

空空如也

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

TA关注的人

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