- 博客(69)
- 收藏
- 关注
原创 阿里云搭建samba
当然现在直接用ip远程连接阿里云服务器是不行的, samba服务用的端口是445和139, 因为之前受到过445劫持攻击, 即使你把阿里云的安全组出入口都配置了445和139端口, 你windows下telnet服务器端口也是访问不到的。公司里用映射网络驱动器, 把远程服务器的文件夹挂载在本机进行, 文件的传输就很方便, 那就自己电脑里也搞一下, 顺便做个记录。需要服务器下重新配置samba的端口, 然后windows下进行端口转发。按照第一个参考在服务器中安装启动samba服务, 配置对应的文件。
2024-05-31 00:02:56
717
原创 阿里云Centos7下编译glibc
INSTALL 里要求4.0以上, 更新make, 并且需要把make连接到/usr/bin/目录下。不用配置路径, 在运行…/configure前临时export下 LD_LIBRARY_PATH。其他看INSTALL, 但有些版本也不易太高。binutils 版本不匹配导致。, 替换两个文件解决。更新binutils。
2024-04-15 22:08:22
997
1
原创 函数调用指令, 返回机制分析(x86_64)
leaveq 返回到 rbp被main_rbp覆盖, retq 跳转。外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传。pop后, 从栈中弹出之前的detail_rbp ,把rbp 覆盖。add参数a 和 b 在这里多复制了一遍, 可以引出右值引用。把寄存器中的值放到main的自动变量中。防止自动变量消失, 要存到寄存器。把返回的函数值赋值到自动变量中。// 为什么不申请空间?retq,跳转回返回地址。
2023-11-06 18:35:36
251
原创 Intel架构的基本知识
64位模式下, 通用寄存器在处理32位操作时, 使用EAX/EBX/ECX/EDX/EDI/ESI/EBP/R8D ~ R15D 寄存器。字节序根据存储的方向不同, 分为大端字节序(big-endian) 和 小端字节序(little-endian)字节(8bit), 字(16bit), 双字(32bit), 四字(64bit), 双字(128bit)处理64位操作时, 使用RAX/RBX/RCX/RDX/RDI/RSI/RBP/RSP/R8~R15。对比32位寄存器, 64位支持的地址空间为2。
2023-09-24 21:46:06
474
原创 获得进程的内核转储core
修改/etc/sysctl.confkernel.core_uses_pid = 0 // 有问题?运行sysctl -p让新增设置生效, 再运行./main。
2023-09-17 23:47:21
174
原创 GDB用法(二)
不带参数的 until命令,可以使 gdb 调试器快速运行完当前的循环体,并运行至循环体外停止,且只能执行好循环体尾部(最后一行), 才会发挥最后, 比如for循环, 第一遍until类似于next, 执行完第一遍, 要执行第二遍的时候, 再执行until, 当前循环体直接运行到完。clear和delet区别在于clear不根据断点编号删除, 根据位置删除, detete只能根据断点编号删除。dis 断点编号 // 禁用编号断点, 断点编号可以是多个。指定的断点只能启用一次, 进入后, 就删除这个断点。
2023-09-03 23:07:45
118
原创 GDB用法(一)
/ F为前面显示变量中的格式(x, d, u, o, t, a, c, f, s, i)后面加次数是指定次数忽略断点, c 5则5次遇到断点不停止, 第6次遇到断点时才暂停执行。watch [options] // 表达式发生变化时暂停运行。跳过了参数0, 参数1,参数2, 3次断点, 第4次断点时暂停执行。在运行时, 进入断点后, 使用偏移量, 对断点行号加/减多少行。awatch // 表达式被访问, 改变时暂停运行。rwatch // 表达式被访问时暂停运行。
2023-08-28 00:15:48
270
原创 C++基础 虚函数
析构函数需要为虚函数, 默认静态联编, delete会调用指针类型的析构函数, 释放派生类对象中基类指向的内存, 不会释放派生类指向的内存。析构函数时虚的, 则会先调用对象析构函数先释放派生类指向的内存, 再调用基类析构函数释放基类指向的内存。友元不能是虚函数, 友元不是类成员, 只有成员才能是虚函数, 可以用过友元函数使用虚成员函数来解决。派生类有两个虚函数表, 根据继承先后排列, 派生类的虚函数添加到第一个继承基类的虚函数表中。会发现同一类的对象用的虚函数是相同的, 都指向一个指针。
2023-04-28 17:01:37
1311
原创 C++基础 类的自动转换和强制类型转换
只有一个参数的类构造函数 用于类型于参数相同的值 -> 类类型, 构造函数声明中使用explict可防止隐式转换, 只允许显示转换转换函数是特殊的类成员运算函数, 可将 类 -> 其它类型, 是类成员, 没有返回值, 没有参数, 名为operator typeName(), C++11可以用explict防止隐式转换, 只允许显示转换。
2023-04-27 12:08:43
834
原创 CentOS8换yum源,解决Failed to download metadata for repo ‘AppStream’问题
解决Failed to download metadata for repo ‘AppStream’问题
2023-01-11 17:54:24
303
原创 windows下Go安装环境
参考gRPC框架学习:5、 go+gRPC+proto详细使用实例设置环境go env -w GOPROXY="https://goproxy.cn"go env -w GO111MODULE="auto"设置环境变量GOPATH: 指你项目路径GOROOT: 指的是go安装路径重启电脑1. 安装protoc根据操作系统具体安装:https://github.com/protocolbuffers/protobuf/tags2. 安装protoc-gen-gogo inst
2022-05-02 20:41:48
2551
原创 阿里云Centos 下载 GDB
前言在阿里云服务器中想调试工程, 发现没有gdb, 记录下遇到的坑下载gdb镜像库http://ftp.gnu.org/gnu/gdb/wget http://ftp.gnu.org/gnu/gdb/gdb-8.3.tar.gz解压文件配置编译安装配置环境遇到的问题在make install的使用缺少makeinfo命令网上的解决方案yum install -y texinfo我的服务器始终找不到的这个软件包, 更新了yum也没用, 难受下载配置texinfo镜像库
2022-01-18 22:19:11
978
转载 Docker 基础入门
参考【狂神说Java】Docker最新超详细版教程通俗易懂前言记录下笔记, 之后好复习Docker安装Docker的基本组成镜像(image):Docker镜像就好比是一个模板, 可以通过这个模板创建容器服务, tomcat镜像 —> run —> tomacat01容器, 通过这个镜像可以创建多个容器(最终服务运行或者项目运行就是在容器中)容器(container):Docker利用容器技术, 独立运行一个或者一组引用, 通过镜像来创建启动, 停止, 删除, 基础命令目
2021-10-01 21:00:02
485
原创 python pillow 把图片切成拼图块
契机:【Unity】实现拖拽功能并制作一个拼图游戏当我看到这个视频里的素材, 很馋, 但是原作者也没有发素材文件, 只能自己弄素材了, 3D就直接pass了, 不熟和学习成本过高, 那就2D的来, 目的是脚本文件可以批量把照片分隔成拼图块, 根据自己熟悉的语言, c++ opencv 配置啥的太麻烦了, 简单的就选择python分解需求最简易的矩形ROI分割(剪裁),其本质是多维数组(矩阵)的切片1. 分隔成n*m个方块2. 拿出一个方块, 获取左右方块 之间的中心圆心坐标, 还有上下方块
2021-09-06 15:48:12
1655
原创 阿里云Centos下安装配置gcc低版本
参考:升级GCC版本到8.3(多GCC版本共存)安装GCC-8.3.0及其依赖自己编译gcc遇到的小问题cannot find crt1.o前言:工作环境下, 升级了库, 因为对编译器版本有要求, 所以需要手动安装下, CentOS yum 不能直接下载对应版本的gcc, 比起Ubuntu还是麻烦不少下载gcc镜像库:http://mirrors.nju.edu.cn/gnu/gcc/gcc-8.3.0/github:https://github.com/gcc-mirror/gccg
2021-08-27 07:59:18
1616
原创 C++基础 优先队列
cppreference.com文档 container/priority_queue注意:优先队列 自定义顺序 和 sort 自定义顺序有不同优先队列compare 默认是从大到小, 但是使用的less, sort 则是greater, 原因在于优先队列的输出
2021-07-06 14:20:07
99
原创 Unity 协程demo -实现中毒效果
参考:Unity脚本的生命周期C# 协程 在 Unity中的应用[中文字幕]角色UI血条以及被击中后的“掉血”缓冲效果(包括:敌人简单AI-巡逻或射击)用协程完成中毒需求按下空格, 进入中毒, 立马扣除20血量, 每秒5滴血, 持续3秒(务必看完参考)代码using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class HpMa
2021-03-26 10:47:45
560
1
原创 DFS实践 - 简单版基础麻将胡牌所有可能
参考回溯算法团灭排列/组合/子集问题回溯算法最佳实践:合法括号生成麻将胡牌麻将的牌, 出去春夏秋冬, 基本牌136张颜色\值0x010x020x030x040x050x060x070x080x090x100x11/一万0x12/二万0x13/三万0x14/四万0x15/五万0x16/六万0x17/七万0x18/八万0x19/九万0x200x21/一筒0x22/二筒0x23/三筒0x24/四筒0x25/五筒0x26/六筒0x2
2021-02-22 22:12:59
557
原创 vscode windows下配置 cmake
参考:建议先看官方在看博客官方文档(虽然是对linux, windows下也适用)VS Code下 cmake 配置C++环境(windows )下载地址:CMake 官方下载地址补充:vscode 插件下载官方文档的基础上可以增加CMake, 在写CMakeList.txt 文件的时候给提示下载CMake 版本先不要下载最新的3.18.2, 我在编译的时候遇到过问题 "cmake-file-api 的代码模型版本(2.1)不是预期版本。应为 (2.0)。IntelliSense 配置可
2020-09-09 16:12:05
960
原创 vscode windows下 配置c++
参考:官方文档看官方文档足矣补充:下载Mingw-w64不要用在线下载安装程序, 直接下载压缩文件, 手动放入windows Path环境变量, 因为下载的好慢好慢sjlj 和 seh 区别(个人认为比较易懂):sjlj,seh,dwarf是什么东西下载解压后, 放到windows环境变量...
2020-09-09 10:44:25
257
原创 LeetCode #121 买卖股票的最佳时机
题目地址买卖股票的最佳时机买卖股票的最佳时机给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。注意你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖...
2020-03-10 16:48:35
108
原创 LeetCode #217 只出现一次的数字
题目地址只出现一次的数字只出现一次的数字给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4思路了解异或操作1 ^ 0 = 11 ^ 1 = 00...
2020-03-05 17:56:26
114
原创 LeetCode #189 旋转数组
题目地址旋转数组旋转数组给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。示例 1:输入: [1,2,3,4,5,6,7] 和 k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,2,3,4]示例 2:输入: ...
2020-03-05 17:47:28
141
原创 LeetCode #26 从排序数组中删除重复项
从排序数组中删除重复项给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。...
2020-03-04 15:59:12
137
原创 C++基础 数组(三)
参考C++ Primer Plus (第6版)前言了解了数组的使用,会发现数组有时候使用会很麻烦而且不安全,所以需要替代品,更加安全,方便的模板类替代品vectornew 创建动态数组的替代品包含头文件 #include <vector>优点:动态数组,自动new,delete,运行阶段设置对象长度缺点:效率比数组低array长度固定的数组,静态分配比数组更加方...
2020-02-26 15:54:14
147
原创 C++基础 数组(二)
参考C++ Primer Plus (第6版)函数与数组数组作为函数参数1. 一维数组作为形参2.二维数组作为形参数组作为函数的返回值替换
2020-02-26 15:18:21
182
1
原创 C++基础 数组(一)
参考总结C++ Primer Plus (第6版)前言:语言多了,经常搞混,工作都用vector替代,偶尔用的时候会忘记点啥,主要是二维数组, 再加指针,记录下,方便温习数组数组是一种数据格式,能存储同一类型的值,每个值都存储在一个独立的数组元素中,计算机内存中依次存储数组各个元素定义初始化一维数组定义typeName arrayName[arraySize] short m...
2020-02-25 17:53:59
286
原创 虚拟机VMware的网络适配
虚拟机3种连接方式桥接: 虚拟机利用的真实网卡跟本机通信,选择桥接,设置跟本机同一个网段的ip地址,DNS,网关,也可以访问局域网内同网段的机子,但是会占用一个网段的ip,会出现ip冲突(跟真正的电脑一样)nat: 虚拟机会通过VMnet8虚拟网卡,并且当我们的计算机联网时候,虚拟机也能联网,但不用占用真实网段地址host-only: 虚拟机通过VMnet1虚拟网卡并且只能与我们的计算机通信...
2019-12-13 14:44:57
331
原创 vscode 配置 Remote-SSH
参考官方文档ssh-copy-id插件window下生成ssh,配置ssh config详细看多个ssh配置管理配置完就是这样生成的.pub公共密钥发送到要连接的服务器ssh-copy-id api 使用见参考port 为 22 可以不写-pssh-copy-id -i C:/Users/Administrator/.ssh/id_rsa_company.pub -p...
2019-11-07 16:27:45
7806
原创 vscode 配置 Markdown
参考学习markdown中文文档pandoc markdown转换各种格式工具,vscode中前言用Markdown 写文档,不局限于博客,再能转成html,那可是最好不错插件1. Markdown All in One (有一键能生成html基本上功能都有)2. Markdown Preview Github Styling(preview 的展示更好看点)3. docs-m...
2019-10-31 17:54:51
1061
原创 多个ssh配置管理
参考:ssh_config— OpenSSH SSH客户端配置文件问题:git 需要连着多个代码托管平台,一个是gitlab, 一个是 github解决:创建ssh调过,详细参考Windows10下SourceTree配置带密码短语的ssh中遇到的问题1. 在ssh生成地址C:\Users{当前用户}.ssh中新增config详细的配置参数看参考2. 在SourceTree中添...
2019-10-14 15:37:23
1119
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人