自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

牛仔的blog

朋友,随缘。事业,随性。命运,冷漠。

  • 博客(16)
  • 资源 (4)
  • 收藏
  • 关注

原创 linux进程---exec族函数(execl, execlp, execle, execv, execvp, execvpe)

exec族函数函数的作用:我们用fork函数创建新进程后,经常会在新进程中调用exec函数去执行另外一个程序。当进程调用exec函数时,该进程被完全替换为新程序。因为调用exec函数并不创建新进程,所以前后进程的ID并没有改变。exec族函数定义:  可以通过这个网站查询:linux函数查询 功能:   在调用进程内部执行一个可执行文件。可执行文件既可以是二进制文件,也可以是任何Linux下可执

2017-06-28 16:24:11 49688 7

原创 用链表实现堆栈

堆栈数据一种后进先出的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。基本的堆栈操作是push和pop,push是把一个新值压入堆栈的顶部,pop是把堆栈的顶部的值移除并返回这个值。堆栈只提供对它的栈顶值的访问。 堆栈很容易实现,可以用静态数组、动态数组、链表实现堆栈。本文介绍的是链表实现的堆栈。

2017-06-24 15:09:31 3482

原创 离散存储---链表

本文先讲离散存储链表的相关方法实现,包括链表的创建、删除、插入、遍历、长度查询等。然后和连续存储—数组相关方法效率做下对比分析。链表的定义: 链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。

2017-06-24 13:55:00 2589

原创 连续存储---数组

本文讲数组存储数据的相关方法实现,包括数组的插入、删除、排序、追加、反转、遍历等。 后面博客会讲离散存储链表的实现,然后两者做下效率对比。

2017-06-23 17:40:17 3181

原创 linux 中signal机制如何应用(二)

上一节linux 中signal机制如何应用(一)讲的例子是不带参数的信号处理机制,这一节讲带参数的。我们知道用kill只是发送信号不能携带参数,如果我们想要发送信号给进程并且携带参数,那就得用sigqueue函数了。可以说,sigqueue函数比kill更加强大,经常是与sigaction()函数配合使用。 sigqueue函数:int sigqueue(pid_t pid,int signo,

2017-06-21 16:09:01 3040

原创 linux 中signal机制如何应用(一)

前面博客讨论的问题:一个长期运行的Linux程序,想在不退出运行的情况下,通过某种机制,可以让程序知道要不要打印出log。 之前的博客 linux中inotify机制如何应用 用了inotify机制解决了这个问题,现在我们尝试用linux signal机制来实现。大概的思路是注册安装一个信号,用户用kill命令向进程传递信号,进程接收到信号,执行中断处理函数,在函数中把打印log的标志打开。按照惯

2017-06-21 15:26:04 3442

原创 读《自控力:斯坦福大学最受欢迎心理学课程》体会

没有太多为什么,我去读《自控力》这本书只是因为它评分高。我不认为自己是一个自控力差的人。相反,我觉得自己是一个自控力还不错的人,在脑海中,那个坚持不懈的身影总会时不时会出现。但是,这本书读着读着却给了我从另外一个角度审视生命。那就是,我们的自控力(意志力)强弱受到身体各个方面的影响,而不单单只是你想要或不想要的问题。如何更加科学的调控自己的压力与意志力,是我从本书学到的最有用的知识。   思考一下

2017-06-17 18:52:46 4242

原创 linux中inotify机制如何应用

在前面的博客《用可变参数扩展printf》中讨论到如何在应用中控制log的输出。 我们假设的情景是,一个长期运行的Linux程序,想在不退出运行的情况下,通过某种机制,可以让程序知道要不要打印出log 。 我们当时的实现是: 创建一个文件,写进标志位 然后每次要打印log之前先读取这个文件,按照标志位是什么来决定要不要打印log 这样子我们在linux系统上,如果不想打印出这些log,可

2017-06-16 17:28:53 4055

原创 用可变参数扩展printf

VA_LIST 是在C语言中解决变参问题的一组宏,所在头文件#include <stdarg.h>,用于获取不确定个数的参数。首先,我们来看看C语言中是如何定义。先看其中比较简单的一种定义,分析完一种,其他实现也可触类旁通。 va_list,定义为字符串指针:typedef char * va_list;VA_START宏,获取可变参数列表的第一个参数的地址(ap是类型为va_list的指针,v是

2017-06-16 16:51:40 2866

原创 读《解忧杂货店》悟

要么读书,要么旅行,身体和灵魂总有一个在路上。读书和思考会让人平静。 闲暇时光读一本书,名为《解忧杂货店》,不评好坏,只谈感悟。最大的背景:

2017-06-10 16:52:13 3123

原创 链式队列的实现与项目中的应用

队列的数据元素又称为队列元素。在队列中插入一个队列元素称为入队,从队列中删除一个队列元素称为出队。因为队列只允许在一端插入,在另一端删除,所以只有最早进入队列的元素才能最先从队列中删除,故队列又称为先进先出(FIFO—first in first out)线性表。 队列可以用链表实现,也可以用数组实现。本文先讲用链表实现队列。后续有时间再写一篇用数组实现的队列。 链式队列说到底是链表的子集,有一

2017-06-04 10:40:10 2896

原创 路由器web界面分析(四)---学会追踪标签

本文基于hisi方案分析web界面整体架构。 主要是讲了web页面中Select、checkbox选择标签的追踪方法。以小见大,其他标签都可以用相同的方法去追踪。Select选择标签的追踪方法: 以页面“网络—>网络设置—>网络连接—>IP协议版本”为例子。 搜索”IP协议版本”,到SDK中去查找,结果如下: 找到”WanIP_Mode_select_label”,去掉“_label”,

2017-06-03 18:14:54 3321

原创 路由器web界面分析(三)---ajax开发

Hisi 在web页面上采用ajax开发。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。 XMLHttpRequest 是 AJAX 的基础。 XMLHttpRequest 对象用于在后台与服务器交换数据。创建XMLHttpRequest对象的五步骤 :建立XMLHttpRequest对象给XML

2017-06-03 15:46:16 4218

原创 路由器web界面分析(一)---把握整体架构

在工作中涉及到了web页面和底层交互问题,这里做下简单回顾。 本文基于hisi方案分析web界面整体架构。

2017-06-03 15:34:57 11036 2

原创 路由器web界面分析(二)---web和底层如何交互

在工作中涉及到了web页面和底层交互问题,这里做下简单回顾。本文基于hisi方案分析web界面、服务器boa、配置管理模块cm之间的调用逻辑。 浏览器和服务器模型基本的流程是:浏览器向服务器发送请求,服务器接收请求,解析请求的URL,然后根据请求的数据调用底层设置或者获取等接口,接着向浏览器返回相关信息,最后浏览器把数据显示出来

2017-06-03 15:22:24 13975 1

原创 TCP socket select用法分析

本文主要记录了select一些用法和自己写的一个用select的服务器端例子。首先,我们来看看select函数的定义和参数的含义:int select( int nfds, fd_set FAR* readfds, fd_set * writefds, fd_set * exceptfds, const str

2017-06-02 16:22:44 16027

boa服务器源码

BOA 服务器是一个小巧高效的web服务器,是一个运行于unix或linux下的,支持CGI的、适合于嵌入式系统的单任务的http服务器,源代码开放、性能高。

2017-12-28

嵌入式资料整合第二辑

嵌入式资料整合第二辑

2015-09-22

空空如也

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

TA关注的人

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