
学习笔记
文章平均质量分 74
enough_time
这个作者很懒,什么都没留下…
展开
-
leetcode之动态规划
动态规划原创 2022-11-23 22:13:46 · 178 阅读 · 0 评论 -
密码学---流密码
流密码流密码的基本思想基本概念同步流密码有限状态自动机密钥流产生器线性反馈移位寄存器线性反馈移位寄存器的一元多项式表示‘m序列的伪随机性m序列密码的破译非线性序列非线性序列常用的非线性序列生成器1.Geffe序列生成器2.JK触发器3.Pless生成器4.时钟序列生成器流密码是按单个字符组个进行加密的密码学。流密码的基本思想流密码的基本思想是利用密钥k产生一个密钥流z=z0z1z2…,并使用如下加密规则对明文串x=x0x1x2…加密,得到加密后的密文y=y0y1y2…=Ez0(x0)Ez1(x1)…。原创 2021-09-17 13:26:08 · 6978 阅读 · 0 评论 -
编译原理--词法分析器
编译原理--词法分析器词法分析器的生成正规式和正规集NFA向正规式的转换正规式向NFA的转换有限自动机确定有限自动机DFA的化简非确定有限自动机两者区别NFA向DFA的转化词法分析器的生成词法分析的任务就是从左至右逐个地对源程序进行扫描,产生一个单词符号(由单词种别,单词自身的值构成)词法分析器是编译过程中词法分析阶段使用的工具。该工具的生成需要依靠正规式和有限自动机。其具体步骤如下:第一步:对照语言的词汇表(即正规集)写出各类单词的正规式第二步:利用正规式到NFA的转换算法构造识别所有单词的N原创 2021-03-16 20:32:51 · 1782 阅读 · 0 评论 -
计算机原理--寻址方式
计算机原理--寻址方式立即数寻址寄存器直接寻址寄存器间接寻址存储器直接寻址存储器间接寻址偏移寻址相对寻址基址寻址变址寻址基址寻址和变址寻址的区别堆栈寻址复合寻址寻址方式的目的是用来找操作数的物理地址。由于指令中地址码的位数有限,因此不建议直接在地址码中存放操作数的物理地址(会导致内存中的很多空间表示不了)指令寻址一般是通过程序计数器(PC)去累加寻找指令的地址,对于某些特殊情况而言,跳转指令的地址就需要和操作数寻址一样了。因此我们一般说的寻址是指操作数寻址基本寻址方式分为立即数寻址、寄存器直接寻址、寄原创 2021-03-15 13:59:37 · 5805 阅读 · 0 评论 -
编译原理--语法分析
编译原理--语法分析语法分析是编译的第一步,其有关的基本概念如下:闭包和正规闭包的区别在于当V不包含空字时,正规闭包比闭包少一个空字上下文无关法的表示方法:乔姆斯基形式语言体系,把分为分为四种类型:0,1,2,3型。其区别在于产生式的不同0型的描述能力最强,3型的最弱。现今的程序设计语言,在编译过程中,仍然采用上下文无关法去描述其语言结构(因为上下文无关法是最成熟的表示方法),不能用上下文无关法描述的语法内容放在语义分析去进行...原创 2021-03-10 15:50:30 · 3393 阅读 · 0 评论 -
计算机原理--计算机组成、程序执行过程、性能评价
计算机原理计算机组成程序的执行过程计算机性能评价Amdahl定律计算机组成现代计算机大多采用冯诺依曼的体系结构,有一些非冯诺依曼的体系结构,如量子计算、神经网络、基因算法等冯诺依曼的体系结构中计算机由5大部件组成:1.运算器:进行算数运算和逻辑运算,由寄存器和运算器组成2.控制器:控制程序的运行,协调各个部件的工作3.存储器:存放数据、运行程序和中间结果,由记忆元件和电路组成4.输入设备:将输入的内容转换成计算机能够识别的格式5.输出设备:将计算机的语言转换成用户能够识别的格式其框架图如下原创 2021-03-10 15:48:13 · 347 阅读 · 0 评论 -
操作系统逻辑结构
操作系统逻辑结构操作系统逻辑结构的种类操作系统最基本的硬件中断机制中断作用相关概念中断响应过程操作系统逻辑结构的种类1.整体式结构以模块为单位构建。特点如下:1.模块设计、编码和调试相互独立,能够做到并行开发2.模块调用自由3.模块之间的通信多以全局变量进行4.模块之间的调用较困难2.层次式结构所有功能模块按照调用次序排成若干层,相邻层间只有单向依赖和单向调用分层原则:与硬件有关的放在最底层,外部特性的放在最外层特点:结构清晰,避免循环调用;整体问题局部化,系统的正确性容易保原创 2021-03-02 18:53:31 · 521 阅读 · 0 评论 -
编译原理概述
编译原理概述编译程序的分类解释程序和编译程序的区别编译程序的工作过程编译程序的结构编译程序是等价地将高级语言程序装换为低级语言程序(如汇编语言或机器语言程序)的程序编译程序的分类编译程序分为诊断编译程序,优化编译程序,交叉编译程序,可变目标编译程序。1.诊断编译程序:其作用是发现程序的错误,进行调试2.优化编译程序:其作用是提高目标代码的程序效率3.交叉编译程序:编译程序产生不同于宿主机的机器代码,则称为交叉编译程序4.可变目标编译程序:仅编译和目标机器有关的部分的程序解释程序和编译程序原创 2021-03-02 15:10:49 · 2801 阅读 · 0 评论 -
操作系统概述
操作系统概述操作系统的种类1.分时系统2.实时系统3.嵌入式操作系统4.网络操作系统5.微机操作系统操作系统的功能操作系统的发展阶段1.手工操作2.单道批处理3.多道批处理4.分时系统思考1.程序运行过程2.计算机的开机流程3.分时技术和多道批处理的差别4.没有安装操作系统的计算机启动过程和结果待补充答案操作是一个大型系统程序,是运行于硬件之上的一个软件,其可以提供用户接口,为应用程序分配和调度软硬件资源,控制与协调应用程序的并发活动其位置图:操作系统的种类1.分时系统多个用户使用同一台主机,且原创 2021-03-01 15:32:08 · 221 阅读 · 0 评论 -
堆和栈的区别
栈是存放局部变量的区域,由操作系统分配内存空间,因此当程序结束时,变量会自动回收,因此不用手动销毁变量从而释放内存空间堆是存放申请内存的区域,由程序员分配内存空间,程序运行结束,不会自动销毁内存空间,因此要手动清理,否则,会造成内存泄露内存溢出和内存泄露:内存泄露(memory leak):内存没有被及时的释放,导致内存不够内存溢出(out of memory):申请的内存超过系统能够分配的内存...原创 2021-02-23 14:22:18 · 345 阅读 · 0 评论 -
nginx基础架构
特点:1.高度模块化2.web服务器和客户端是一对多的关系3.采用异步非阻塞的方式去处理客户端的请求,因此保证其高并发能力同步和异步是描述通信模式的概念,而阻塞和非阻塞是描述处理调度方式的概念...原创 2021-02-23 11:49:34 · 168 阅读 · 2 评论 -
常见存储类型
import threadpoolfrom subprocess import Popen,PIPE##得到服务和id的关系函数,不同的id其服务名称可能相同def get_dir(dir):id = dir.split(’/’)[5] ##得到server_idname = id_and_name_dict.get(id) ##得到sever_id对应的server_nameprint(name,id)if name not in use.keys():use[name]=dirp原创 2021-01-11 18:55:33 · 11345 阅读 · 0 评论 -
python使用qq邮箱发送带有附件的邮件
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDK0kQvqlw3s36mLUC7E58aG5Cj9qvqGlUKnr+wmaPbNXkUzq+bGvysWz6C1Q/5LGlJy/bUytnc/q7tjLFhRrtoJQcw+Dzk75n+5PURMZMSY3W/BNdnUhDA3isE/DHBVM6yfqOIh1T4IZUEXvhQPQgtIwbbelRWnTdaJGqUKAv49wFUsXJQKkZOLYX3psTZnzYwN9YLXPvEm6F2ty9TQMUYbmq+原创 2021-01-09 14:50:33 · 1242 阅读 · 0 评论 -
grpc框架
rpc框架的原理:rpc框架分为3类:支持多语言的PRC框架,比较成熟的有 Google 的 gRPC、Apache(Facebook)的 Thrift;支持特定语言的 RPC 框架,如新浪微博的 Motan;支持服务治理等服务化特性的分布式服务框架,其底层内核仍然是RPC框架, 例如阿里的 Dubbo。grpcgRPC 是一个高性能、开源和通用的 RPC 框架,面向服务端和移动端,基于 HTTP/2 设计。gRPC是谷歌推出的一个开源RPC框架。过程如下:建立连接:使用http/2协议原创 2021-01-07 11:20:18 · 2050 阅读 · 0 评论 -
网络空间安全---常见网络漏洞
网络空间安全---常见网络漏洞及攻击手段常见的安全漏洞1.Sql注入Union攻击boolean攻击时间注入攻击其余攻击2.XXF漏洞3.XSS漏洞反射型攻击存储型攻击DOM型攻击4.CSRF漏洞CSRF与XSS的区别5.SSRF漏洞6.文件上传漏洞7.暴力破解8.命令执行9.逻辑漏洞10.XXE漏洞2.常见黑客攻击手法搜集信息渗透测试后渗透安全漏洞是指受限制的计算机、组件、应用程序或其他联机资源无意中留下的不受保护的入口点。通过对该入口点的系列操作,能使计算机遭受病毒和黑客攻击,从而产生安全问题(如信息原创 2020-12-31 11:23:45 · 2171 阅读 · 0 评论 -
HTTPS通信
HTTPS通信原理HTTPS概念HTTPS建立连接过程SSL协议握手过程DH算法对话密钥的恢复采用HTTPS传输数据的过程HTTPS概念HTTPS是在TCP和HTTP的协议中间添加了一层SSL/TLS协议的协议。SSL/TLS协议的目的就是为了保证数据的准确性和可靠性。可将HTTPS协议理解成是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全HTTPS建立连接过程客户端与服务器端建立通信的过程如下:建立连接的注意事项:1.保证公钥不被改动:通过将公钥放在数字原创 2020-12-29 16:15:51 · 216 阅读 · 0 评论 -
K8s--安装minukube
K8s中的资源类型minikube安装步骤一:卸载docker版本步骤二:解决依赖关系步骤三:添加yum源步骤四:安装步骤五:启动minikube集群并验证Kubernetes是容器集群管理系统,是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化,可以实现容器集群的自动化部署、自动扩缩容、维护等功能minikube安装minikube是用GO语言开发的,是Kubernetes 社区提供的可以在本地开发和体验的极简集群安装工具,便于学习的时候使用,k8s集群需要至原创 2020-12-09 10:00:21 · 721 阅读 · 0 评论 -
k8s中的资源类型
k8s中的资源类型pod利用yaml文件创建pod资源nodedeploymentserviceReplicationControllerReplicationController的三个主要部分利用yaml文件创建一个rc管理器ReplicaSet利用yaml文件创建ReplicaSet资源K8s中有很多资源类型,如pod、node、service、replicationController等资源作用所在api1.podpod是K8s中资源调度的最小单元v12.node原创 2020-12-09 09:58:02 · 2644 阅读 · 0 评论 -
K8s--pod管理器
K8s--pod管理器1.ReplicationControllerReplicationController的三个主要部分2.ReplicaSet3.DaemonSet4.Job5.CronJob6.Statefulset7.deploymentpod可以由管理器去实现自动的创建、删除等管理操作,如ReplicationController、ReplicaSet、DaemonSet、Job、CronJob、StatefulSet、Deployment等。其中ReplicationController、R原创 2020-12-08 18:40:02 · 590 阅读 · 0 评论 -
K8s--组成
K8s--组成master节点worker节点其他插件PodKubernetes 是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。 Kubernetes 拥有一个庞大且快速增长的生态系统。K8s集群分为两个部分,分别是master节点和worker节点,先看两个节点的组成:master节点master节点由etcd分布式持久化存储、API服务器、调度器、控制器管理器组成,这些组件用来存储、管理集群状态API 服务器是 Kubernetes 控制面的前端,用原创 2020-12-08 18:27:11 · 764 阅读 · 1 评论 -
k8s--configMap、secret
k8s--configMap、secretconfigMap是什么创建configMapsecret向容器传递命令行参数在k8s中向应用传递配置数据可以通过环境变量、configmap、secret等方式。configmap和secret都是k8s中的资源,用于将pod的配置分离,便于处理和信息的保密configMap是什么configMap是K8s中用于数据持久化和共享的资源,常用于将其挂载到pod中的容器。configmap是k8s中用于将配置资源映射到pod容器中的一种资源。可以在pod中的容原创 2020-12-08 17:18:53 · 485 阅读 · 0 评论 -
k8s--nodeport、port、targetport、contianierport
nodeport、port、targetport、contianierport的区别nodeportporttargetportcontainerport相信大家在刚开始学习的时候,一定会对如下几个端口nodeport、port、targetport、contianierport比较模糊,以下将对这些端口进行说明nodeportnodeport是外部访问集群中某个服务的端口号,只有服务被公布出去,才会有该端口号,外部通过访问nodeip:nodeport去访问该服务portport是集群内部访问某原创 2020-12-07 16:41:23 · 233 阅读 · 0 评论 -
K8s--探针机制
K8s中的特殊机制存活指针探测容器的机制存活指针kubernetes根据存活指针来检查容器是否正常运行,若探测失败,则会重启容器,K8s会定期地检测存活指针探测容器的机制k8s中有3种探测容器的机制:HTTP GEt:该类型的探针对容器的ip地址和执行HTTP GET请求,如探测器收到相应,且相应状态码正常,则代表探测成功;若服务器返回错误的响应状态码或者没有响应,则探测失败,将重新启动容器TCP套接字:该类型的探针尝试与容器指定端口建立TCP连接,根据连接成功与否,来判断是否探测成功Exe原创 2020-12-07 15:23:52 · 2678 阅读 · 0 评论 -
网络空间安全--局域网安全防御
网络空间安全--局域网安全防御数据链路层面临的威胁1.MAC地址扩散2.ARP攻击与欺骗ARP攻击ARP欺骗3.dhcp服务器欺骗和地址耗尽4.ip地址欺骗端口安全DHCP监听IDS和IPSIDS--入侵检测系统IDS的工作原理1.收集信息2.分析信号3.实时记录、报警IPS--入侵防护系统IPS工作原理1.获取数据包2.对数据包进行分类3.匹配过滤器4.判断数据包是否命中5.数据包的放行或丢弃数据链路层面临的威胁网络的5层模型中,数据链路层有着非常重要的作用。而在这一层上面也有非常多的安全威胁。如MA原创 2020-11-19 18:20:38 · 639 阅读 · 0 评论 -
容器的隔离机制
容器的隔离机制Linux命名空间空间空间类型cgroup众所周知,容器之间是互相隔离的,容器的隔离机制只要得益于Linux命名空间和Linux控制组(cgroup)。Linux命名空间使每个进程只能看到他自己的系统视图(如文件、进程、网络接口、主机名等)Linux控制组限制了进程能使用的资源量(CPU、内存、网络带宽等)Linux命名空间默认情况下,每个Linux最初只有一个命名空间。所有系统资源都属于这一个命名空间。但是能创建额外的命名空间,以及在它们之间组织资源。对于一个进程,可以在其原创 2020-11-17 17:42:24 · 1822 阅读 · 0 评论 -
网络空间安全--计算机病毒详解
计算机病毒详解1.计算机病毒概述计算机病毒特点1、传播性2、破坏性3、感染性4、隐蔽性5、可触发性6、自我更新7、免杀能力计算机病毒分类木马木马的分类木马的特点蠕虫病毒2.反病毒软件工作原理基本功能1.监控2.扫描3.判断4.清除其他主要技术1.自我保护2.修复3.自动升级4.脱壳5.文件校验和6.进程行为检测7.数据保护8.云安全3.病毒加壳壳的概念病毒加壳计算机病毒是人为编制的,干扰计算机软硬件正常运行并造成计算机、软硬件故障,甚至破坏计算机数据、可自我复制的计算机程序都是计算机病毒。计算机病毒一般原创 2020-11-16 18:27:38 · 2154 阅读 · 0 评论 -
网络空间安全---计算机网络安全概述
网络空间安全---计算机网络安全1、计算机常见的风险1.利用漏洞溢出攻击SQL注入2.暴力破解3.木马植入4.病毒/恶意程序5.系统扫描6.DoSSYN FloodPing FloodDDoS7.网络钓鱼8.MITMARP欺骗2、计算机网络信息安全体系1.物理安全2.系统安全3.网络安全4.数据安全5.人为因素3、操作系统安全1.操作系统的安全级别常见的解决方案1.系统漏洞不安全的服务配置与初始化错误黑客的攻击手段层出不穷,根据攻击对象、安全弱点的不同,攻击者所采用的方法也千变万化。下面将介绍一些常见的攻原创 2020-11-14 17:12:46 · 3497 阅读 · 0 评论 -
docker学习笔记---docker中容器的操作
docker学习笔记---docker使用Centos中使用docker启动docker服务启动docker容器docker容器的其余操作重启容器Centos中使用docker启动docker服务启动容器有两种方法,一种是docker run,是常用的方法,docker run会创建一个容器,并且创建之后立即运行;另一种是docker create方法,docker create方法只是创建一个容器,并不会去运行创建的容器#centos8中启动[root@docker-learning ~]# s原创 2020-11-09 15:56:20 · 267 阅读 · 0 评论 -
自制nginx实现卷共享
自制nginx镜像配置阿里云的镜像Dockerfile文件nginx配置文件内容global.conf和nginx.conf文件制作nignx镜像前段时间写过一篇博客,其中用yum安装nginx之后,容器内部的nginx服务的index.html会自动与宿主机中的index.html文件形成映射关系,而由于宿主机中没有该目录下的文件,所以会导致403错误。现在在容器内部对nginx服务进行配置配置阿里云的镜像#拉取阿里云镜像的repo文件curl -o /etc/yum.repos.d/CentOS原创 2020-11-08 20:59:16 · 211 阅读 · 0 评论 -
Dockerfile文件的介绍
Dockerfile文件中的指令介绍1、CMDCMD和RUN指令的区别注意事项2、ENTRYPOINT3、WORKDIR4、ENV5、USER6、VOLUME7、ADD注意事项8、COPY注意事项9、LABEL10、STOPSIGNAL11、ARGdocker中的默认ARG变量12、ONBUILD注意事项1、CMDCMD指令用来指定一个容器启动时要运行的命令CMD和RUN指令的区别CMD指令是指定镜像被构建时要运行的命令,而RUN是指定容器被启动时要运行的命令注意事项CMD指令在使用时很容易被覆原创 2020-11-08 10:56:28 · 520 阅读 · 0 评论 -
docker学习笔记--docker镜像基础知识
docker学习笔记--docker镜像dokcer镜像基础知识docker镜像定义docker镜像层次写时复制自制docker镜像docker镜像的操作dokcer镜像基础知识docker镜像可以理解成分层的文件叠加形成,最底层是bootfs,即引导文件系统,相当于引导容器运行的必备内容,上一层是基础镜像,即rootfs,一般是指定该镜像的操作系统(Ubuntu,Debian,Centos等),其上一直到最顶上的一层称为父镜像,最顶上的一层称为可写容器。docker镜像在运行的时候直接使用docke原创 2020-11-03 12:35:16 · 214 阅读 · 0 评论 -
RAID5卷的管理
RAID5卷的管理基础知识RAID5的管理1.磁盘分区2.创建RAID5卷3.查看RAID5卷4.格式化并挂载和使用创建的RAID5卷5.设置开机自动启动RAID5卷6.设置开机自动挂载7.模拟RAID5卷中的磁盘损坏,验证spare磁盘的功能8、关闭RAID基础知识RAID全称为Redundant Array of Inexpensive Disks,中文名称为廉价磁盘冗余阵列,RAID可分为软RAID和硬RAID。其中软RAID是通过软件实现多块磁盘冗余,硬RAID是 通过RAID卡实现RAID。原创 2020-10-27 16:16:46 · 941 阅读 · 0 评论