语言语法、函数库、LINUX命令
文章平均质量分 57
1.语言语法积累:C++、SHELL等;
2.库函数掌握:STL、BOOST等;
xushuilong
这个作者很懒,什么都没留下…
展开
-
基于A星算法的拓扑地图和栅格地图实现
基于A星算法的栅格地图和拓扑地图原创 2023-01-06 12:53:46 · 744 阅读 · 0 评论 -
自定义bash命令
自定命令,所有用户,永久生效vim /etc/bashrc...source /etc/bashrc自定命令,当前用户,永久生效vim ~/.bashrc...source ~/.bashrc自定命令,当前终端,临时生效alias mytest= 'chmod 777 tesh.sh && ./test.sh'取消自定命令unalias mytest...原创 2020-09-01 20:18:45 · 671 阅读 · 0 评论 -
流量监控脚本net_monitor.sh
#!/bin/bash ethn=$1 while truedo RX_pre=$(cat /proc/net/dev | grep $ethn | sed 's/:/ /g' | awk '{print $2}') TX_pre=$(cat /proc/net/dev | grep $ethn | sed 's/:/ /g' | awk '{print $10}') sleep 1 RX_n原创 2020-08-24 23:22:27 · 799 阅读 · 1 评论 -
计时器C++
#pragma once#include <chrono>class CountTime {private: std::chrono::steady_clock::time_point beginTime;public: CountTime(){ begin(); } ~CountTime(){ } inline void begin(){ beginTime = std::chrono::steady_clock::now(); } inline void restart(原创 2020-08-16 15:25:59 · 127 阅读 · 0 评论 -
配置文件读写:ConfigFile.hpp(支持无段名的配置项)
支持无段名的配置项#ifndef __CONFIGFILEINI_H_#define __CONFIGFILEINI_H_#include <unordered_map>#include <fstream>#include <string>#include <vector>#include <sstream>#include <memory>#include <mutex>#define CONF_DEF原创 2020-08-16 15:25:10 · 430 阅读 · 0 评论 -
python压缩、解压文件
python压缩、解压文件#!/usr/bin/env python3# coding: utf-8import os, tarfiledef make_targz(output_filename, source_dir): """ 一次性打包目录为tar.gz :param output_filename: 压缩文件名 :param source_dir: 需要打包的目录 :return: bool """ try: wit转载 2020-08-16 08:13:04 · 126 阅读 · 0 评论 -
自制GDB使用教程
GDB使用教程参考文档:https://www.cnblogs.com/liangyc/p/11631823.html文章目录GDB使用教程开始调试设置断点: `break`或`b`删除断点: `delete`或`d`禁用/启用断点设置监视点查看断点/监视点信息查看代码: `list`或`l`打印变量信息: `print`或`p`查看调试信息: `info`或`i`查看变量的类型查看内存: `examine`或`x`流程控制多线程调试: `thread`或`t`查看堆栈帧: `backtrace`或原创 2020-07-26 23:16:22 · 264 阅读 · 0 评论 -
GIT自学教程
自制GIT教程[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-86LPN4dJ-1594375264038)(C:\Users\x30006331\AppData\Roaming\Typora\typora-user-images\image-20200709145833887.png)]git clonegit addgit commitgit checkout例1:git checkout -- readme.txt解释:将readme.txt文件在工作原创 2020-07-12 00:01:18 · 403 阅读 · 0 评论 -
线程安全队列和线程安全MAP
//ThreadsafeQueue.h#ifndef COMMON_THREADSAFEQUEUE_H#define COMMON_THREADSAFEQUEUE_H#include <queue>#include <memory>#include <mutex>#include <condition_variable>#include <chrono>#include <vector>// 调用等待函数时的返回值原创 2020-06-25 22:16:39 · 181 阅读 · 0 评论 -
字符串处理相关函数
字符串处理相关函数//删除字符串开头的空格void trim_left(string & str){ auto it = std::find_if_not(str.begin(), str.end(), isspace); str.erase(str.begin(),it );}//删除字符串结尾的空格void trim_right(string & str){ while (std::isspace(str.back())) { str.pop_back();原创 2020-06-15 22:57:41 · 127 阅读 · 0 评论 -
物理内存和虚拟内存
物理内存和虚拟内存 我们知道,直接从物理内存读写数据要比从硬盘读写数据要快的多。因此,我们希望所有数据的读取和写入都在内存完成,而内存是有限的,这样就引出了物理内存与虚拟内存的概念。 物理内存就是系统硬件提供的内存大小,是真正的内存。相对于物理内存,在linux下还有一个虚拟内存的概念,虚拟内存就是为了满足物理内存的不足而提出的策略,它是利用磁盘空间虚拟出的一块逻辑内存,用作虚拟内存的磁盘空间被称为 交换空间(Swap Space)。 作为物理内存的扩展,linux会在物理内存原创 2020-06-14 21:28:05 · 2064 阅读 · 0 评论 -
进程调度 [转载]
进程调度 [转载]调度程序复杂决定哪个进程投入运行,合适运行以及运行时长。调度程序可看做在可运行态进程之间分配有限的处理器时间资源内核子系统。只有通过调度程序的合理调度,系统资源才能最大程度地发挥作用,多进程才会有并发执行的效果。1.多任务多任务就是操作系统能同时并发地交互执行多个进程。实际上是使多个任务处于阻塞或睡眠状态,这些任务位于内存,但是并不处于可运行状态,知道某一时间发生。Linux系统中往往有多个程序在内存,但是仅有一个处于可运行状态。多任务系统划分为两类:抢占式和非抢占式。Linux采转载 2020-06-14 21:25:52 · 102 阅读 · 0 评论 -
进程空间简介
进程空间简介进程空间分为:内核空间和用户空间。进程空间的分布如下图所示。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uAqqeQex-1592141032908)(C:\Users\36262\AppData\Roaming\Typora\typora-user-images\image-20200603162443715.png)]32位windows下,一个进程空间4G:内核占2G,用户占2G。一个线程默认栈是1M,所以一个进程最大开2048个线程。当然内存原创 2020-06-14 21:24:24 · 2512 阅读 · 0 评论 -
进程管理[转载]
进程管理[转载]进程是操作系统的基本概念,本节主要总结Linux内核如何管理进程:进程在内核中如何创建,消亡。1.进程与线程进程是处于执行期的程序,但不仅包含可执行的程序代码,还包括其他资源:打开的文件、挂起的信号、内核内部数据、处理器状态、一个或多个具有内存映射的内存地址空间和执行线程以及存放全局变量的数据段等。执行线程,简称线程,是进程中活动的对象。拥有独立的程序计数器、进程栈和进程寄存器。**内核调度的对象是线程而不是进程,**在Linux中线程是一种特殊的进程。2.进程描述符内核把进程的转载 2020-06-14 21:23:43 · 71 阅读 · 0 评论 -
c语言string.h中的函数详解
linux kernel code : kernel/lib/string.cstrsep,strtok,strchr ,strstr …PS:本文包含了大部分strings函数的说明,并附带举例说明。本来想自己整理一下的,发现已经有前辈整理过了,就转了过来。@函数原型: char *strdup(const char *s)函数功能: 字符串拷贝,目的空间由该函数分配函数返回: ...原创 2019-06-22 20:46:48 · 4988 阅读 · 0 评论 -
常用STL算法
常用STL算法1、概述STL算法部分主要由头文件<algorithm>,<numeric>,<functional> 组成。要使用 STL中的算法函数必须包含头文件<algorithm>,对于数值算法须包含 <numeric>,<functional>中则定义了一些模板类,用来声明函数对象。算法由模板函数体现,这些函数不是容器类的成员函数,是独立的函数,它们可以用于STL容器,也可以用于普通的C++数组等。<function原创 2020-05-29 21:36:43 · 475 阅读 · 0 评论 -
valgrind工具的使用
一、valgrind简介Valgrind是一款用于内存调试、内存泄漏检测以及性能分析、检测线程错误的软件开发工具。Valgrind 是运行在Linux 上的多用途代码剖析和内存调试软件。主要包括Memcheck、Callgrind、Cachegrind 等工具,每个工具都能完成一项任务调试、检测或分析。可以检测内存泄露、线程违例和Cache 的使用等。Valgrind 基于仿真方式对程序进行调试,它先于应用程序获取实际处理器的控制权,并在实际处理器的基础上仿真一个虚拟处理器,并使应用程序运行于这个虚拟处原创 2020-05-29 21:35:54 · 389 阅读 · 0 评论 -
std::promise介绍及使用
[C++11]std::promise介绍及使用一、std::promise介绍std::promise (#include <future>)是C++11并发编程中常用的一个类,常配合std::future使用。其作用是在一个线程t1中保存一个类型typename T的值,可供相绑定的std::future对象在另一线程t2中获取。二、代码示例:下面我们通过几个简单小例子逐渐深入了解std::promise的使用方法。#include <iostream>#includ原创 2020-05-29 21:34:27 · 527 阅读 · 0 评论 -
Shell脚本编写的基础知识
一、Shell简介Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 编程跟 JavaScript、php 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。实例如下:#!/bin/bashecho "Hello World !"#! 告诉系统其后路径所指定的程序即是解释此脚本文件的 Shell 程序二、Shell变量定义变量your_name="runoob.com"原创 2020-05-29 21:33:13 · 415 阅读 · 0 评论 -
linux文本分析工具之`awk`
linux命令之awk一、awk的功能awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在对数据进行分析处理时,显得尤为强大。简单来说awk就是把文件逐行的读入,以指定的分隔符(默认为空格)将每行分成若干个field。然后可以通过编写各种逻辑,对这些field进行处理。实际上 awk 的确拥有自己的语言: AWK 程序设计语言。它允许你创建简短的程序,这些程序可以实现:读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。二、awk的命令格式原创 2020-05-29 21:27:12 · 244 阅读 · 0 评论