自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Gino的专栏

Gino的专栏

  • 博客(32)
  • 资源 (7)
  • 问答 (1)
  • 收藏
  • 关注

原创 移植 jq

关于 jq 工具请参考 http://blog.csdn.net/u011641885/article/details/45559031jq 源码下载:git clone https://github.com/stedolan/jq.gitcd jqautoreconf -iCC=i486-openwrt-linux-gcc ./configure --disable-ma

2015-08-31 10:58:29 1743

原创 存储控制器和SDRAM 实验

S3C2440 存储控制器(memory controller)提供了访问外部设备所需的信号,这是一种通过总线形式来访问扩展的外设。S3C2440  的存储器控制器有以下的特性:支持小字节序、大字节序(通过软件选择)每个BANK的地址空间为128MB,总共1GB(8 BANKs)可编程控制的总线位宽(8/16/32 -bit),不过 BANK0 只能选择两种位宽

2015-08-24 22:45:29 1210

原创 ROM、SDRAM、RAM、DRAM、SRAM、FLASH 的区别

ROM 和 RAM 指的都是半导体存储器,ROM 是 Read Only Memory 的缩写,RAM是 Random Access Memory的缩写。ROM 在系统体质供电的时候仍然可以保存数据,而RAM通常都是在掉电之后就丢失数据,典型的RAM就是计算机的内存。RAM 有两大类,一种称为静态 RAM (Static RAM/SRAM),SRAM 速度非常快,是目前读写最快的设备了,但是它

2015-08-23 20:44:27 7400

原创 移植expect出现的错误提示,以及解决办法

工具链为:OpenWrt-Toolchain-x86-generic_gcc-4.8-linaro_glibc-2.21.Linux-i686.tar.bz2错误提示如下:i486-openwrt-linux-gnu-gcc.bin: warning: environment variable 'STAGING_DIR' not definedi486-openwrt-linux

2015-08-20 20:03:59 2829

原创 S3C2440 点灯

点亮开发板上的led灯,需先查看原理图,找到对应引脚,以及搞清楚原理图,如何电路上灯会亮。1、看原理图 JZ2440v2_sch.pdf 找到对应的引脚 nLED_1 对应 GPF4 nLED_2 对应 GPF5 nLED_4 对应 GPF62、看芯片手册 S3C2440A_UserManual_Rev13.pdf 设置对应 I/O 寄存器 CPFCON 控制寄存器 GPF

2015-08-19 20:51:55 1665

原创 openwrt su : must be suid to work properly

嵌入式文件系统一般用户执行 su root 切换根用户会提示错误su: must be suid to work properly是由于 busybox 的权限引起的,需要将 busybox 的权限改为 4755 。而在 openwrt 中,直接修改 staging_dir/target-mipsel_24kec+dsp_glibc-2.21/root-ramips/bin/

2015-08-19 15:03:55 3649

原创 linux /etc/sudoers 文件说明

sudo的配置文件是/etc/sudoers ,我们可以用他的专用编辑工具visodu ,此工具的好处是在添加规则不太准确时,保存退出时会提示给我们错误信息;配置好后,可以用切换到您授权的用户下,通过sudo -l 来查看哪些命令是可以执行或禁止的;/etc/sudoers 文件中每行算一个规则,前面带有#号可以当作是说明的内容,并不执行;如果规则很长,一行列不下时,可以用\号来续行,

2015-08-17 11:34:02 9172

原创 S3C2440 nfs 的使用

Linux主机需要先安装并开启 NFS 服务, NFS 服务的安装配置启动参考http://blog.csdn.net/u011641885/article/details/47696143 中 的安装 nfs服务。使用 uboot 上的 nfs 命令替代 tftp 下载 根文件系统nfs 30000000 192.168.1.106:/work/nfs_root/tmp/fs.y

2015-08-16 23:27:18 1492

原创 crosstool-0.43 目录下的 demo-arm-softfloat.sh 脚本 说明

demo-arm-softfloat.sh 脚本内容:#!/bin/sh# This script has one line for each known working toolchain# for this architecture. Uncomment the one you want.# Generated by generate-demo.pl from buildlogs/

2015-08-16 11:04:16 504

原创 S3C2440 开发环境搭建(Ubuntu)

我的操作系统是 Ubuntu 1404。可以使用下面的命令查看系统的版本cat /etc/issue安装、配置、启动 ftp 服务sudo apt-get install vsftpd修改vsftpd的配置文件/etc/vsftpd.conf,将下面几行前面的“#”号去掉。#local_enable=YES#write_enable=YES上面第一行表示是否允许本地用户登录

2015-08-16 03:17:15 3597

原创 S3C2440 初步接触之程序烧写

使用OpenJTAG烧写:(裸板程序) 1、安装驱动 2、将 oflash.exe FTD2XX.dll 拷贝到 C:\Windows\system32 下。(oflash.exe 和 FTD2XX.dll 在 百问网JZ2440v2主光盘\windows\tools中) 3、然后在 Windows 命令行就可以直接使用了。 4、接线。 5、在命令 Windows 命令行中使用 oflas

2015-08-16 01:42:55 2194

原创 Window 8.1 安装驱动出现 “文件的哈希值不在指定的目录文件中。。。”

如图:解决方法:按下键盘组合键 Win + C,然后点击“设置”-->"更改电脑设置"进入电脑设置之后,点击“更新和恢复”-->"恢复"-->"立即重启"等一会,会出现几个选项,点击“疑难解答”--> "高级"

2015-08-15 21:39:04 1626

原创 关于 Windows 8.1 虚拟光驱问题

今天刚接触到韦东山的视频。发现视频中的虚拟光驱挺好用的,就想在我电脑上安装一个。然后。。。安装了之后发现用不了。。。(安装的就是视频里面的 VDM 虚拟光驱),经过实验,证明软件是没有问题,那么就是我操作系统的问题了。。然后查了一下资料,发现 Windows 8.1 居然是自带虚拟光驱这个功能的。如图:当然,我的电脑上点击右键,是找不到这个“装载”选项的,接着找资料,发现是由于我安装了

2015-08-15 20:47:07 957

原创 linux 进程通信之 信号量

信号量又名信号灯,与其他进程间通信方式大不相同,主要用途是用来保护临界资源。进程可以根据它判断是否能访问某些共享资源。除了用于访问控制外,还可以用于进程同步。分类:二值信号灯:信号灯的值只能取0或1,类似与互斥锁。但两者有不同:信号灯强调共享资源,只要共享资源可用,其他进程同样可以修改信号灯的值;互斥锁更强调进程,占用资源的进程使用完资源后,必须有进程本身来解锁。(我们常说的PV操

2015-08-15 16:30:35 745 1

原创 openwrt undefined reference to ‘getpwent_r’

因为需要安装 su sudo useradd groupadd chown login 等用户管理命令,会访问passwd文件。用到了 getpwant_r 函数。具体是哪个命令引起的,暂时不知。报错如图:经过了解,发现 函数 getpwent_r 是一个可从入函数,也就是 getpwent 线程版本。 作用是,获取 passwd 文件的内容。包含在 pwd.h 头

2015-08-15 00:29:14 1583

原创 linux mmap 映射文件

void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offset);函数功能:把文件内容映射到一段内存上(虚拟内存),通过对这段内存的读取和修改,实现对文件的读取和修改。参数说明addr:指定映射的起始地址,通常设为NULL(表示由系统指定)。length:代表将文件中多大的部分映射到内存

2015-08-12 23:22:52 1214

原创 使用 getopt 处理命令行长参数(长选项)

getopt命令并不是bash的内建命令,它是由util-linux包提供的外部命令。getopt 与 getopts 的区别getopts 是 shell 内建命令, getopt 是一个独立外部工具getopts 使用语法简单,getopt 使用语法复杂getopts 不支持长参数(长选项,如 --option), getopt 支持getopts 不会重排所有参数的顺

2015-08-11 23:00:11 14614

原创 使用 getopts 处理命令行参数

标准的 LINIX 命令在执行时都具有相同的命令行格式command -options parameter果在执行Shell程序也采用上述格式,Bourne Shell中提供了一条获取和处理命令行选项的语句,即getopts语句。该语句的格式为:getopts options variableoptions 选项字符串,会逐个匹配variable 每次匹配成功的选项(需要参

2015-08-11 17:05:48 807

原创 linux 进程间通信之 消息队列

消息队列就是一个消息的链表。可以把消息看作一个记录,具有特定的格式以及特定的优先级。对消息队列有写权限的进程可以向中按照一定的规则添加新消息;有读权限的进程则可以读走消息。读走就没有了。消息队列是随内核持续的。 只有内核重启或人工删除时,该消息才会被删除。在系统范围内,消息队列与键值唯一对应。关于消息队列使用的APIkey_t ftok(const char *path

2015-08-10 15:47:53 649

原创 linux 命令之 watch

watch可以帮你监测一个命令的运行结果,省得你一遍遍的手动运行。在Linux下,watch是周期性的执行下个程序,并全屏显示执行结果。你可以拿他来监测你想要的一切命令的结果变化,比如 tail 一个 log 文件,ls 监测某个文件的大小变化。命令格式watch [options] command参数解释:options :选项-n或--interval watch缺

2015-08-09 22:03:56 773

原创 linux 进程通信之 共享内存

共享内存是被多个进程共享的一部分物理内存。共享内存是进程间共享数据的一种最快的方法,一个进程向共享内存区域写入了数据,共享这个内存区域的所有进程就可以立刻看到其中的内容。关于共享内存使用的APIkey_t ftok(const char *pathname, int proj_id);#在IPC中,我们经常用一个 key_t 的值来创建或者打开 信号量,共享内存和消息队列。

2015-08-09 17:24:25 815

原创 linux 命令之 ipcs、ipcrm

ipcs是linux下显示进程间通信设施状态的工具。可以显示消息队列、共享内存和信号量的信息。Usage: ipcs [-asmq] [-t|-c|-l|-u|-p] ipcs [-s|-m|-q] -i id ipcs -h for help -a:是默认的输出信息 打印出当前系统中所有的进程间通信方式的信息。-s:打印出使用信号进行进程间通信的信息

2015-08-09 15:31:59 862

原创 linux ftok()函数

函数原型key_t ftok(const char *pathname, int proj_id);#pathname: 指定的文件名,该文件必须是存在而且可以访问#proj_id:子序号,只有8个比特被使用(0-255)#当成功执行时,返回一个key_t值,失败返回-1ftok实现原理ftok返回的key_t在Linux中是一个32位的值,它通过取proj_id参数的最低8

2015-08-07 16:28:45 2711

原创 linux 通过命令行获取本机外网IP

curl ifconfig.mecurl icanhazip.comcurl ident.mecurl whatismyip.akamai.comcurl tnx.nl/ipcurl myip.dnsomatic.com

2015-08-07 10:12:23 9137 1

原创 openwrt ndsctl工具

ndsctl是通过unix socket与nodogsplash之间通过socket来实现进程之间的通信,显示信息与配置文件有关系,对于ndsctl 的操作,只是临时的,如果系统记录保存,还是需要写入配置文件。具有操作功能的参数,主要是用来对特定的MAC和IP地址进行操作,操作的结果就是通过iptables建立不同的数据包过滤机制来达到对用户的访问控制。Usage: ndsctl [optio

2015-08-05 11:29:46 1174

原创 openwrt 安装nodogsplash

安装 nodogsplash 可以使用 opkg 命令:opkg intall nodogsplashokpg的配置参考:http://blog.csdn.net/u011641885/article/details/46375531也可以在 制作镜像时选上Network ---> Captive Portals ---> *> nodogsp

2015-08-04 17:30:38 2375

原创 openwrt nodogsplash.conf文件

## Nodogsplash Configuration File## 说明:#所在行不执行。(启用该参数需要删除执行参数前的#及空格)# 文件格式为:参数|建议值|参数说明|执行参数 。# 不同参数之间空一行,同一参数中间可使用带#的空行。# 为保证规则正确运行,需要用"/etc/init.d/nodogsplash start"启动# Parameter: GatewayInterf

2015-08-04 16:38:07 1980

原创 linux sigaction函数(注册信号)使用

int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact);sigaction函数的功能是检查或修改与指定信号相关联的处理动作(可同时两种操作)。参数说明: signum : 要操作的信号 act : 要设置的对信号的新处理方式 oldact : 原来对信号的处理方式 返回值: 成功返回0,

2015-08-03 17:47:04 2264

原创 linux 信号集操作

信号掩码 – 被阻塞的信号集 每个进程都有一个用来描述哪些信号传送来将被阻塞的信号集,如果某种信号在某个进程的阻塞信号集中,则传送到该进程的此种信号将会被阻塞。当前被进程阻塞的信号集也叫信号掩码,类型为sigset_t。每个进程都有自己的信号掩码,且创建子进程时,子进程会继承父进程的信号掩码。信号阻塞和忽略的区别 阻塞的概念与忽略信号是不同的:操作系统在信号被进程解除阻塞之前不会将信号传递出去,

2015-08-03 16:13:48 747

原创 linux 进程通信之 信号

信号是在软件层次上对中断机制的一种模拟,是一种异步通信方式。信号可以直接进行用户空间进程和内核进程之间的交互,内核进程也可以利用它来通知用户空间进程发生了那些系统事件。如果该进程当前并未处于执行态,则该信号就由内核保存起来,直到该进程恢复执行再传递个它;如果一个信号被进程设置为阻塞,则该信号的传递被延迟,直到其阻塞取消时才被传递给进程。信号的产生 1.用户在终端按下某些键时,终端驱动程序会发送信号

2015-08-03 13:56:33 523

原创 linux 信号列表

在终端中执行 kill -l 命令可以看到linux支持的信号。 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR111) SIGSEGV 12

2015-08-03 09:52:49 605

原创 Linux 进程通信之管道

管道是单向的、先进先出的,它把一个进程的输出和另一个进程的输入连接在一起。一个进程(写进程)在管道的尾部写入数据,另一个进程(读进程)从管道的头部读出数据。数据被一个进程读出后,将被从管道中删除,其他读进程将不能再读到这些数据。管道提供了简单的流控制机制,进程试图读空管道时,进程将阻塞。同样,管道已经满时,进程再试图向管道写入数据,进程将阻塞。 管道包括无名管道和有名管道两种,无名管道只能用于父进

2015-08-03 00:06:15 805

IP命令中文手册

IP命令中文手册

2015-05-15

MySQL中文手册

MySQL中文手册 如果打开空白 请参考http://blog.csdn.net/u011641885/article/details/44755205

2015-03-30

MySQL5.096

MySQL5.096安装包。博客附带mysql5.0.96图文安装教程

2015-03-29

VC助手

VC助手

2015-03-27

使用GDB调试linux软件

简介: Linux 的大部分特色源自于 shell 的 GNU 调试器,也称作 gdb。gdb 可以让您查看程序的内部结构、打印变量值、设置断点,以及单步调试源代码。它是功能极其强大的工具,适用于修复程序代码中的问题。在本文中,David Seager 将尝试说明 gdb 有多棒,多实用。

2013-08-22

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

TA关注的人

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