- 博客(69)
- 资源 (2)
- 收藏
- 关注
原创 C语言处理/proc/meminfo
这段代码演示了如何在C语言中处理/proc/meminfo中的信息,并不难,C语言中的字符串处理函数和文件读写也很强大,可以方便的用来处理文件和字符串static void parse_meminfo(unsigned long meminfo[MI_MAX]){ static const char fields[] ALIGN1 = "MemTotal\0" "MemFree\0" "MemShared\0" "Shmem\0" "Buffers\0" "Cached\0"
2021-10-17 10:10:32 538
原创 简单的C程序及其AT&T风格汇编代码分析
源代码:#include <stdio.h>int add(int x, int y){ return x + y;}int main(){ printf("hello world\n"); int c = add(156, 678); printf("%d\n", c); return 0;}汇编代码: .file "test.c" .text .globl _add .def _add; .scl 2; .type 32;
2021-09-06 17:58:04 159
原创 ssh使用教程
ssh基本原理和使用方法这篇文章介绍了ssh的基本原理和基本使用方法ssh登录远程主机的基本使用方法很简单,使用如下命令,其他详细的命令可以看上面的链接,一般用不到:1.使用目的主机IP登录,之后需要输入用户名和密码ssh 目的主机IP 例:ssh 192.168.15.1542.指定用户,之后仅需要user对应的密码ssh user@目的主机IP 例:ssh root@192.168.15.154ssh不输入密码登录在本地主机上使用ssh-keygen -t rs
2021-08-27 23:04:25 1587
原创 《Operating systems: Three Easy Pieces》第五章课后作业
5.1任务的代码片段如下,题目较为简单,主要是通过这个程序熟悉一下fork的用法和父子进程执行的一些相关信息。#include <stdio.h>#include <unistd.h>#include <stdlib.h>#include <string.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>int main()
2021-08-10 17:06:55 329
原创 给函数传递指针的指针 和 给函数传递指针 两种参数的不同和应用场景
在阅读一些C/C++源代码的时候不太理解给函数传递指针的指针的用法,在做了一些思考之后整理如下:指针解释在C/C++中指针变量同其他变量一样,也有自己的存储空间,不同的是指针变量的空间中存储的是另一个同类型变量的地址,更准确的说是一个整数值,表示指针指向的变量在虚拟地址空间中的存储地址。如下图所示,定义一个int型变量i和一个指向变量i的int指针ptr。ptr中存储的是一个整数值v_addr,在32位系统中是一个32位的整数;在64位系统中是一个64位的整数。v_addr表示变量i在虚拟地址空间中的
2021-06-20 00:02:41 201 3
转载 直观理解CPU、内存、硬盘之间的速度差异
这篇文章以CPU的速度为基准,计算了访问缓存、内存、SSD、磁盘、网络的速度。可以很直观的感受到这些设备速度的差异
2021-04-30 16:13:52 2419 1
原创 图中几个常见算法总结
事实上,无向图可以看成是一个特殊的有向图,因此它们的表示方法和相关的算法其实都是一样的。一、BFS这个是图BFS的模板,这个比较容易错误的一点是结点的已访问标记应该在入队时标记还是应该在出队时标记。正确的做法肯定是在结点要入队时就要做好标记,尽管队列中的元素还没有被访问,但是既然已经放到队列当中那必然会按照入队顺序访问到。每一个结点只能入队一次并且出队一次,如果在一个结点出队的时候才标记为已经访问,那么在队列中但还没有被访问到的那些结点有可能会多次入队,这样就会造成一个结点被访问多次的错误。尽管这是一
2021-04-13 16:18:38 164
原创 Linux系统Swap机制简介
本文内容1.什么是swap?2.为什么需要swap?3.要把交换分区设置为多大?1.什么是swap?swap空间(swap space)是硬盘上的一块区域。虚拟内存是由可访问的物理内存和swap space组成,也即swap space是虚拟内存的一部分。swap存储那些暂时不活跃的内存页面。当操作系统决定要给活跃的进程(应该是指申请物理内存的进程和新创建的进程)分配物理内存空间并且可利用的物理内存不足时会用到swap space。要清楚Linux中把物理内存的页面分为了两种类型匿名页和文件页。匿名页
2021-04-08 20:11:16 2800
原创 docker安装参考资料与自己的一些理解
官方Ubuntu安装文档镜像(Image):类似于虚拟机中的镜像,是一个包含有文件系统的面向Docker引擎的只读模板。任何应用程序运行都需要环境,而镜像就是用来提供这种运行环境的。例如一个Ubuntu镜像就是一个包含Ubuntu操作系统环境的模板,同理在该镜像上装上Apache软件,就可以称为Apache镜像。容器(Container):类似于一个轻量级的沙盒,可以将其看作一个极简的Linux系统环境(包括root权限、进程空间、用户空间和网络空间等),以及运行在其中的应用程序。Docker引擎利用容
2021-04-02 18:00:08 100
原创 FIO测试在不同内核IO参数配置下性能变化情况实验数据记录
主要调整的是bs、rw、iodepth、numjobs等几个参数,其他参数配置对测试性能影响不大在测试顺序读时,bs的大小影响IOPS:基本上bs增大一倍,IOPS就减小一倍。
2021-03-14 11:45:27 1451
原创 安装和Windows 10和ubuntu双系统和删除ubuntu的一次记录
详细的讲述了MBR bios和UEFI bios应该怎么安装单纯讲UEFI bios的情况下应该怎么安装配置良许Linux提供的一个博客,这个里面关于开机引导、easyBSD说的和前面一个有一点不一样,它使用easyBSD来设置了引导的问题,这里说了开机引导有可能直接进入windows,这一点和之前说的都不一样,,,这一篇也没有提到关闭boot secure的内容这篇教程里面写了怎么设置使用win来引导ubuntu以及在这种情况下后续删除ubuntu只需要删除ubuntu所在的分区,,,这一篇没有提到
2021-03-13 19:23:41 148
原创 Ext4文件系统的一些信息和其他文件系统相关
这篇文章讲了Ext4文件系统的磁盘布局,通过这篇文章明白了文件系统是安装在磁盘上的,每一个文件系统可能都有不同的磁盘布局。所谓格式化,一个重要的功能应该就是指让一个裸盘有某一个文件系统的磁盘布局。...
2021-03-08 11:33:07 76
原创 fio学习笔记_io子系统性能调优
fio是一个压力测试工具,主要用来测试磁盘的I/O性能。fio的官方文档和其他一些好用的文档如下:fio官方文档FIO测试工具使用指导,这一篇博客很顶,大多数参数都说的很详细-filename参数这个参数用于指定测试的设备名字或者文件名字。若为文件名,那就是要测试文件系统的性能;如果是设备名字,那就是要测试裸盘的性能。...
2021-03-06 22:15:24 1058
原创 这个代码块可以了解怎么在类内定义比较函数传给框架
class Solution {public: /* struct cmp{ bool operator()(const pair<int,int> &a, const pair<int,int> &b) { return a.second > b.second; } };*/ static bool cmp(const pair<
2020-12-16 15:51:37 84
原创 单调栈模板
//先实现一个单调栈来求解一个数组的问题 //找到下一个更大的那么栈是自底向上的单调递减栈,否则是单调递增栈 vector<int> findNextGreater(vector<int> &nums) { //这里实现的是下一个更大的元素,而下一个更下的元素仅仅把while循环的比较符号改为<=即可 //而如果是找前面的更大的,那仅仅把for循环的i变成从0递增就可以了 int size ...
2020-12-04 11:03:52 75
原创 C&&C++小知识点
在C语言中也有不少比较好用的函数比如:strchr(str, ch)就是在str字符串里面寻找ch第一次出现的位置,有ch返回对应指针,否则返回NULL//比如想要把一个字符串中的两个整数转换成真整数可以这么干char *str = "123,456";int n1, n2;char temp[10];char *p = strchr(str, ",");*p = '\0';strcpy(temp, str);n1 = atoi(temp);n2 = atoi(p+1);..
2020-11-29 14:54:57 109
原创 关于CPU上多进程执行任务的一个巧妙的思考
把自己想象成一个CPU,把自己所干的每一个任务想像成一个进程,那么关于CPU和操作系统的很多内容就可以理解的透彻。当让要注意CPU只会取指令、执行指令,它不知道进程、线程之类的概念,这都是操作系统层面的,关于CPU的调度算法也是操作系统来做的。比如本地主机的一个进程向远程服务器发起一个文件请求,然后服务器返回指定文件。这个过程与自己在淘宝上下订单、然后卖家发货的模型几乎是一样的。那自己下完订单该干嘛干嘛,CPU也不能就傻傻的在那等着数据就绪,所以它就会被调度去执行别的进程。...
2020-11-22 13:45:13 252
原创 二叉树遍历顺序与方法小结
对于二叉树的深度优先遍历,不管是前序、中序还是后序,都可以把递归写成迭代的形式。用栈来做辅助结构,前序遍历在转成迭代时,是在把当前元素入栈时就处理;中序遍历是在当一个元素出栈的时候才做一个处理。套路都是相似的,在一个大循环里面,首先是一个元素入栈的小循环,然后是一个处理和转换当前根节点的操作。二叉树三种迭代方式的详细解释与实现...
2020-11-03 10:33:37 335
原创 关于VMware三种网络连接模式的一些解释和DNS的详细解释的博文链接
主要是收集一些帮助自己解决过这方面问题的链接,都是写的很不错的文章,能够帮助理解一个网络拓扑图理解三种模式主要是有NAT的详细网络拓扑图这一篇是一个大概的介绍,也很不错
2020-10-23 13:06:59 139
原创 十进制转换为其他进制的原理解释&一些小知识点的思考
这个是百度百科的一个解释,是解释将一个十进制数转化为其他进制数,比如二进制和八进制的原理的解释
2020-10-19 16:08:24 726
原创 归并排序与快速排序的一个实现与理解
自己实现的一个快速排序和归并排序,并且用注释的方式写下了自己的理解。算是做一个笔记#include <iostream>#include <cstdio>#include <vector>#include <cstdlib>#include <ctime>using namespace std;//先写归并排序,下面这两个函数都可以可以通过传入回调函数来定制排序规则//归并这个过程里面两个数组的索引起始位置和终止位置很重要,.
2020-10-18 21:55:11 254
转载 反向传播算法的一个直观的表达
记录一个英文版反向传播算法的直观和详细的表达:http://galaxy.agh.edu.pl/~vlsi/AI/backp_t_en/backprop.html
2020-06-01 16:42:00 132
原创 在Ubuntu18.04系统中配置完全分布式Hadoop集群
前言:我自己比较喜欢使用Ubuntu,因此就使用它来配置Hadoop集群。我用VMware创建了三个虚拟机将其作为Hadoop的三个节点。因为我自己在看博客的时候,踩了很多坑,有一些博客会有错误的地方,或者说的不够详细,让人不知如何操作,因此我会说的尽量详细。因此可能废话比较多,但绝对保证能正确安装,其实本文也适用于多台公网上的服务器配置集群。如果在配置好之后启动时出现了问题,可以去Hadoop安装文件夹的logs目录下查看对应的日志文件,在其中找到ERROR行看看是什么原因,能帮助解决问题。因为.
2020-05-24 00:09:18 1800 7
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人