自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 python中open os.open以及os.fdopen的区别

总结:open等价于 os.open + os.fdopenopen()创建新的文件对象,os.open()创建操作系统级文件描述符,os.fdopen()从文件描述符中创建一个文件对象。文件对象是包含文件描述符的Python类,使文件更方便,容易出错。它们提供了例如错误处理,缓冲,逐行读取,字符集转换,并在收集垃圾时关闭。文件描述符是用于处理由操作系统内核直接提供的文件的低级功能。文件描述符是一个小整数,用于标识内核为每个进程保留的打开文件的表中的打开文件。许多系统调用接受文件描述符,但它们不方

2022-02-23 11:46:24 2644

原创 实际物理内存16G,但可用的只有2G,远小于实际物理内存

1、X86 架构机器在上电之后,BIOS 会初始化并探测系统可用和预留的内存信息,并将其存储在指定位置,内核在初始 话过程中,可以通过 BIOS 提供的一系列中断来获得内存相关的信息。[ 0.000000] e820: BIOS-provided physical RAM map:[ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x00000000000997ff] usable[ 0.000000] BIOS-e820: [mem 0x

2022-02-15 10:59:45 7696

原创 python中多线程启动: start和run方法的区别

结论:启动线程,如果对target进行赋值,并且没有重写run方法,则线程start的时候会直接调用target中对应的方法具体代码如下:1、初始化一个线程threading.Thread.__init__(self,target=thread_run())def __init__(self, group=None, target=None, name=None, args=(), kwargs=None, *, daemon=None): ass

2022-02-12 14:59:44 3006

转载 linux内存源码分析 - SLAB分配器概述

在页框分配器中主要是管理物理内存,将物理内存的页框分配给申请者,而且我们知道也可页框大小为4K(也可设置为4M),这时候就会有个问题,如果我只需要1KB大小的内存,页框分配器也不得不分配一个4KB的页框给申请者,这样就会有3KB被白白浪费掉了。为了应对这种情况,在页框分配器上一层又做了一层SLAB层,SLAB分配器的作用就是从页框分配器中拿出一些页框,专门把这些页框拆分成一小块一小块的小内存,当申请者申请的是小内存时,系统就会从SLAB中获取一小块分配给申请者。它们的整个关系如下图:...

2021-09-30 14:07:57 197

转载 linux内存管理源码分析 - 页框分配器

转载自linux内存管理源码分析 - 页框分配器 - tolimit - 博客园 (cnblogs.com)内存的分段和分页实际中编码时遇到的内存地址并不是对应于实际内存上的地址,我们编码中使用的地址是一个逻辑地址,会通过分段和分页这两个机制把它转为物理地址。而由于linux使用的分段机制有限,可以认为,linux下的逻辑地址=线性地址。也就是,我们编码使用的是线性地址,之后只需要经过一个分页机制就可以把这个地址转为物理地址了。所以我们更重要的可能是去说明一下linux的分页模型。  .

2021-09-30 09:48:00 250

转载 第 11 章. Drawing Textures 绘制纹理

首发于Vulkan 学习指南关注专栏写文章第 11 章. Drawing Textures 绘制纹理SnowFox图形学 AI 分布式 操作系统 编译器 架构 后端 多线程4 人赞同了该文章第 11 章. Drawing Textures 绘制纹理在前一章中,我们学习了如何更新资源的内容并使用描述符在着色器阶段读取它们。 我们还介绍了 push 常量,它是在着色器阶段使用命令缓冲区更新常量数据的...

2019-08-21 20:50:30 748

转载 第 10 章. 描述符 Descriptors 以及 Push 常量 Constant

首发于Vulkan 学习指南关注专栏写文章第 10 章. 描述符 Descriptors 以及 Push 常量 ConstantSnowFox图形学 AI 分布式 操作系统 编译器 架构 后端 多线程2 人赞同了该文章第 10 章. 描述符 Descriptors 以及 Push 常量 Constant在前一章中,我们在显示输出中渲染了第一个绘图对象。 在本章中,我们将采用先前的实现,并在 Un...

2019-08-21 20:49:35 856

转载 第 9 章. Drawing Objects 绘制对象

首发于Vulkan 学习指南关注专栏写文章第 9 章. Drawing Objects 绘制对象SnowFox图形学 AI 分布式 操作系统 编译器 架构 后端 多线程4 人赞同了该文章第 9 章. Drawing Objects 绘制对象在上两章中,我们实现了渲染通道实例并显示了具有指定背景色的交换链图像。 在前一章中,我们将各种管线状态与 Render Pass 一起放入图形管线中。 在本章...

2019-08-21 20:48:49 1041

转载 第 8 章 管线以及管线状态管理

首发于Vulkan 学习指南关注专栏写文章第 8 章 管线以及管线状态管理SnowFox图形学 AI 分布式 操作系统 编译器 架构 后端 多线程9 人赞同了该文章第 8 章 管线以及管线状态管理在上一章中,我们理解了 Vulkan 中的缓冲区资源,并使用它在物理设备内存上以顶点缓冲区的形式存储几何图形数据信息。 我们实现了一个 Render Pass 和 framebuffer 对象。 此外,...

2019-08-21 20:47:55 1270

转载 第 7 章. 缓冲区资源,渲染通道,帧缓冲区以及使用 SPIR-V 的着色器

首发于Vulkan 学习指南关注专栏写文章第 7 章. 缓冲区资源,渲染通道,帧缓冲区以及使用 SPIR-V 的着色器SnowFox图形学 AI 分布式 操作系统 编译器 架构 后端 多线程1 人赞同了该文章在前一章中,我们了解了 Vulkan 资源类型;我们了解图像资源(VkImage)是什么,以及如何在交换链图像中实现它们。 在本章中,我们将讨论第二种 Vulkan 资源,称为缓冲区资源(V...

2019-08-21 20:47:05 1027

转载 第 6 章. 分配图像资源并使用 WSI 构建 Swapchain

首发于Vulkan 学习指南关注专栏写文章第 6 章. 分配图像资源并使用 WSI 构建 SwapchainSnowFox图形学 AI 分布式 操作系统 编译器 架构 后端 多线程在前一章中,我们介绍了与内存管理和命令缓冲相关的概念。 我们明白了主机内存和设备内存以及在 Vulkan API 中分配的方式。 我们还介绍了命令缓冲区,实现了命令缓冲区记录 API 的调用并将它们提交给队列进行处理。...

2019-08-21 20:46:02 1227

转载 第 4 章. Vulkan 中的调试

首发于Vulkan 学习指南关注专栏写文章第 4 章. Vulkan 中的调试SnowFox图形学 AI 分布式 操作系统 编译器 架构 后端 多线程在上一章中,我们初始化了 Vulkan API 并知道了层和扩展的概念。 我们连接物理硬件设备并理解了它所暴露的不同类型的队列。 由于我们正在为实际具体的实现做前期的准备工作,因此了解 Vulkan 中的调试功能,从而避免不愉快的错误,就显得非常重...

2019-08-21 20:45:06 1538 1

转载 第 3 章 与设备握手

首发于Vulkan 学习指南关注专栏写文章第 3 章 与设备握手SnowFox图形学 AI 分布式 操作系统 编译器 架构 后端 多线程1 人赞同了该文章利用我们前两章中获得的知识,我们现在已经达到了可以从 0 开始进行 Vulkan 编程的水平。 这两章奠定了基础,并帮助我们理解这一革命性 API 的基本原理。 现在,在更高层次上,我们要了解该技术背后的动机,核心块以及相关的功能和术语。 另外...

2019-08-21 20:44:03 613

转载 第 2 章 你的第一个 Vulkan 伪代码程序

首发于Vulkan 学习指南关注专栏写文章第 2 章 你的第一个 Vulkan 伪代码程序SnowFox图形学 AI 分布式 操作系统 编译器 架构 后端 多线程7 人赞同了该文章在上一章中,我们提供了一个比较基本的介绍,以便可视化新一代的 Vulkan API。 我们通过这套 API 的高级生态系统设计进行了盘点,并了解内部模块的功能,以此来理解其执行模式。在本章中,我们会了解一下 Vulka...

2019-08-21 20:43:06 863

转载 第 1 章 次世代 3D 图形 API 入门

首发于Vulkan 学习指南关注专栏写文章第 1 章 次世代 3D 图形 API 入门SnowFox图形学 AI 分布式 操作系统 编译器 架构 后端 多线程35 人赞同了该文章Vulkan 是一套革命性的高性能 3D 图形、计算 API,适用于现代 GPU 管线系统,用来满足社区的苛刻要求。 这套 API 提供了一种全新的方式来克服现有传统 API 的复杂性和差异性。 Vulkan 是一套“显...

2019-08-21 20:41:37 538

转载 第 5 章. Vulkan 中的命令缓冲区以及内存管理

首发于Vulkan 学习指南关注专栏写文章第 5 章. Vulkan 中的命令缓冲区以及内存管理SnowFox图形学 AI 分布式 操作系统 编译器 架构 后端 多线程1 人赞同了该文章命令缓冲区是若干命令的集合,它会被提交给适当的硬件队列供 GPU 进行处理。 然后,在真正的 GPU 处理开始之前,驱动程序会提取命令缓冲区并对其进行验证和编译。本章将介绍命令缓冲区的概念。 我们将学习命令池的创...

2019-08-21 20:39:09 1188

转载 c++中可变参数

版权声明:本文为博主原创文章,转载请标明出处。原文地址:http://blog.csdn.net/qq_35280514 https://blog.csdn.net/qq_35280514/article/details/51637920 ...

2019-06-22 11:14:47 377

转载 c++中可变参数

版权声明:本文为博主原创文章,转载请标明出处。原文地址:http://blog.csdn.net/qq_35280514 https://blog.csdn.net/qq_35280514/article/details/51637920 ...

2019-06-22 11:14:47 69

转载 c++中可变参数

版权声明:本文为博主原创文章,转载请标明出处。原文地址:http://blog.csdn.net/qq_35280514 https://blog.csdn.net/qq_35280514/article/details/51637920 ...

2019-06-22 11:14:47 135

转载 c++中可变参数

版权声明:本文为博主原创文章,转载请标明出处。原文地址:http://blog.csdn.net/qq_35280514 https://blog.csdn.net/qq_35280514/article/details/51637920 ...

2019-06-22 11:14:47 110

转载 c++中可变参数

版权声明:本文为博主原创文章,转载请标明出处。原文地址:http://blog.csdn.net/qq_35280514 https://blog.csdn.net/qq_35280514/article/details/51637920 ...

2019-06-22 11:14:47 110

转载 c++中可变参数

版权声明:本文为博主原创文章,转载请标明出处。原文地址:http://blog.csdn.net/qq_35280514 https://blog.csdn.net/qq_35280514/article/details/51637920 ...

2019-06-22 11:14:47 331

转载 c++中可变参数

版权声明:本文为博主原创文章,转载请标明出处。原文地址:http://blog.csdn.net/qq_35280514 https://blog.csdn.net/qq_35280514/article/details/51637920 ...

2019-06-22 11:14:47 117

转载 c++中可变参数

版权声明:本文为博主原创文章,转载请标明出处。原文地址:http://blog.csdn.net/qq_35280514 https://blog.csdn.net/qq_35280514/article/details/51637920 ...

2019-06-22 11:14:47 79

转载 c++中可变参数

版权声明:本文为博主原创文章,转载请标明出处。原文地址:http://blog.csdn.net/qq_35280514 https://blog.csdn.net/qq_35280514/article/details/51637920 ...

2019-06-22 11:14:47 151

转载 c++中可变参数

版权声明:本文为博主原创文章,转载请标明出处。原文地址:http://blog.csdn.net/qq_35280514 https://blog.csdn.net/qq_35280514/article/details/51637920 ...

2019-06-22 11:14:47 208

转载 c++中可变参数

版权声明:本文为博主原创文章,转载请标明出处。原文地址:http://blog.csdn.net/qq_35280514 https://blog.csdn.net/qq_35280514/article/details/51637920 ...

2019-06-22 11:14:46 216

转载 深入理解HTTP协议

来源:http://www.blogjava.net/zjusuyong/articles/304788.html深入理解HTTP协议1. 基础概念篇1.1 介绍  HTTP是Hyper Text Transfer Protocol(超文本传输协议...

2019-05-20 13:27:23 195

转载 socketaddr和socketaddr_in的区别于联系

socketaddr和socketaddr_in的区别于联系 struct sockaddr { unsigned short sa_family; /* 地址族, AF_xxx */ char sa_data[14]; /* 14字节的协议...

2019-05-20 10:08:34 1672

转载 socket中send和rev函数详解,

<div id="post_detail"> Socket send函数和recv函数详解 int send( SOCKET s, const char FAR *buf, int len, int flags ); 不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数据。客...

2019-05-20 09:38:59 1569

转载 socket编程中最常用的几个数据类型和转换函数

socket编程中最常用的几个数据类型和转换函数 高位字节优先和低位字节优先。Internet上数据以高位字节优先顺序在网络上传输,所以对于在内部是以低位字节优先方式存储数据的机器,在Internet上传输数据时就需要进行转换。第一个结构类型是:struct sockaddr 该类型是用来保存socket信息的 struct sockad...

2019-05-19 11:01:02 691

转载 socket函数详解

socket函数 SOCKET()我们使用系统调用socket()来获得文件描述符:#include<sys/types.h>#include<sys/socket.h>int socket(int domain,int type,int protocol);第一个参数domain设置为“AF_INET”。第二个参数是套接口的...

2019-05-19 10:28:48 2083

转载 网络编程(二)一些重要函数的理解

转自:http://blogold.chinaunix.net/u/4502/showart.php?id=13488服务套和客户机的信息函数1、字节转换函数     在网络上面有着许多类型的机器,这些机器在表示数据的字节顺序是不同的, 比如i386芯片是低字节在内存地址的低端,高字节在高端,而alpha芯片却相反. 为了统一起来,在Linux...

2019-05-17 20:13:57 152

转载 网络编程(一)

转自:http://blogold.chinaunix.net/u/4502/showart.php?id=13285初等网络函数介绍(TCP)及示例程序1、socket     int socket(int domain, int type,int protocol)     domain:说明我们网络程...

2019-05-17 20:10:23 69

转载 C++---常量成员函数、常量对象、常引用

当一个类的对象被定义为常量对象时,他的值经初始化后就不能再被修改常量成员函数:不能修改非静态成员变量的值,也不能调用其他非静态非常量成员函数,常量对象上可以执行常量成员函数,而不能执行非常量成员函数,也不能对常量对象的非静态成员变量进行修改;在一个类成员函数中,可以有两个成员函数,他们的参数个数和类型可以相同,但是一个常量类型,一个不是,这样算是重载,不算重复定义因为非常量对象上不能常...

2019-04-28 23:32:38 885

转载 智能指针

#include <iostream>#include <string>#include <cstring>#include <cstdlib>#include <cstdio>#include <cmath>#include <vector>#include <stack>#inclu...

2019-04-27 23:24:07 114

转载 智能指针

智能指针(smart pointer)的一种通用实现技术是使用引用计数(reference count)。智能指针类将一个计数器与类指向的对象相关联,引用计数跟踪该类有多少个对象共享同一指针。 每次创建类的新对象时,初始化指针并将引用计数置为1;当对象作为另一对象的副本而创建时,拷贝构造函数拷贝指针并增加与之相应的引用计数;对一个对象进行赋值时,赋值操作符减少左操作数所指对象的引用计数(如...

2019-04-27 23:17:28 137

转载 C++复制构造函数和赋值操作符的区别

转 C++复制构造函数和赋值操作符的区别 2014年12月24日 21:11:27 FlyingBird_SXF 阅读数:494 ...

2019-04-27 21:56:27 169

转载 TCP/IP网络编程之多进程服务端(二)

TCP/IP网络编程之多进程服务端(二) 信号处理本章接上一章TCP/IP网络编程之多进程服务端(一),在上一章中,我们介绍了进程的创建和销毁,以及如何销毁僵尸进程。前面我们讲过,waitpid是非阻塞等待子进程销毁的函数,但有一个不好的缺点就是要每隔一段时间判断子进程是否销毁,只有销毁完后才能执行父进程接下去的程序。这样显然会造成父进程一些资源上的...

2019-04-26 16:37:04 224

转载 TCP/IP网络编程之多进程服务端(一)

TCP/IP网络编程之多进程服务端(一) 进程概念及应用我们知道,监听套接字会有一个等待队列,里面存放着不同客户端的连接请求,如果有一百个客户端,每个客户端的请求处理是0.5s,第一个客户端当然不会不满,但第一百个客户端就会有相当大的意见了。为了要使得所有客户端都尽可能的满意,我们应采用并发服务端,使其同时向所有发起请求的客户端提供服务。而且,网络程...

2019-04-26 16:35:39 251

地震资料数字处理技术

地震资料数字处理,这是第二册,还有第一册,又需要的可以下载

2016-02-27

地震中的一些数学问题

一些地震勘探中可能会用的数学公式以及计算过程,有需要的可以看一下

2016-02-27

label和拓扑点

mapgis中如何生成label点和,拓扑重建。

2013-06-16

空空如也

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

TA关注的人

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