自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (4)
  • 收藏
  • 关注

原创 所谓的稳定,不过是在浪费生命?

二十五岁之前,你想象的人生,应该是有讲不完的故事,挣不完的钱和出不尽的风采。简单来说,就像所有的电视剧安利的偶像人生,一路拼搏,历经磨难,终于当上CEO,赢取白富美,走向人生巅峰,虽然会经历大风大浪,但那都是成功人士必经之路。那时的你,最瞧不起的,就是稳定,你认为那不过是在浪费生命。然而,仅仅过了几年,你就会发现。仅仅为了稳定,你已精疲力尽。刚刚工作,业务能...

2019-10-31 22:04:09 518 2

转载 简单介绍 CPU 的工作原理

内部架构CPU 的根本任务就是执行指令,对计算机来说最终都是一串由 0 和 1 组成的序列。CPU 从逻辑上可以划分成 3 个模块,分别是控制单元、运算单元和存储单元 。其内部架构如下:【1】控制单元控制单元是整个CPU的指挥控制中心,由指令寄存器IR(Instruction Register)、指令译码器ID(Instruction Decoder)和 操作控制器OC(Opera...

2019-10-31 20:22:21 637

转载 十大经典排序算法(动图演示)

0、算法概述0.1 算法分类十种常见排序算法可以分为两大类:比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。 非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时间非比较类排序。0.2 算法复杂度0.3 相关概念稳定:如果a原本在b前...

2019-10-31 20:15:06 166

转载 深入浅出 TCP/IP 协议栈

TCP/IP 协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输。TCP/IP 协议采用4层结构,分别是应用层、传输层、网络层和链路层,每一层都呼叫它的下一层所提供的协议来完成自己的需求。由于我们大部分时间都工作在应用层,下层的事情不用我们操心;其次网络协议体系本身就很复杂庞大,入门门槛高,因此很难搞清楚TCP/IP的工作原理,通...

2019-10-31 19:49:04 169

原创 软件测试四阶段,单元测试、集成测试、系统测试、验收测试

软件测试的对象包括软件需求、概要设计、详细设计、软件运行环境、可运行程序和软件源代码等。软件测试包括质量、人员、资源、技术和流程五大要素,以及测试覆盖率和测试效率两个目标。软件测试一般分为4个阶段:单元测试、集成测试、系统测试、验收测试。一、单元测试单元测试是对软件中的最小可验证单元进行检查和验证。比如对Java中的类和方法的测试。测试原则:1、尽可能保证测试用例相互独立(测试...

2019-10-29 20:16:06 3488

原创 TCP & UDP

定义:TCP(Transmission ControlProtocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。在简化的计算机网络OSI模型中,完成第四层传输层所指定的功能。UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式...

2019-10-29 16:54:37 175

原创 线程通信&进程通信

进程和线程的区别:对于进程来说,子进程是父进程的复制品,从父进程那里获得父进程的数据空间,堆和栈的复制品。而线程,相对于进程而言,是一个更加接近于执行体的概念,可以和同进程的其他线程之间直接共享数据,而且拥有自己的栈空间,拥有独立序列。共同点: 它们都能提高程序的并发度,提高程序运行效率和响应时间。线程和进程在使用上各有优缺点。 线程执行开销比较小,但不利于资源的管理和保护,而进程相反...

2019-10-29 16:46:59 241

转载 TCP协议之3次握手4次挥手

三次握手流程1.客户端发个请求“开门呐,我要进来”给服务器2.服务器发个“进来吧,我去给你开门”给客户端3.客户端有很客气的发个“谢谢,我要进来了”给服务器四次挥手流程1.客户端发个“时间不早了,我要走了”给服务器,等服务器起身送他2.服务器听到了,发个“我知道了,那我送你出门吧”给客户端,等客户端走3.服务器把门关上后,...

2019-10-29 16:44:36 122

转载 TCP协议分析之包结构

TCP首部格式 tcp数据是被封装在IP数据包中的,和udp类似,在IP数据包的数据部分。tcp数据包的格式如下:源端口号和目的端口号(寻址)与udp中类似,用于寻找发端和收端应用进程。这两个值加上IP首部中的源端IP地址和目的端IP地址唯一确定一个,在网络编程中,一般一个IP地址和一个端口号组合称为一个套接字(socket)。  序号(seq):用来标识从TCP发端向TCP收端发送...

2019-10-29 14:16:16 513

转载 C语言常用库函数(含详细用法)

一、数学函数调用数学函数时,要求在源文件中包下以下命令行:#include <math.h> 函数原型说明 功能 返回值 说明 int abs( int x) 求整数x的绝对值 计算结果 dou...

2019-10-28 17:19:10 416

转载 网络抓包工具 wireshark 入门教程

Wireshark(前称Ethereal)是一个网络数据包分析软件。网络数据包分析软件的功能是截取网络数据包,并尽可能显示出最为详细的网络数据包数据。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。网络管理员使用Wireshark来检测网络问题,网络安全工程师使用Wireshark来检查资讯安全相关问题,开发者使用Wireshark来为新的通讯协定除错,普通使用者使用...

2019-10-28 15:00:08 654

转载 浅谈Linux的内存管理机制

一 物理内存和虚拟内存我们知道,直接从物理内存读写数据要比从硬盘读写数据要快的多,因此,我们希望所有数据的读取和写入都在内存完成,而内存是有限的,这样就引出了物理内存与虚拟内存的概念。物理内存就是系统硬件提供的内存大小,是真正的内存,相对于物理内存,在linux下还有一个虚拟内存的概念,虚拟内存就是为了满足物理内存的不足而提出的策略,它是利用磁盘空间虚拟出的一块逻辑内存,用...

2019-10-18 16:11:15 125

转载 Linux Ethernet PHY 驱动

今年在FPGA上和IC那边一起验证了MAC/PHY, 基于linux 3.6.4, 这边小结一下代码.phy的初始化顺序第一步phy_initmdio_bus_initbus_register(&mdio_bus_type);//autoprobephy_driver_register(&genphy_driver);第二步, 具体的phy驱动的初...

2019-10-18 15:17:18 1371

转载 Linux pci/pcie驱动

/driver/pci/probe.c/arch/powerpc/kernel/pci_64.c在pci驱动中pci调用pci_scan_device扫描每个设备的每个功能,当发现该功能存在时(通过读设备的vendor及product ID确定),就为该设备功能建立一个完整的pci_dev(通过pci_setup_device 完成),并将该设备功能加入到全局链表及总线链表中,当加载设备驱...

2019-10-18 14:46:53 2889

转载 RAID技术超详细讲解

RAID技术是一种多磁盘技术,面对数据的各方面有着两面性的影响,整体来说优点大于缺点的,下面我将详细介绍一下RAID ,简称磁盘阵列技术。一、RAID 概述  1988 年美国加州大学伯克利分校的 D. A. Patterson 教授等首次在论文 “A Case of Redundant Array of Inexpensive Disks” 中提出了 RAID 概念 [1] ,即廉价...

2019-10-15 14:41:54 936

原创 malloc()和free()的原理及实现

在C语言中只能通过malloc()和其派生的函数进行动态的申请内存,而实现的根本是通过系统调用实现的(在linux下是通过sbrk()系统调用实现)。malloc()到底从哪里得到了内存空间?答案是从堆里面获得空间。也就是说函数返回的指针是指向堆里面的一块内存。操作系统中有一个记录空闲内存地址的链表。当操作系统收到程序的申请时,就会遍历该链表,然后就寻找第一个空间大于所申请空间的堆结点,然后就...

2019-10-14 16:52:06 375

原创 send函数和recv函数

1.send 函数intsend(SOCKETs, constcharFAR*buf, intlen, intflags); 不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数据。客户程序一般用send函数向服务器发送请求,而服务器则通常用send函数来向客户程序发送应答。 该函数的第一个参数指定发送端套接字描述符; 第...

2019-10-14 10:34:35 181

嵌入式Linux应用开发完全手册

韦东山老师所著嵌入式软件开发教程,讲解环境搭建,最小系统,嵌入式开发流程及外围设备,以及常见驱动开发

2019-04-10

视频监控服务器端代码

视频监控编解码应用部分代码,对各个流程有详细的代码说明

2019-04-10

国嵌高级项目实验手册

几个项目实践过程,对项目的描述分析,流程图规划,代码详解,结果分析

2019-04-10

linux多线程手册

多线程编程手册,帮助读者尽快掌握多线程编程技术

2015-08-17

空空如也

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

TA关注的人

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