自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (14)
  • 收藏
  • 关注

原创 如何在C语言中使用C++函数

C++相对于C由于要支持一些新特性,使得二者在编译过程中生成函数名的方式存在差异:如C++为了支持重载:对下面两个函数会生成不同的函数名称:void test_fun(){}void test_fun(int i){}在符号表中名称为:_Z8test_funv _Z8test_funi 名称中包含了长度和参数信息.而在C中,上面的两个函数名称相同,如果存在上面的代...

2019-07-26 14:43:27 3824

原创 【C语言】数据流错误状态查看

#include <stdio.h>int feof(FILE* stream);int ferror(FILE *stream);int clearerr(FILE *stream);feof 到达文件末尾返回0,否则非0ferror 返回数据流错误状态。如果读取或写入期间发生错误,则ferror返回一个非0值,否则返回0.一个数据流发生错误之后,重复调用ferror继...

2019-05-19 16:19:49 853 1

原创 【C语言】可变参数 stdarg.h

stdarg.h头文件中包含的函数为编程人员提供了访问可变参数的可移植方式,是fprintf和vfprintf等函数需要的。因为C没有限制参数的传入方式,一般认为是不可移植的。传统的C中使用varargs.h来提高移植性,标准C使用stdarg.h其中包含的宏:va_list:声名局部状态变量,如ap,用于遍历参数va_start:初始化上面的状态变量ap,后面才可以使用va_arg和va...

2019-05-19 15:45:25 1058

原创 【C语言】杂注指令

#pragma命令时C语言新增的,这个命令后面可以放任何记号序列:#pragma xxxx可以通过它增加新的预处理功能或向编译器提供实现定义信息。#pragma命令后面的信息没有任何限制,C实现会忽略不理解的信息。它的参数需要进行行宏扩展。不同的实现可能对同一信息进行不一致的理解,最好根据编译器有条件地使用#pragma命令。_Pragma运算符:是C99新增,它使得上面的杂注功...

2019-05-19 11:55:22 673

原创 【C语言】“#”号的使用

将记号转化为字符串:标准C语言中有一种机制可以将宏参数转换为字符串常量。宏定义中出现#记号被当作一元“字符串化”运算符,后面为宏正式参数名,宏扩展期间,#和正式参数名换成相应的包含在字符串引号当中的实际参数。生成字符串时,记号参数表中的每个空白序列转换为一个空格,使用反斜杠的字符保留其原意。#include <stdio.h>#include <stdlib.h&g...

2019-05-12 14:23:55 4071

原创 【C语言】可变参数 宏定义

在C99中,函数式宏的最后一个参数或唯一正式参数可以是省略号,表示宏可以接受可变数目的参数表:#define MARC_NAME(...)#define MARC_NAME(param, ...)使用这种宏时,至少同param参数个数一样多。尾部参数...称为可变参数。__VA_ARGS__可以看作合并的可变参数的宏参数,包括都好分隔符。__VA_ARGS__只能出现在参数表中包含省略...

2019-05-12 13:50:02 747

原创 NN学习小结

指数衰减学习率#指数衰减学习率#Learning_rate = LEARNING_RATE_BASE * LEARNING_RATE_DECAY * (global_step / LEARNING_RATE_BATCH_SIZE )##--------------------------------------------------------------------LEARNIN...

2019-05-04 21:22:34 465

原创 神经网络使用小结

神经网络实现过程:准备数据,提取特征,作为输入 搭建NN结构,从输入到输出(搭建计算图,使用会话执行) 迭代优化参数 使用训练好的模型进行分类使用Tensorflow搭建神经网络分为以下四步:导入模块 前向传播(定义输入,参数和输出) 反向传播,定义损失函数,反向传播方法。 生成会话,训练1.导入模块:导入程序的以来模块,如:import tensorflow a...

2019-04-27 20:25:09 296

原创 Git使用快速入门

Git是一个好用的开源分布式版本控制工具,下面通过几个命令行了解它的使用:1)配置下身份,这样可以知道是谁在提交代码git config --global user.name "Tim"git config --global user.email "zhoudaweijsj@126.com"2)初始化创建一个代码目录,期望对这个目录进行版本控制,首先我们需要给这个目录创建一...

2019-04-20 17:02:40 181

原创 临时内核页表的创建 __create_page_tables

相关宏: .globl swapper_pg_dir .equ swapper_pg_dir, KERNEL_RAM_VADDR - PG_DIR_SIZE 相当于: #define swapper_pg_dir (KERNEL_RAM_VADDR - PG_DIR_SIZE) .macro pgtbl, rd, phys add \rd, \phys, #TEXT_O...

2019-02-24 22:21:53 789

原创 Linux进程PID分配

struct pid在内核内部用于标识一个“进程”,表示一个独立的任务(task)、进程组、会话,为了快速索引可以用hash表来组织。下面我们基于Linux4.20看下进程的pid是如何分配的,首先看下进程pid相关的数据结构:进程数据结构中的namespace成员:struct task_struct{ … … /* Namespaces: */ struct nsprox...

2019-02-05 17:37:24 3160 1

原创 kernfs_node、kobject和kset

sysfs是一个用于导出内核内部对象及其属性和关系的虚拟文件系统,用户可以使用sysfs来确定运行内核中的有用信息,同时也可以用来调整设备和子系统。某些系统代理依赖sysfs中的信息来进行操作。块子系统当前使用它来挂载根分区。如果禁用sysfs,就需要通过其主要和次要设备号在内核引导命令行上指定引导设备。例如: 例如,/dev/hda1的“root=03:01”在Linux内核中,kernfs...

2019-01-27 22:48:14 3895

原创 Linux根文件系统的初始化

根文件系统的安装分为两个阶段:1、安装rootfs文件系统2、安装实际的文件系统其中,安装rootfs的流程在&lt;Linux文件子系统(VFS)的初始化&gt;已经描述,它是一个虚拟的文件系统,并且进程0的根目录和工作目录设置为这个“根文件系统”。第二阶段实际的文件系统是在内核初始化即将结束的时候进行,根据内核的编译和启动选项进行配置。相关概念:ram disk,ramfs,...

2019-01-20 20:08:56 1260

翻译 NO_HZ: 减少调度时钟的滴答

目录 概要永远不要忽略调度时钟滴答为空闲cpu的省略调度时钟滴答省略只有一个可运行任务的CPU的调度时钟功能RCU的影响测试已知的问题概要本文描述了可以减少调度时钟中断的次数的Kconfig选项和引导参数,从而来提高效率,减少系统抖动。减少系统抖动对于某些计算密集型高性能计算(HPC)程序和实时程序非常重要。下面描述三种方法来管理:调度时钟中断(sche...

2019-01-13 18:13:11 9727

原创 从Linux BITMAP到索引池的实现

Linux代码中很多地方为了对某个资源进行标记使用了BITMAP方式,每个标记位只占用一个bit,如cpumask,它的定义在:include\linux\bitops.h#define BITS_PER_TYPE(type) (sizeof(type) * BITS_PER_BYTE)#define BITS_TO_LONGS(nr) DIV_ROUND_UP(nr, BITS_PE...

2019-01-13 11:38:28 411

原创 __setup宏以及表驱动编程

在linux的代码中,经常可以看到这样的写法:__setup("root=", root_dev_setup);其中__setup为宏,root_dev_setup为函数名,这样的写法是什么意义呢?查找宏的定义#define __setup_param(str, unique_id, fn, early) \ static const char __setup_str_#...

2019-01-12 12:00:20 882

原创 Linux文件子系统( VFS)的初始化

目录 概述文件的描述VFS系统的数据类型各个数据结构之间的关系VFS初始化概述Linux世界中一切都是文件,Linux文件子系统VFS(Virtual Filesystem)为用户提供了文件和文件系统的相关接口,系统中所有文件系统依赖VFS来协同工作。Linux的 文件包含两部分目录和文件,一般采用树状的结构进行组织,如:│   ├── Desktop│  ...

2019-01-06 18:16:17 1641 2

原创 编程学习小结(2)编程需要哪些基础知识

编码这么久,编码需要哪些基础知识呢?有人说“貌似不需要什么基础知识?我们公司只要是大学毕业,不管什么专业,在我们这搞一段时间都可以做的很好!”。的确很多公司,尤其是大公司,培训流程相对完善,工作流程也比较规范,无论是什么专业,即使编程0基础,在公司学习一段时间,掌握一些编码基础知识和编程规范后,随着对业务流程越来越熟悉,都可以做的很好,甚至比有基础的同学还好~这里原因很多,很想听听大家的意见,

2017-02-26 01:16:20 796

原创 编程学习小结(1)基本概念----c语言

----云计算、大数据、人工智能,新技术层出不穷,抠码愈久,无力感愈强。IT已经从个人英雄时代进化为一个需要高度协调配合的社会了。作为一个“搞计算机的”被别人问到:“那个XXX软件,我们公司话好多钱买的,你能不能自己做一个?”,回答不能还要加各种解释……;但是也有人问:“计算机这么火,我也想学习编程,怎么学习呢?”嗯,这个问题我可以回答下,也是对自己这么多年学习工作的一个小结,也可以同大家指点

2017-02-19 23:59:48 321

STL Tutorial and Reference Guide

STL Tutorial and Reference Guide.pdf

2010-11-03

Qt及Linux操作系统窗口设计

Qt及Linux操作系统窗口设计.pdf

2010-11-03

数字图像处理的源代码

数字图像处理 源代码 c/c++ vc++ vc 数字图像处理 源代码 c/c++ vc++ vc

2010-06-18

冈萨雷斯--数字图像处理源代码

冈萨雷斯--数字图像处理源代码.rar 冈萨雷斯--数字图像处理源代码 <matlab>

2010-06-18

傅里叶变换 傅里叶变换.pdf

傅里叶变换.pdf傅里叶变换.pdf傅里叶变换.pdf傅里叶变换.pdf

2010-05-11

The GNU C Library.chm

The GNU C Library.chmThe GNU C Library.chmThe GNU C Library.chmThe GNU C Library.chm

2010-05-11

MySQL触发器.pdf

MySQL触发器.pdfMySQL触发器.pdfMySQL触发器.pdfMySQL触发器.pdf

2010-05-11

Linux 进程源代码分析.pdf

Linux 进程源代码分析.pdf Linux 进程源代码分析.pdf Linux 进程源代码分析.pdf Linux 进程源代码分析.pdf

2010-05-11

GCC资料大全 GCC GCC

GCC资料大全 GCC GCC GCC GCC资料大全 GCC资料大全

2010-05-11

MySQL 5.1 官方简体中文手册

MySQL 5.1 官方简体中文手册.pdf

2010-01-24

数字图像处理(英文)

Digital image Processing 冈萨雷斯-数字图像处理 此资源为 英文版需要中文版的zhoudaweijsj#126.com

2009-12-13

OpenGL编程进阶

OpenGL编程进阶 OpenGL编程进阶

2009-11-09

Mathematics for Computer Graphics(2nd)

Mathematics for Computer Graphics(2nd)

2009-11-09

程序设计与解释 MIT.Press

[计算机程序设计与解释].MIT.Press.-.Abelson,.Sussman.&amp;.Sussman.-.Structure.And.Interpretation.Of.Computer.Programs,.2nd.Edition.pdf

2008-09-11

空空如也

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

TA关注的人

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