-
Jenkins部署Spring Boot项目
2019独角兽企业重金招聘Python工程师标准>>> Jenkins是一个插件化的部署工具,对于一个Spring Boot项目通过Jenkins实现自动化部署,大概需要三个流程: 1)确保Jenkins上Git,Maven的正确配置和使用(略) 2)在Jenkins上安装Publish over SSH插件,系统管理->插件管理->可选插件->搜索publis…- 11
- 0
-
使用Rust开发操作系统(中断描述符表–IDT)
中断,异常,以及中断描述符表--IDT 关于异常,中断 中断描述符表 IDT表项 保护模式的IDT IA-32e模式的IDT 中断堆栈帧 开始干活 拆分中断门/陷进门的结构 中断堆栈帧 关于调用约定 * Preserved 和 Scratch 寄存器 * x86-interrut调用约定 * 为IDT设置异常处理函数 下一步做什么 关于异常,中断 中断大多都是由外部硬件产生的,例如,键盘,硬盘,光…- 23
- 0
-
Windows内存管理机制及C++内存分配实例(一):进程空间
本文背景: 在编程中,很多Windows或C++的内存函数不知道有什么区别,更别谈有效使用;根本的原因是,没有清楚的理解操作系统的内存管理机制,本文企图通过简单的总结描述,结合实例来阐明这个机制。 本文目的: 对Windows内存管理机制了解清楚,有效的利用C++内存函数管理和使用内存。 本文内容: 本文一共有六节,由于篇幅较多,故按节发表。其他章节请看本人博客的Windows内存管理及C++内存…- 13
- 0
-
使用Docker部署Spring Boot项目
本文使用Docker部署Spring Boot项目。部署之前需要环境中已经安装Docker和Maven(用于打包),所以本文先进行安装Docker和Maven;接着搭建一个Spring Boot项目,使其支持Docker部署;最后进行部署和测试。 环境搭建 安装Docker 检查系统内核版本 Docker运行在CentOS 7上,要求操作系统为64位,内核版本为3.10及以上。 确认本机已经安装了…- 11
- 0
-
学习新时代编程语言Rust-0为什么学习Rust
今天我分享的主题是《新时代的编程语言—— Rust 》 刚看到这个主题是不是觉得有些炒作?! 当然,并不是我自己这样说的,咱也没这个分量去说这个,是吧。这个主题是借鉴于 Carol Nichols在 2019 年的费城新兴技术大会上做的关于 Rust 的主题演讲: 原标题是: Rust A Language for the Next 40 years Carol 是《 Rust 编程语言》的联合作…- 6
- 0
-
C++中系统内存分区与程序内存分区
在C++中,有内存分成6个区,即系统数据区,自由存储区,文本区(程序代码段),const数据区,全局/静态区,堆区和栈区。 系统数据区:存放的是系统数据,我们是不能自由访问的,有时候windows系统会突然弹出一个消息框,内容是“内存不能为read”就是错误访问系统数据区的结果; 自由存储区:用来存放由C延伸而来的 malloc()函数所分配的数据,它和堆十分相似,不过它用free结束自己的生…- 2
- 0
-
Springboot 集成redis
Springboot 集成redis 本地安装redis redis 在springboot中的基本配置 application.yaml中基本配置: redisConfig bean配置 RedisConnectionFactory Bean 使用redis做缓存 注解方式使用redis做缓存 cacheManager Bean * Controller * 返回对象需要序列化 * 更新操作需要…- 29
- 0
-
使用Rust开发编译系统(基本介绍以及建立项目)
建立项目 基本介绍 建立项目 编译系统的过程 下一步要做什么 基本介绍 在本专栏中我们将使用rust编写C语言的编译系统,包括编译器,链接器,汇编器,文章跟之前的风格一样,将项目分为独立的子模块,每篇文章对每个模块或者子功能进行讲述,编写代码之前会讲述所需要的理论知识 建立项目 Rust安装请看这里 建立一个项目需要用到Cargo,Cargo在安装Rust时就会安装 通过Cargo提供的命令很容易…- 33
- 0
-
探索C++虚函数在内存中的表现形式及运行机制(二)
实践:手动实现简单的虚表跳转功能 在了解虚表原理后我们通过不使用virtaul关键字的方法来实现和使用虚函数同样地效果。仅仅实现上面代码的效果:通过CSoldier指针调用不同兵种的攻击方法 定义一个函数指针类型vtFunPtr 在每个类(子类和父类)中都放一个静态函数指针数组m_vtArr 在父类数据成员中增加一个指向函数指针数组的指针m_vfPtr,子类不能再声明与父类同名的m_vfPtr数据…- 3
- 0
-
springboot集成freemarker
一.静态资源: 1,默认情况下,Springboot会从classpath下的/static、/public、/resources、/META-INF/resources下加载静态资源; 2,可以通过修改spring.resources.staticLocations来修改静态资源加载地址; 3,因为应用是打成jar包,所以之前的src/main/webapp不会加载; 二.不推荐使用jsp的原因…- 5
- 0
-
使用Rust开发操作系统(UEFI基本介绍)
UEFI基本介绍 关于UEFI BIOS UEFI介绍 引导管理 UEFI Image UEFI 应用程序 OS Loader UEFI运行时服务 调用约定 调用约定的数据类型 IA-32架构调用约定 Rust中的UEFI UEFI入口 * OVMF固件制作 * Protocol UEFI启动系统过程 下一步要做什么 在上一篇文章中我们编写一个基本的操作系统,但是这个操作系统只有很简单的字符输入和…- 505
- 0
-
探讨C++ 变量生命周期、栈分配方式、类内存布局、Debug和Release程序的区别
1#include "stdafx.h" 2#include<iostream> 3#include<windows.h> 4using namespace std; 5 6class T 7{ 8protected: 9 int t; 10public: 11 T(int r=0):t(r){} 12 void showNum(){cout<&l…- 4
- 0
-
使用Rust开发操作系统(Rust内联汇编)
Rust内联汇编 Rust内联汇编 assembly template 约束 输出约束 * 输入约束 Clobber约束 options 更多例子 开始干活 下一步要做什么 Rust内联汇编 Rust的内联汇编基础语法如下(需要启用#!(feature(asm))) 1 2asm!( 3 assembly template 4 : 输出操作数 5 : 输入操作数 6 : Clobber 7 : 选…- 77
- 0
-
Linux下几款C++程序中的内存泄露检查工具
本文更新记录 作者gatieme, CSDN. GitHub 2016-08-08 11:37, 添加了Linux内核内存检测工具Kmemleak 2016-08-08 11:43, 添加了链接内存泄露检测工具比较 Linux下编写C或者C++程序,有很多工具,但是主要编译器仍然是gcc和g++。最近用到STL中的List编程,为了检测写的代码是否会发现内存泄漏,了解了一下相关的知识。 所有使用动…- 122
- 0
-
PHP基本语法(一)—— 变量
1 开始写PHP程序 跟学C/C++、java一样,我们先从hello world开始: PHP 的脚本块以 *<?php * 开始,以 *?> * 结束。您可以把 PHP 的脚本块放置在html文档中的任何位置。当然,在支持简写的服务器上,您可以使用 <? 和 ?> 来开始和结束脚本块。不过,为了达到最好的兼容性,我们推荐您使用标准形式( <?php) ,而…- 3
- 0
-
使用Rust开发操作系统(GDT,IDT加载,以及GDB调试内核)
GDT,IDT加载,以及GDB调试内核 明确一下目标 开始干活 初始化TSS 初始化GDT 初始化IDT 初始化8259A 关于调试 下一步要做什么 我们花费了好大力气完成了全局描述符表,中断描述符表,TSS,PIC等结构和对应功能的代码,在本章中我们根据之前编写的GDT,IDT结构以及对应的方法来完成GDT,IDT的加载 明确一下目标 我们现在的项目结构是这样的 1. 2├── kernel 3…- 20
- 0
-
Windows内存管理机制及C++内存分配实例(四):内存映射文件
4.内存管理机制--内存映射文件 (Map) 和虚拟内存一样,内存映射文件可以用来保留一个进程地址区域;但是,与虚拟内存不同,它提交的不是物理内存或是虚拟页文件,而是硬盘上的文件。 ·使用场合 它有三个主要用途: 系统加载EXE和DLL文件,操作系统就是用它来加载exe和dll文件建立进程,运行exe。这样可以节省页文件和启动时间。 访问大数据文件,如果文件太大,比如超过了进程用户区2G,用fop…- 20
- 0
-
PHP中include和require的区别详解
1、概要 require()语句的性能与include()相类似,都是包括并运行指定文件。不同之处在于:对include()语句来说,在执行文件时每次都要进行读取和评估;而对于require()来说,文件只处理一次(实际上,文件内容替换require()语句)。这就意味着如果可能执行多次的代码,则使用require()效率比较高。另外一方面,如果每次执行代码时是读取不同的文件,或者有通过一组文件迭…- 9
- 0
-
使用Rust开发操作系统(Canonical地址以及虚拟地址和物理地址操作)
地址操作 地址空间 虚拟地址空间 物理地址 IA-32e模式寻址 IA-32e段描述符 代码段描述符 数据段描述符 开始干活 虚拟地址 地址对齐 物理地址 下一步要做什么 在使用Rust编写操作系统(位运算)一章中我们实现了基本的位操作,在本节中我们使用之前写好的位操作开始实现地址的操作,我们先了解一下地址的理论知识 地址空间 地址空间在一般情况下分为两类:虚拟地址空间,物理地址空间,虚拟地址空间…- 11
- 0
-
(三):浅谈C/C++内存泄露及其检测工具
这样,在程序结束的时候,也就是winmain,main或dllmain函数返回之后,如果还有内存块没有释放,它们的信息会被打印到Debug窗口里。 如果你试着创建了一个非MFC应用程序,而且在程序的入口处加入了以上代码,并且故意在程序中不释放某些内存块,你会在Debug窗口里看到以下的信息: {47} normal block at 0x00C91C90, 200 bytes long. Data…- 7
- 0
-
使用Rust开发操作系统(4级分页内存)
文章目录 基础控制位 分页模式 分页内存的转化过程 4级分页(PML4T) 4级分页模式下各级页表项位功能 * CR3寄存器: * PML4TE * PDPTE * PDE * PTE * 4级分页模式下不同规格的物理页寻址过程 4KB分页寻址 * 2MB分页寻址 * 1GB分页寻址 48位虚拟地址空间划分 4 KiB pages * 2 MiB pages * 1 GiB pages 开始干活 …- 19
- 0
-
(二)C++类的内存大小计算
计算一个类对象的大小规律: 1、空类、单一继承的空类、多重继承的空类所占空间大小为:1(字节,用于标记对象地址); 2、一个类中,虚函数本身、成员函数(包括静态与非静态)和静态数据成员都是不占用类对象的存储空间的; 3、因此一个对象的大小≥所有非静态成员大小的总和(包括动态分配的变量...); 4、当类中声明了虚函数(不管是1个还是多个),那么在实例化对象时,编译器…- 32
- 0
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!