- 博客(35)
- 资源 (2)
- 收藏
- 关注
原创 牛客网 华为机试练习总结 --python
华为机试练习发现,主要是对字符串的各种操作:排序,去重,求长度这些主要涉及到的python(3.9)函数有:基础概念: 列表,元组,字典,集合 及其他们的常规操作(创建,添加,删除,插入,遍历,排序,指定位置删除,指定位置插入等)主要用的函数:输入函数 input() 输出函数 print() 遍历 for i in range() for i in [list/tuple/dic] while xx: 排序: 针对list 的 list.sort() ,注意该排序是...
2021-01-28 20:58:52
1483
1
原创 记录优秀的文章
介绍dhcp pxe,介绍说明的非常不错https://www.cnblogs.com/ssh-html/p/10369664.html
2021-01-05 17:46:38
181
原创 shell脚本 实用集合 - 持续更新,欢迎补充
1. 判断没有文件夹就创建if [ ! -d "$path" ]; then mkdir -p $pathfi
2020-12-18 11:19:50
277
原创 windows随记--mbr磁盘签名
学习背景:windows磁盘签名是windows系统在对硬盘做初始化时写入的一个标签,它是mbr扇区不可或缺的一个组成部分。window是系统靠这个签名来识别硬盘,如果硬盘上的签名丢失,Windows系统就会认为该硬盘没有初始化。扩展:硬盘挂载到Windows操作系统后,操作系统会读取该硬盘的mbr扇区及其磁盘签名,并将磁盘签名记录到注册表中。window注册表位置:HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices...
2020-12-07 21:33:26
5026
原创 企鹅龙drbl+再生龙clonezilla 自动化实践剖析
上篇文章中介绍了 drbl的一些学习方法,但是不够直观和通俗易懂。 这次呢,我把我目前学习到的经验和方法都分析出来。结合时间,让大家更易理解。方便大家后续学习和探索。在此阅读之前,需要了解的知识有:pxe,tftp,dhcp(网络启动相关的3个核心点),这3个点学要提前了解,不然后续比较难理解和把控流程。弄清楚这三个点后,基本上就知道网络启动的大概流程是怎么样的了。首先,我们先看下drbldrbl --Diskless Remote Boot in Linux ,它的介绍我不多讲,看官...
2020-11-13 18:28:41
2993
原创 drbl 深入研究
背景:从2018年开始,由于工作和自身喜号,就开始研究pxe启动相关的东西。然后研究到了drbl 企鹅龙。 主要用与批量系统安装,母盘制作和还原等。下面来介绍一些硬知识。企鹅龙drbl百度也好,谷歌也好,drbl搜索出来的基本上都是安装之类的,很少有详细介绍原理之类的,估计是使用的人比较少吧。所以,带着以前的pxe基础去看了drbl的官方文档。drbl原理和架构介绍 这里是drbl的官方说明这个对pxe部分和default文件查询顺序做了详细的介绍,可以根据该来做dhcp+pxe..
2020-09-16 22:00:52
808
原创 python 遇坑系列一 生成器generator中的坑
背景在联系pyhon基础时候,遇到一个百思不解的问题,于是扒拉了一下。廖雪峰官网python 高级特性-生成器 章节在课后联系 杨辉三角形过程中遇到的坑先看现象怎么和自己预期的不一样呢?难道自己抄的杨辉三角形定义都能出错? 于是我抱着怀疑的态度去打印了一下 triangles()完全没有问题呀? 怎么上面的运行结果全是最后一行,即第10行的呢?这么诡异!?(其实看到结果我心里已经预感到出问题的地方了,只是想去理清一下其中的逻辑,顺便加深一下印象,后面才能避免类似的坑)扒它的衣服看里面其
2020-09-12 03:37:26
1269
3
原创 shell脚本踩坑一
这种坑出现再什么情况?python,ruby,java等 远程登录到服务器上,执行shell脚本时。你会发现,python,ruby等远程登录执行时,脚本中的有的命令始终不会生效,但是通过终端接入,手动执行该脚本,脚本中的命令又是正常的。比如:shell片段while read linedo #统计进程的数量 count=`ps aux | grep $line | grep -v grep | wc -l` if [[ $count -gt 0 ]];then
2020-06-30 15:36:44
271
原创 pip源 推荐地址及修改
@[TOC]pip源国内常用的pip源地址(1)阿里云 http://mirrors.aliyun.com/pypi/simple/(2)豆瓣 https://pypi.douban.com/simple/(3)清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/(4)中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/(5)华中科技大学 http://pypi.hustunique.com/临时使
2020-06-09 10:27:20
921
原创 水贴—联通宽带
背景十几天前安装的联通100M宽带(为啥不安装电信的? 本来也打算弄电信宽带的,可是价格是真贵呀!),前天公寓楼里突然断了一次电,重新来电后,宽带就无法上网了(插拔光猫电源,重启光猫都试了,都没用)。刚好昨天(2019/06/01)六一儿童节,不重点是星期六,放假了。大晚上本来想撸一会的,可是没网(快气死了)。闲着也没事做,然后就怀着好奇心,自己家来查查原因吧,要相信自己,没有自己弄不好的...
2019-06-02 14:00:35
1501
1
原创 EFI简介
本文主要来自:数据恢复技术深度揭秘(第二版)文章目录1.EFI 简介2.EFI的命令行控制模式1.EFI 简介 Extesible Firmware Interface 简称EFI,其含义为“可扩展固件接口”,是由Intel公司推出的一种在未来的计算机系统中替代BIOS的升级方案。 BIOS的全称是Basic Input/Output System,中文名是基本输入输出系统。BIOS是...
2018-11-27 21:32:41
5049
原创 windows中动态磁盘卷种类介绍
文章目录简单卷跨区卷带区卷镜像卷raid-5简单卷构成单个物理磁盘空间的卷。它可以由磁盘上的单个区域或同一磁盘上连接在一起的多个区域组成,可以在同一磁盘内扩展简单卷跨区卷简单卷也可以扩展到其他的物理磁盘,这样由多个物理磁盘的空间组成的卷就称为跨区卷。简单卷和跨区卷都不属于RAID范畴。带区卷以带区形式在两个或多个物理磁盘上存储数据的卷。带区卷上的数据被交替、平均(以带区形式)的分配给这...
2018-11-22 22:44:42
2812
原创 C语言数据类型深度探测
文章目录C语言中的数据类型:学习数据类型的三个要素整数类型C语言中的数据类型:基本类型 – 整数类型– 浮点类型构造类型 – 数组类型 – 结构体类型 – 共用体(联合)类型指针类型空类型(void)学习数据类型的三个要素存储数据的宽度存储数据的格式作用范围(作用域)整数类型整数类型:char short int ...
2018-11-18 14:17:41
301
1
原创 SATA 3.0 中 6GB/s = 600Mb/s ,怎么来的?
接触的硬盘比较多,经常硬盘上看到 SATA6.0Gbps,到底是什么意思呢? 是硬盘的数据能达到6Gb/s吗? NO!!!查阅资料:(数据恢复技术深度揭秘 第二版 第二章) stata的数据传输速率,就串行通信而言,数据传输速率是指串行接口数据传输的实际比特率,SATA 1.0 的传输速率是1.5Gb/s(1.5Gbps),SATA 2.0 的传输速率是3.0G...
2018-11-09 22:26:30
13509
原创 C中的调用约定
常见的几种调用约定:调用约定参数压栈顺序平衡堆栈__cdecl从右至左入栈调用者清理栈(谁调用,谁做堆栈平衡,也称外平栈)__stdcall从右至左入栈自身清理堆栈 (函数内部进行堆栈平衡,也称内平栈)__fastcallECX/EDX传送前两个自身清理堆栈(函数内部进行堆栈平衡,也称内平栈)1、c,c++默认的调用约定int __cdecl...
2018-11-07 00:33:13
470
原创 C是怎么变成汇编的
文章目录C是怎么变成汇编的1、什么是裸函数?2、无参数无返回值的函数框架3、有参数有返回值的函数框架4、带局部变量的函数框架C是怎么变成汇编的C代码需要经过编译器编辑才能成为执行文件(二进制)。编译器是怎么做到的呢?C代码 --> 编译器语法检查 --> 编译器转成汇编 --> … --> 二进制文件在了解前,需要先了解下面的知识,自然就知道了1、...
2018-11-05 21:02:17
300
原创 pxe 部署系统分析
经过一段时间的初期探索,目前自动化刷机已经有了眉目(:clap:感谢参与的小伙伴 黄顺祥,栗超,龙浩)原理实现自动化刷系统,主要是依赖PXE什么是PXE呢?(百度来的)PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网...
2018-08-01 17:34:03
597
原创 jcc
JMPCALLreturnCMPTESTJMP其实不少跳转,本质是修改eip能修改eip mov eip,寄存器/立即数 简写为 jmp 寄存器/立即数CALLpushreturnpop eipCMPCMP r/m,rm/imm 两数进行相减,结果不保留,只是根据结果修改标志位TESTTEST r/m,r/m/imm 两个数进行与操作,结果不保留,只根据结果修改标志位 TEST
2017-03-09 22:56:03
957
原创 EFLAGS寄存器
进位标志CF(Carry Flag):如果运算结果的最高位产生了一个进位或借位,那么,其值位1 两个数相加,如果最高位向高位进位,结果忽略这个位,那么这个位要放到CF里面。Carry Flag,进位标志。 减法运算,如果最高位向高位借位,则CF位为1。 CF表示加满了之后,向高位进位,但是计算机限制宽度,没法表示,所以把进的这个位暂时放在标志寄存器里面的一个位CF,以后有待查证,减法同理。
2017-03-08 00:29:20
650
原创 通用寄存器
本学习过程参考滴水逆向第三期视频32位通用计算器工具DTDebug先了解两个硬件CPU CPU里提供的32位的容器又叫32位通用寄存器 特点:计算速度最快 确定:提供的容器有限,成本昂贵内存 特点:计算速度也很快,容量大32位通用计算器 寄存器 主要用途 编号 存储数据范围 EAX 累加器 0 0–0xFFFFFFFF ECX 计数 1
2017-03-07 01:18:29
694
原创 逆向-数据宽度与逻辑运算
数据宽度逻辑运算数据宽度数学上的数字,是没有大小限制的,可以无限大。但是在计算机中,由于受硬件的限制,数据都是由长度限制的,我们称为数据的宽度,超过宽度的数据会被丢掉两个本质:1.计算机啥都不认识,只认识0和1 2.如果你存的数超过了存储界限,计算机会毫不犹豫的扔掉–这也是数据宽度的本质除此以外,我们定义的无符号数、有符号数,完全是我们自己定义的,计算机根本不知道,它只知道0和1,以及存储
2017-03-06 23:50:02
422
原创 逆向学习 - 进制
常见进制进制的本质计算机为啥采用二进制数学计算常见进制十进制二进制十六进制 上面是最常见的进制。正是因为太常见,以至于打消了我们对它们的质疑。比如,1+1=2,我们都潜移默化的认为它是再正确不过了,但是事实真的是这样的吗?不!这根本不少进制的实质!我们得重新去认识它,质疑它!假如你以前没有背诵过十进制的加法表,十进制的乘法表,你还会做1+1 or 1*1吗?进制的本质在这之前我们
2017-03-06 00:51:25
485
原创 逆向学习--立意
逆向学习1. 我为啥要学习逆向毕业已经快一年了,在这一年里,我学到了些啥? ruby,测试技能,自动化,shell,autoit,bat,大概学会的就是这些。但是这些都是处于一个基础阶段,这就让我很迷了,总有一种有力使不出的感觉。广而不精!这是这种状态,让我感到很不安。于是,我想学一点有深度的东西,我想起了以前我的一个愿望,成为一个安全领域的专家。于是,我要去实现这个愿望!!逆向学习是实现这个愿望
2017-03-06 00:06:53
477
原创 ruby学习笔记-命名规范
使用同一的命名规则对于代码的维护和交流是非常有用的。下面就是ruby的基本命名规范(来自ruby元编程):名称的第一个字符显示这个名称如何被使用局部变量、方法参数和方法名称否必须以小写字母或下划线开始全局变量以美元符号$为前缀,实例变量以@符号开始,类变量以@@开始类名称、模块名称和常量都必须以一个大写字母开始
2017-01-17 15:24:39
797
原创 简单工具之 ---- IP地址快速修改脚本
离开校园已经有一段时间了。当真正工作之后才发现,在学校是真的适合搞研究,做自己喜欢方向的事。工作之后很多事情,忙和加班估计应该是我们这个行业的通病。 所以呢,必须得提高工作效率,才能有更多的时间去做自己喜欢的事情。能用2秒完成的事情坚决不用10秒。能用脚本干的事,坚决不用手动去改。 接下来就给点实在的。个人主机IP的快速修改脚本场景:经常需要更改IP,在静态和动态IP之间进行切换的场景平
2016-08-13 21:44:24
3792
转载 欢迎使用优快云-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-08-13 20:38:26
211
原创 静心,理清java知识结构
在一段时间的复习巩固基础(c语言深入学习,java学习)后,我笔试入围了一家心怡的公司,然后再在第一轮面试中,大约有10位同学吧来竞争这同一职位–java软件开发岗,其中不乏研究生。对于我本科毕业的还是很有压力的,因为我预计他们最多再这10位同学中挑选4人。上午面试完第一轮,说等通知下轮的面试,然后我右回到了学习的地方,继续看我的jdbc,然而却静不下心来。直到下午5:05分的时候接到电话,里面说叫
2015-10-24 11:45:47
565
原创 java 变量命名规则
从开始学习java,就觉得命名是个很简单的问题,记住命名规则就行了,实际上确实也是这样。但是,笔试题可不是这样,没有吃透这个点,你还真拿不准!经过多次的考试,我觉得有必要回头重新看下java变量的定义及命名规则 。可以由字母,数字,下划线,和 $ ;首字符不能是;不能使用保留字(int double break….)可以使用中文,但不推荐。java大小写敏感。public class
2015-10-18 14:44:45
506
原创 数据编码与精度问题(float)
上篇中提到了ieee编码并留了一个浮点型数据存储与精度丢失的问题。本以为这是一个特别高深的底层问题,但经过查阅资料后发现,这个问题其实很简单,了解两个知识点就能清楚到底是怎么回事了。知识点1: 首先让我们来复习一下整数转为二进制的过程例子:十进制数9转为二进制 商 余数 9/2 4 ... 1 4/2 2 ... 0
2015-10-02 00:06:44
938
原创 常量在计算机中的存储形式
首先要知道常量是什么,即常量的定义;然后再有对应的常量在计算机中的存储形式。常量定义 常量就是在程序运行时,不会被修改的量。类型有:整型,浮点型,字符型。存储形式其实就是在探究编码 整型是以补码形式转化为二进制代码存储在计算机中的 浮点型(实型)是以ieee754标准转化为二进制存储的 字符的本质也是以整型方式存储的int i = 8; //在计算机中定义一个整数i,赋值为8那么这个8
2015-09-26 21:37:00
2048
原创 进制与输出格式
二进制 B 八进制 O 十进制 D 十六进制 X各个进制之间的转换就不多说了。 #include <stdio.h>int main(){ int i=-858993460, j=0x1c; printf("十进制i=%d j=%d\n",i,j); printf("八进制i=%o j=%o\n",i,j); printf("十六进制i=%x j=%x\n",i,j)
2015-09-26 19:16:52
802
原创 C语言之变量默认值
变量第以后编译器给的未初始化变量的默认值//变量默认值详解#include <stdio.h>int j; //全局变量int main(){ int i; //局部变量 printf("全局未初始化变量:j=%d \n",j); //0 printf("局部未初始化变量:i=%d \n",i); //-858993460 return i;}
2015-09-26 17:55:11
2035
原创 文章标题
最近比较失落,因为4次校招的笔试都没能过!这些校招让我知道了要真的很牛逼,底层的基础必须非常的扎实。自从学了java,就很少接触指针啊,数据结构什么的。但很多企业、公司的笔试都是考的基础!所以我决定重新学一次C,我相信,在我有基础的前提下,学习时非常快的。加油!推荐学习视频:郝斌C语言视频教程http://pan.baidu.com/s/1sjsY08l喜欢这个视频的原因很简单,因为他分的很细,平
2015-09-26 17:37:02
264
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人