自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (30)
  • 问答 (3)
  • 收藏
  • 关注

转载 malloc和new出来的虚拟地址如何访问实际物理地址

malloc和new出来的地址都是虚拟地址 你就说内存管理单元怎么可能让你直接操作硬件内存地址!malloc的实现与物理内存自然是无关的,内核为每个进程维护一张页表,页表存储进程空间内每页的虚拟地址,页表项中有的虚拟内存页对应着某个物理内存页面,也有的虚拟内存页没有实际的物理页面对应。无论malloc通过sbrk还是mmap实现,分配到的内存只是虚拟内存,而且只是虚拟内存的页号,代表这块空间进程可以用,实际上还没有分配到实际的物理页面。等你的进程访问到这个新分配的内存空间的时候,如果其还没有对应的物理页

2020-10-04 13:28:51 878

转载 Linux4G空间的内存管理

https://blog.csdn.net/jiangyuping_fyl/article/details/7268287https://blog.csdn.net/u011436427/article/details/104761726内核内存使用Slab 所谓尺有所长,寸有所短。以页为最小单位分配内存对于内核管理系统中的物理内存来说的确比较方便,但内核自身最常使用的内存却往往是很小(远远小于一页)的内存块——比如存放文件描述符、进程描述符、虚拟内存区域描述符等行为所需的内存都不足一...

2020-10-04 13:08:16 312

转载 标准I/O与文件I/O

在应用开发中,经常要访问文件,Linux 下的文件读写方式分为两大类:标准 I/O 和 文件 I/O,下面分别介绍下两种 I/O 的相关操作,并比较下两种 I/O 的特点。一、标准I/O标准I/O库接口由ANSI C标准定义,标准IO函数提供了一种对不用缓冲IO函数的带缓冲的接口。不仅在UNIX系统,在很多操作系统上都实现了标准I/O库,标准I/O库处理很多细节,如缓存分配、以优化长度执行I/O等,这样使用户不必关心如何选择合适的块长度。标准I/O在系统调用基础上构造的,它便于用户使用。标准I/O有

2020-08-20 21:42:02 285

原创 用户和内核存(cache)区 缓冲(cache)和缓存(buffer)的区别

用户进程缓存区 用户进程通过系统调用访问系统资源的时候,需要切换到内核态,而这对应一些特殊的堆栈和内存环境,必须在系统调用前建立好。而在系统调用结束后,cpu会从核心模式切回到用户模式,而堆栈又必须恢复成用户进程的上下文。而这种切换就会有大量的耗时。 你看一些程序在读取文件时,会先申请一块内存数组,称为buffer,然后每次调用read,读取设定字节长度的数据,写入buffer。(用较小的次数填满buffer)。之后的程序都是从buffer中获取数据,当buffer使用完后...

2020-08-20 20:51:40 1797

转载 fopen与open的区别

fopen与open的区别open和fopen的区别:1.缓冲文件系统缓冲文件系统的特点是:在内存开辟一个“缓冲区”,为程序中的每一个文件使用,当执行读文件的操作时,从磁盘文件将数据先读入内存“缓冲区”, 装满后再从内存“缓冲区”依此读入接收的变量。执行写文件的操作时,先将数据写入内存“缓冲区”,待内存“缓冲区”装满后再写入文件。由此可以看出,内存 “缓冲区”的大小,影响着实际操作外存的次数,内存“缓冲区”越大,则操作外存的次数就少,执行速度就快、效率高。一般来说,文件“缓冲区”的大小随机器 而定

2020-08-20 20:27:50 231

原创 设备树之字符设备驱动_LED

在总线设备驱动模型中驱动程序被分成了两部分;dev部分和drv部分;在dev部分,分配设置注册了一个platform_device设备,具体硬件资源就是在该设备中被描述;在drv部分,同样分配设置注册了一个platform_driver设备,硬件相关的驱动就在这里实现。使用设备树时,写驱动程序时,驱动程序也被分成了两部分;一部分是drv,跟总线设备驱动模型里的platform...

2020-02-16 12:57:23 631

转载 通用的Makefile

1.Linux网络栈下两层实现1.1简介 VLAN是网络栈的一个附加功能,且位于下两层。首先来学习Linux中网络栈下两层的实现,再去看如何把VLAN这个功能附加上去。下两层涉及到具体的硬件设备,日趋完善的Linux内核已经做到了很好的代码隔离,对网络设备驱动也是如此,如下图所示:这里要注意的是,Linux下的网络设备net_dev并不一定都对应实际的硬件设备,只要注册一个s...

2020-01-04 10:19:25 175

原创 Linux环境下多文件工程的2种方法(makefile 的几种写法)

对于多文件工程,可以有两种方法编译:1 手动编译每个工程文件,然后生成最后的可执行文件。 2 编写Makefile文件(几种方法)工程例子:创建一个目录为GCC,该目录下创建一个main.c文件和两个文件夹分别是add和sub。add目录下创建add.c和add....

2019-10-29 10:23:32 980

原创 为什么要动态分配内存?什么时候需要动态分配内存?

问:为什么要动态分配内存答1:因为内存太宝贵。答2:如果全部是静止内存不能释放,对于小的程序可以运行完毕。但是对于大的程序,还没运行完,内存就要被占用完,此时就要发生内存泄露。答3:给定一个占用内存可变大小的变量(假设是数组的长度len),给该变量通过函数动态分配内存后,分配内存的大小是根据数组的长度len决定的,假定用户输入len的大小是5,系统就会动态的给该数组分配长度为5的内存,...

2019-10-16 22:04:24 11344 2

原创 Allegro、cadence 17.2的PCB如何转成AD版本的PCB

结合前人的方案:1、复制安装目录下 Altium19\System\Allegro2Altium.bat 和 AllegroExportViews.txt 到Allegro安装目录 Cadence17.2\......\pcbenv 文件夹下(如果找不到pcbenv,就在搜索栏中搜索)2、用文本打开Allegro2Altium.bat,在第一行的extracta.exe前添加extracta....

2019-09-19 20:30:34 15467 3

原创 上拉电阻与下拉电阻的作用

上拉电阻就是把不确定的信号通过一个电阻钳位在高电平,此电阻还起到限流的作用。同理,下拉电阻是把不确定的信号钳位在低电平。上拉电阻是指器件的输入电流,而下拉指的是输出电流。那么在什么时候使用上、下拉电阻呢?1、当TTL电路驱动CMOS电路时,如果TTL电路输出的高电平低于CMOS电路的最低高电平(一般为3.5V),这时就需要在TTL的输出端接上拉电阻,以提高输出高电平的值。2、OC门电路...

2019-09-10 17:18:34 653

转载 因为项目需要--电容的九大作用(转)

电容是电路设计中最为普通常用的器件,也常常在高速电路中扮演重要角色。在电子线路中的作用一般概括为:通交流、阻直流。电容通常起滤波、旁路、耦合、去耦、转相等电气作用。用作贮能元件也是电容器的一个重要应用领域,同电池等储能元件相比,电容器可以瞬时充放电,并且充放电电流基本上不受限制,可以为某些设备提供大功率的瞬时脉冲电流。电容的用途非常多,主要有如下几种: 隔直流:作用是阻止直流通过而让交...

2019-08-23 19:53:12 226

转载 因为项目需求————电容的部分作用(转)

电容的作用电容的主要作用包括滤波、耦合、谐振、旁路、定时、负载、积分、微分,下面来说一说电容是怎么实现这些作用的。滤波滤波电容即电解电容,正负极不能反接,都说滤波电容,那么到底滤掉的是什么波呢?如上图所示,经过整流桥之后的波形如下所示经过滤波电容之后的波形如下图所示,它的作用是把类似sin波形的电压,稳定在一定值之内,电容的容量越大,波形越平滑,它的作用好似一个水...

2019-08-23 18:07:57 295 1

转载 Linux系统调用列表

转自https://www.ibm.com/developerworks/cn/linux/kernel/syscall/part1/appendix.html#6一、进程控制:二、文件系统控制三、系统控制四、内存管理五、网络管理六、socket控制七、用户管理八、进程间通信以下是Linux系统调用的一个列表,包含了大部分常用系统调用和由系统调用派生出的的函数。...

2019-07-20 22:41:18 103

原创 Linux内核启动分析

嵌入式Linux系统分为三部分:引导程序BootLoader、根文件系统和Linux内核,针对不同的开发板需要不同Boot Loader来引导内核,本文开篇着重对U-Boot如何引导内核启动做详细分析,然后步步深入对内核的详解。该系统的硬件环境是基于S3C2440芯片的ARM9开发板,uboot的版本是u-boot-1.1.6,Linux源码版本是linux-3.4.2,交叉编译链为arm-lin...

2019-07-19 16:36:10 277

原创 ubuntu安装VScode

方法一:ubuntu安装VScode步骤:因为Ubuntu自带visual studio Code 的安装包,所以:1 找到Ubuntu自带的软件包2 然后搜索 vscode3 然后点开安装方法二sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-makesudo apt-get updates...

2019-06-02 20:23:03 251

原创 获取 ESP-IDF,用git clone克隆ESP-IDF,出现子模块克隆不全、拒绝连接等问题、

原本命令行是:cd ~/espgit clone --recursive https://github.com/espressif/esp-idf.git在我这出现拒绝连接的问题,所以分为四个命令去实现:cd ~/espgit clone https://github.com/espressif/esp-idf.gitcd esp-idfgit submodule...

2019-05-31 15:34:12 7027 3

转载 MPEG4视频压缩编码技术详解

MPEG全称是Moving Pictures Experts Group,它是“动态图象专家组”的英文缩写,该专家组成立于1988年,致力于运动图像及其伴音的压缩编码标准化工作,原先他们打算开发MPEG1、 MPEG2、MPEG3和MPEG4四个版本,以适用于不同带宽和数字影像质量的要求。目前,MPEG1技术被广泛的应用于VCD,而MPEG2 标准则用于广播电视和DVD等。MPEG3最初是为HD...

2019-01-18 14:20:25 4479

转载 嵌入式系统 Boot Loader 技术内幕(真是不可多得文章)

转自:https://www.ibm.com/developerworks/cn/linux/l-btloader/index.html1. 引言在专用的嵌入式板子运行 GNU/Linux 系统已经变得越来越流行。一个嵌入式 Linux 系统从软件的角度看通常可以分为四个层次:1. 引导加载程序。包括固化在固件(firmware)中的 boot 代码(可选),和 Boot Loader...

2018-12-03 19:15:39 192

原创 开发板通过u-boot和linux内核修改nand flash分区

一个MTD分区折磨了我好几天,现在搞明白了,跟大家分享以下。目的:我的开发板默认的MTDkernel分区是2M,我现在需要将分区扩为4M。硬件平台:JZ2440(芯片:S3C2440)1.在UBOOT下的uboot/include/config/100ask24x0.h 中(开发板不一样,配置文件也不一样)修改,根据自己的情况修改大小。#define MTDPARTS_DEFAU...

2018-12-03 19:07:41 1331

转载 浅谈内核的Makefile、Kconfig和.config文件

刚开始学习Linux内核,在学习的过程中固然有非常非常多的不顺与羁绊,昨天在百问科技的公众号上看了一篇文章,对于我们这些初学者来说,有很大的帮助,因此转载过来供大家一块学习。转自:https://mp.weixin.qq.com/s/D9wBnr9i8FmuF0tm6HwbLwLinux内核源码文件繁多,搞不清Makefile、Kconfig、.config间的关系,不了解内核编译体系,编...

2018-11-25 11:21:43 120

转载 TCP/UDP Linux网络编程详解

TCP/UDP Linux网络编程详解本文主要记录TCP/UDP网络编程的基础知识,采用TCP/UDP实现宿主机和目标机之间的网络通信。内容目录1. 目标2.Linux网络编程基础2.1 嵌套字2.2 端口2.3 网络地址2.3.1 网络地址的格式2.3.2 网络地址的转换2.4 字节序3.TCP3.1 TCP流程图3.2 TCP步骤分析3....

2018-11-23 23:29:05 592

原创 boa服务器出现 网页丢失(无网连接状态)

咱们一般上网的网址:https://XXXX但是在使用BOA服务器的时候,我们在输入IP的时候应该输入:http://XXX 比正常URL少一个 s

2018-11-21 20:55:54 564

原创 编译linux内核时出现"mkimage" command not found - U-Boot images will not be built错误

“mkimage” command not found - U-Boot images will not be built/home/jtong/Desktop/linux-3/linux-3.4.2/arch/arm/boot/Makefile:89: recipe for target ‘arch/arm/boot/uImage’ failedmake[1]: *** [arch/arm/...

2018-10-26 22:41:17 284

原创 boa服务器出现502 Bad Gateway The CGI was not CGI/1.1 compliant错误

当我们把boa服务器移植完毕后,很开心的测试下cgi的测试程序(boa中自带的例子,一般先运行boa自带的例子,防止后面出现错误不知道是哪的错误),但是出现如下错误:boa服务器出现502 Bad GatewayThe CGI was not CGI/1.1 compliant错误解决方法:将boa自带的测试程序cgictest.cgi和capature全部设为可读可写执行以下命令:$...

2018-10-24 09:37:13 1456

原创 在移植boa服务器的过程中出现boa:not found问题以及移植cgic库编译时出现arm-linux-gcc-g命令未找到错误

1、嵌入式web服务器移植的过程在网上很多资源的,我在这就不再赘述了,我就简单说下一个对于新手来说很头疼的问题!!移植boa服务器的时候,所有的编译工作以及移植工作全部做完了,就差最后启动boa服务器了,就在这时,让我倒腾了好几天的一个错误:-sh: ./boa: not found。有些网友在网上也有解决的方法,就是修改Makefile中的LDFLAGS = -g改为LDFLAGS = ...

2018-10-23 23:13:36 686 2

原创 制作跟文件系统时出现的一些错误

在make busybox的时候出现如下错误:/arm-none-linux-gnueabi/libc/usr/include/linux/netfilter.h:44: error: field ‘in’ has incomplete type/arm-none-linux-gnueabi/libc/usr/include/linux/netfilter.h:45: error: field...

2018-10-22 11:58:18 1362

原创 Ubuntu 配置交叉环境编译环境-嵌入式

安装了两次交叉编译环境变量了,记录下,如下为亲自测试。1 、下载arm-linux-gcc ,下面网址分享两个gcc版本 4.4.3 和 4.3.2以4.3.2版本为例,4.4.3.操作一样。https://pan.baidu.com/s/16-8MUM0gQJEMjRDjW8xYQg2、解压文件$tar xjf arm-linux-gcc-4.3.2.tar.bz23、修改环境变量...

2018-10-21 15:27:51 262

AMBA和AHB常用协议总结

AMBA和AHB常用协议总结

2022-08-24

VISIO画时序图的模块和组件

本人在画时序图的时候,发现直接自己组合组件和模块效率低下,很慢,在网上找的资源,供大家下载,将下载后的组件放到C:\Users\Administrator\Documents\我的形状,直接在visio中打开就行,组件包括状态机组件,逻辑组件,FPGA组件等

2022-01-21

doxygen调研报告.docx

doxygen工具在Linux和windows下的应用调研报告

2021-11-01

htmlhelp.zip

htmlhelp.zip

2021-10-15

graphviz-2.37.20140115.zip

graphviz-2.37.20140115.zip

2021-10-15

doxygen-1.9.2-setup.zip

doxygen-1.9.2-setup.zip

2021-10-15

QT模仿FTP.zip

用QT模仿的FTP服务器,包括服务端和客户端,主要用C/C++

2021-07-30

模拟FTP未删减.zip

模拟的FTP,平台是Ubuntu16.04,用的是C语言,实现客户端和服务端的通信,主要包括客户端查看服务端目录列表以及下载和上传文件功能

2021-07-30

基于SNMP的网络拓扑发现开源让u软件.zip

功能如下: 1.设备和链路自动发现 可以按IP起始范围、网络段范围、路由跳转搜索、IP漫游发现方式等,通过SNMP和Ping协议发现设备,并识别设备的基本类型。 在设备发现的过程当中,通过LLDP、CDP、ICMP、ARP技术、邻居路由、端口转发表、STP生成树协议等物理拓扑发现技术,发现设备的物理链接。 设备和链路发现完毕后,在图形界面上以拓扑图的形式显示出来。 2.设备和链路手工编辑 除自动发现外,还可以手工添加、删除、修改网络设备和链路。 3.拓扑图管理界面 拓扑图支持放大、缩水、拖拽、导出、打印等操作;拓扑图可以按树型、Spring、圆形、Organic等自动布局排列。 4.设备内部资源发现 自动发现出设备内部的网口、光口、电口、磁盘、内存、CPU、软件服务等资源信息,进一步了解设备的内部状态。

2020-07-07

wireshark网络拓扑发现软件.zip

wireshark网络拓扑发现软件.zip

2020-06-29

BlueEyes_II.rar

网络拓扑发现软件

2020-06-29

STM32F103系列的C8T6资料程序+原理图+pcb.zip

STM32F103C8T6核心板资料STM32F103C8T6核心板资料包括测试程序技术手册和硬件资料 包括原理图 和PCB图

2020-06-22

全志H2芯片技术文档 Allwinner_H2+_Datasheet_V1.2.zip

资料不好找 需要的拿走 下载的时候用了几十积分 好气 啊 需要的拿走资料不好找 需要的拿走资料不好找 需要的拿走

2020-06-22

香橙派全志H3芯片OrangePi用户手册中文版.zip

香橙派全志H3芯片OrangePi用户手册中文版.zip

2020-06-22

录屏录像录屏.zip

录屏录像录屏.zip

2020-06-14

word版简历模板.zip

word版本的简历模板,大概几百份,很多人在用的,在这分享,包括创意、简洁、基础等类型的模板。word版本的简历模板。word版本的简历模板

2020-05-21

open_release_read_write_ioctl.zip

该资源包括最基础的字符设备驱动程序,包括三个文档,其中两个文档包括驱动测试程序。实现了open(),release(),read(),write()和ioctl()等五个函数的在字符设备驱动程序中的应用

2020-02-22

lpc177x_8x.pdf LPC177x和LPC178X系列数据手册

lpc177x_8x.pdf LPC177x和LPC178X系列数据手册 英文版的 32-bit ARM Cortex-M3 microcontroller; up to 512 kB flash and 96 kB SRAM; USB Device/Host/OTG; Ethernet; LCD; EMC

2020-01-17

Chrome_32位的稳定版.zip

之前一直用的是谷歌浏览器64位的,但是突然不能用了,只能用32位的,所以找到了32位下载包,现在分享到此

2019-11-22

makefile工程文件.zip

该工程文件时根据Linux网络编程改变的,本人博客中有对应的文章详解该工程文件Makefile两种写法

2019-10-30

Allegro(cadence 17.2) 17.2-AD19.zip

在网上找Allegro PDB转成AD的PCB很多方案,找了好几天,大部分不行,总结的两个然后上传到CSDN,希望有缘人看到决解自己的难题。我用的版本是cadence17.2和AD19

2019-09-19

QT开发及实例.zip

本资源为QT开发及实例的电子版内容,里面包含源码程序

2019-07-08

新一代通信网络设计与规划.doc

2019年深圳杯第4题新一代通信网络设计与规划,三个小伙伴的共同作品

2019-07-08

李兴华JAVA开发实战电子版

已传的本书的电子版是本人在上课的时候所用课本,李兴华老师编著的

2019-01-16

boa0.94+cgic207

本人在学习嵌入式web服务器的时候,曾用过的boa和cgic,本人整理在一块了,希望能帮助大家学习及使用

2018-11-24

arm-linux-gcc-3.4.5+4.3.2+4.4.3

本人在学习Ubuntu的过程中使用过了三个版本的交叉编译链,arm-linux-gcc-3.4.5+4.3.2+4.4.3 这个三个版本都在这个,供大家使用及学习

2018-11-24

基于java语言十大经典排序算法

本文档描述了基于JAVA的十大经典排序算法,各个算法都有详细介绍,配有java程序以及图形解释

2018-10-22

u-boot.bin

该二进制文件是在linux环境下基于arm-linux-gcc交叉编译环境下生成的,可以引导启动Linux内核

2018-10-07

基于交叉编译好的linux内核

该uimage是基于Ubuntu下在arm-linux-gcc 的环境下交叉编译生成的,帮助一些朋友不用经过繁琐的编译

2018-10-07

编译好的根文件系统

此文件是在Ubuntu下交叉编译好的根文件系统,编译工具为arm-linux-gcc

2018-10-07

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

TA关注的人

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