自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (2)
  • 收藏
  • 关注

原创 嵌入式软件开发行业介绍和学习思路

就像昨天和同学烧烤啤酒时说的一样,一晃时间过得好快。从事linux环境下软件开发已经好今年了,虽然工作内容有衔接,思考的东西也是在不断深入,但总觉得和自己期望中的嵌入式软件开发有距离。工作的内容局限在某一个环节内,或者是某一段时间内也有涉及其他但不深入也不系统。长久自己总觉得在虚度,时间被丢进公司的工作内容的内耗中(和当前部门相关,也有主观的懈怠),所以想系统的梳理下,看看自己要怎么有个清晰的认识,这个认识包含知识,行业,也包含认识当前自己和期望中的自己的“差距”。分享下阅读的一篇博客:ht...

2020-06-13 20:12:03 434

原创 git/repo/gerrit 本地环境搭建(一)

一、需求:本地构建git/repo/gerrit 开发环境二、背景简介:1> git:一种分布式版本控制系统(DVCS)2> repo:google 为便于管理 Android 项目数目众多的 git repository 而开发的工具,是对git 命令进行封装,而非取而代之3> gerrit:代码审查工具三、git1> git 基础知识:了解分

2017-07-15 13:20:38 1855

原创 源码阅读与分析方法

参考:1. http://www.cnblogs.com/ToDoToTry/archive/2009/06/21/1507760.html2. http://www.xuebuyuan.com/475103.html3. http://blog.csdn.net/sky04/article/details/5770553 读什么?0. 前人总结的学习文档、笔记

2016-09-07 23:36:33 821

原创 vbox下虚拟机同宿主机互相ping,且虚拟机能访问网络的配置

背景:Windows下安装vbox,在vbox中创建Ubuntu 12.04 配置步骤:    1.实现 Ubuntu 同 windows 互相ping        1>在 虚拟机 Ubuntu 的 “设置”中选择“网络”,将 启用 “网卡1”,并将“链接方式”选择为“Host-Only”,其他默认即可;如图:                 此时,查看 window

2015-06-10 23:19:05 10191

原创 动态链接库编译时的链接方式

最近在项目中遇到动态库相关的问题,情况还是 中间层的某个 liba.so库的编译中依赖了 下层libb.so库,liba.so的编译命令如下:gcc -fPIC -shared   -o liba.so  a.c  ../../../libb.so   此处 liba.so的编译中对 libb.so的依赖没有使用 -L ../../../ -lb  的方式给出,而是直接用相对路径 ..

2015-04-28 14:33:15 1622

转载 LINUX下如何用GCC编译动态库

转自:http://www.linuxdiyf.com/viewarticle.php?id=181828本文主要解决以下几个问题1 为什么要使用库?2 库的分类3 创建自己的库或许大家对自己初学 linux时的情形仍记忆尤新吧。如果没有一个能较好的解决依赖关系的包管理器,在linux下安装软件将是一件及其痛苦的工作。你装a包时,可能会提示你要先装b包,

2015-04-28 14:09:35 491

转载 动态库的链接和链接选项-L,-rpath-link,-rpath

原文地址:http://my.oschina.net/shelllife/blog/115958链接动态库如何程序在连接时使用了共享库,就必须在运行的时候能够找到共享库的位置。linux的可执行程序在执行的时候默认是先搜索/lib和/usr/lib这两个目录,然后按照/etc/ld.so.conf里面的配置搜索绝对路径。同时,Linux也提供了环境变量LD_LIBRARY_PA

2015-04-27 11:30:25 516

转载 动态库依赖动态库是的链接方式

在项目代码中遇到这样的情况,上层动态库 a.so 的源码中 引用了下层动态库 b.so 中的函数,但是查看 a.so 的 makefile 发现,居然没有去 链接 b.so。后来百度后知道,虽然编译 a.so 时没有链接 b.so,但是在编译 依赖 a.so 的可执行程序时(不管是直接依赖 a.so 还是 间接依赖),必须链接 b.so。下面是百度的相关资料:转帖自:http://

2015-04-23 18:04:14 1374

转载 CUnit C单元测试轻量级框架

CUnit下载地址: http://sourceforge.net/projects/cunit/CUnit 在线文档帮助:http://cunit.sourceforge.net/doc/index.html 关于CUnit, 本文主要从介绍三方面的内容:1.CUnit的介绍。1.1 介绍如何使用CUnit。CUnit是一个对C语言编写的程序进行单元测试的框架,在线文档说

2015-04-20 19:04:52 5665

原创 《Unix-Linux编程实践教程》读书笔记(十一)

第十一章 连接到近端或远端的进程:服务器与Socket(套接字)1.      产品和服务的概念2.      一个简单的比喻:饮料机接口         提供一个接口,合成不同口味的饮料。这类似于Unix提供一个接口来处理来自不同数据源的数据。4种数据源:磁盘文件;设备;管道;Socket3.      unix中使用的计算器:bc         1)  bc与dc构成的客

2014-06-05 23:26:58 914

原创 《Unix-Linux编程实践教程》读书笔记(十)

第十章 I/O重定向和管道1.      shell脚本中 # ls > my.file                #who| sort > userlist         两个命令引出:如何将一个程序的结果输出到文件而不是屏幕?shell如何将一个程序的输出与另外一个程序的输入相连接?本章阐述进程间一种特殊的通信方式:重定向和管道。2.      每隔60秒查询当前登录

2014-05-29 23:30:22 1471

原创 《Unix-Linux编程实践教程》读书笔记(九)

第九章 可编程的shell、shell变量和环境:编写自己的shellshell本身就是一种编程语言,shell程序通常被称之为shell脚背。本章先学习shell的编程特征,然后再在第八章中编写的shell程序中加入一些特征,将if..then控制语句、局部变量和全局变量添加到要实现的shell程序中。1.      什么是以及为什么要使用shell脚本语言         shel

2014-05-29 23:28:22 1446

原创 《Unix-Linux编程实践教程》读书笔记(八)

第八章 进程和程序:编写命令解释器sh1.      进程=运行中的程序         程序是存储在文件中的机器指令的序列。执行程序是指把机器指令的序列载入到内存然后让处理器逐条执行。一个进程是程序运行时的内存空间和设置。2.      通过命令ps来学习进程         1)  进程存在于用户空间,用户空间是存放运行的程序和他们的数据的一部分内存空间。ps命令会列出用户

2014-05-28 21:53:43 1324

原创 《Unix-Linux编程实践教程》读书笔记(七)

1.      游戏同操作系统的相似之处:游戏涉及屏幕管理、时间、信号、同时做几件事情,这些情景在操作系统中十分常见。2.      屏幕编程:curses库         1)  hello1.c、hello2.c程序中curses库函数的使用         2)  curses同时维护着两份屏幕拷贝,一份真实屏幕拷贝,一份工作拷贝。Curses函数操作工作拷贝,调用refres

2014-05-21 21:12:06 2236 3

原创 《Unix-Linux编程实践教程》读书笔记(六)

1.      鉴于上一章中提到的关于 磁盘连接和设备连接的相同和不同,对这种双重性的处理,程序分为软件工具和针对特定设备编写的程序。针对特定设备编写的程序 并非是要编写其驱动程序,而是根据应用的需要 调整驱动程序的属性。2.      软件工具:不考虑 数据源来自哪里,对磁盘文件和设备文件不加区分。3.      针对特定设备编写的程序:为特定应用控制设备。其中用户程序是一种常见的与

2014-05-20 14:32:03 1004

原创 《Unix-Linux编程实践教程》读书笔记(五)

1.      本章只要通过对比学习设备与文件/目录连接之间的相似之处和不同之处,进而学习连接控制的知识,包括文件/目录连接和设备连接两个方面。2.      设备就像文件:         1)  unix秉承一切皆文件的思想,设备也具有文件名         2) 设备与系统调用:设备支持与文件相关的系统调用         3) 例子:终端就像文件(重定向等操作在终端

2014-05-19 17:47:02 1228

原创 《Unix-Linux编程实践教程》读书笔记(四)

1.      在第三章中,在简单介绍目录树的基础上,结合之前who程序的编写,完成了ls程序的编写。本章则重点介绍文件系统的具体细节,并编写pwd程序。2.      从用户的角度看文件系统:介绍了与目录文件相关的多个shell命令,形成文件系统的感官认识。3.      文件系统的内部结构:         1)  第一层抽象:从磁盘到分区         2)  第二层抽象:

2014-05-19 14:32:57 1022

转载 shell特殊符号解释

在shell中常用的特殊符号罗列如下:# ;    ;;       .       ,        /        /        'string'|        !    $    ${}    $?       $$    $*        "string"*      **    ?       :        ^       $#    $@        `comman

2014-04-02 16:01:54 2035

原创 《Unix-Linux编程实践教程》读书笔记(三)

第三章  目录与文件属性:编写ls1.      在前两章中重点介绍了与文件读写有关的操作如何实现,本章主要介绍目录、文件的类型、如何获取文件相关的属性值。2.      ls命令:可以列出给定目录的内容;显示给定文件的属性信息。ls的使用方法,各个常用命令行选项。理解ls包括三个方面:1)  如何分辨给定的目录还是文件2)  如何列出目录信息3)  如何读取并显示文件

2014-03-27 23:26:31 1307 1

原创 《Unix-Linux编程实践教程》读书笔记(二)

第二章  用户、文件操作与联机帮助:编写who命令1.      本章分析who命令,进一步学习文件操作(在第一章中已经初步使用文件操作相关函数)。除此之外,还将学习从Unix的联机帮助中得到有用信息。2.      Unix系统的标准命令存放路径:/bin,/usr/bin, /usr/local/bin .当在终端使用某个标准命令时,系统会从以上路径搜索。将自己写好的可执行程序

2014-03-27 23:25:30 1642

原创 《Unix-Linux编程实践教程》读书笔记(一)

写在最前:         第一遍:零零散散的花了近两个月的时间读了本书的第一遍,这是一本很适合刚刚掌握一些计算机基础知识的人读的书。学习的思路非常明确,能做什么?怎么做?自己动手?三个方面符合认知顺序,由浅入深让人易于接受;而且每章的内容相对独立和简单,适合初次接触类Unix系统编程的人员逐个了解和实践。总之,从难以程度而言,也许这本书真的很适合作为UEAP的前奏。第一章  Un

2014-03-27 23:20:35 5684

转载 Linux 学习路线指南

很多同学接触Linux不多,对Linux平台的开发更是一无所知。而现在的趋势越来越表明,作为一 个优秀的软件开发人员,或计算机IT行业从业人员,掌握Linux是一种很重要的谋生资源与手段。下来我将会结合自己的几年的个人开发经验,及对 Linux,更是类UNIX系统,及开源软件文化,谈谈Linux的学习方法与学习中应该注意的一些事。 就如同刚才说的,很多同学以前可能连Linux是什么都不知道

2013-12-19 22:02:42 963

转载 linux programmer‘s life

Don’t try to “learn Linux”Pick a project and then do that project, learning Linux is a side effect.Build a web server/web siteBuild an asterisk phone systemBuild a home backup solution

2013-12-19 21:43:05 644

原创 linux下无法识别u盘

经常会遇到Linux下无法识别u盘的情况,这里做一下记录:    1.在虚拟机(vbox)中无法识别u盘    vbox和宿主机对u盘的使用时独占的(即在某一时间只有二者之一能访问u盘,而不能同时访问),遇到vbox中的linux无法识别u盘的情况时以下可以参考:        1>保证在宿主机下能对u盘进行访问,这样保证宿主机的u盘驱动没有问题        2>需要在vbox下

2013-11-12 10:52:12 18157 5

转载 typedef

定 定义typedef声明,简称typedef,为现有类型创建一个新的名字,或称为类型别名,在结构体定义,还有一些数组等地方都大量的用到。它有助于创建平台无关类型,甚至能隐藏复杂和难以理解的语法 。使用typedef可编写出更加美观和可读的代码。所谓美观,意指typedef能隐藏笨拙的语法构造以及平台相关的数据类型,从而增强可移植性以及未来的可维护性。本文下面将竭尽全力来揭示typ

2013-10-18 17:04:22 629

转载 exit()和_exit()的区别

进程就好比人一样有其生命,我们通过fork()函数来创建一个进程,那么我们又是如何来中止进程呢。进程退出 1.在Linux中任何让一个进程退出 进程退出表示进程即将结束。在Linux中进程退出分为了正常退出和异常退出两种。1>正常退出 a. 在main()函数中执行return 。 b.调用exit()函数 c.调用_exit

2013-10-18 14:29:16 664

转载 linux任务前后台切换命令(bg和fg)

我们都知道,在 Windows 上面,我们要么让一个程序作为服务在后台一直运行,要么停止这个服务。而不能让程序在前台后台之间切换。而 Linux 提供了 fg 和 bg 命令,让我们轻松调度正在运行的任务。假设你发现前台运行的一个程序需要很长的时间,但是需要干其他的事情,你就可以用 Ctrl-Z ,挂起这个程序,然后可以看到系统提示(方括号中的是作业号):[1]+ Stopped /r

2013-10-18 10:50:11 725

转载 source insight快捷键及使用技巧

source insight快捷键及使用技巧 退出程序                             : Alt+F4重画屏幕                             : Ctrl+Alt+Space完成语法                             : Ctrl+E复制一行                          

2013-10-16 15:59:38 538

转载 Socket阻塞模式和非阻塞模式的区别

简单点说:阻塞就是干不完不准回来,   非组赛就是你先干,我现看看有其他事没有,完了告诉我一声我们拿最常用的send和recv两个函数来说吧... 比如你调用send函数发送一定的Byte,在系统内部send做的工作其实只是把数据传输(Copy)到TCP/IP协议栈的输出缓冲区,它执行成功并不代表数据已经成功的发送出去了,如果TCP/IP协议栈没有足够的可用缓冲区来保存你Copy过

2013-10-16 14:46:41 20395 2

转载 Linux Socket编程(不限Linux)

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

2013-10-15 17:38:46 1036

转载 《调试九法-软硬件错误的排查之道》

1. 给出基本规则和切实在实际开发中应用规则很重要,“显然的事情"和"容易的事情"是不一样的。2. 关键是记住并且使用这些规则,规则的遵守会变艺术为科学,让潜不知不觉中遵守的规则以文字形式意义列举出来。3. bug分为开发过程中的避免、开发完成后的排查修复。...全文的学习笔记规则1:理解系统阅读手册:手册里有正确使用系统的方法。仔细阅读每个细节:出现问题的地方可能就在

2013-06-03 13:19:04 670

keil5单片机程序合集

适合单片机入门的C51源码包

2024-03-05

国防科技大学计算机网络试题

这里有国防科技大学历年的计算机网络试题,有答案,其中有个别年份的填空题没有题目,但是对你来说其他的已经足够了,看完这些,尤其是大题,相信考试应该不在话下了。

2010-04-07

网络ip地址详细说明

详细解说ip地址,很有用的!看完了之后你就不应该再觉得ip地址是什么很深奥的东东了,希望对你有帮助!

2010-04-07

空空如也

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

TA关注的人

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