自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 问答 (1)
  • 收藏
  • 关注

转载 通过Dockerfile对镜像文件压缩

执行Dockerfile-f:指定Dockerfile文件名;-t:指定生成的新镜像的镜像名.:表示当前目录我们会发现,编译hello.go生成的可执行文件的大小只有2MB。然而所生成镜像的大小:852MB!!!这是因为我们FROM golang,该镜像包含了整个golang镜像的内容。解决办法两个:1. 多阶段构建;2.

2024-04-07 16:11:47 117

原创 VMWare Workstation15.5下载及安装ubuntu20.04详细教程(多台)

我这里选择的是1280×720(16:9),实际要根据你自己的效果选择合适你的。个人觉得此篇博客里的解决方法,修改了文件,后续可能会出问题(当然可能也不会),还是建议在建立虚拟机初期选择合适兼容的版本号。当然,如果你下载的是ubuntu18.x,可能不会有影响,因为他对应VMWare的版本也许与当前VMWare版本兼容。因为我们的VMWare软件的版本是15.5,因此一定要选择对应的版本!到这步之后由于下方仍然没有按钮,无法进入下一步,因此我们先退出系统的安装,先设置一下分辨率。,可根据需要自行选择。

2024-03-22 14:44:35 1072 1

原创 【物联网工程课设】高性能分析型连接查询设计与实现

在执行过程中,出现了根目录已满的情况,于是百度扩展根目录,发现自己的磁盘空间未分配的与根目录空间不连续,因此无法扩展。2、 然后输入select,表示开始执行查询,Brand#MN总共有25种情况,程序自动依次从Brand#11开始到Brand#55结束,显示这25种情况下的。以此发现,part表中好几列的数据重复较高,因此可以将其存储到一组数组中,在结构体中,之拼接其在数组中的下标即可。(2)对于满足用户指定的零件品牌的零件,如果该零件销售总量小于(1)中的平均销售量的30%,则认定为。

2024-03-19 15:35:23 907 4

原创 【论文阅读】Cider: a Rapid Docker Container Deployment System Through Sharing Network Storage

提出原因:1.传统方法容器部署步骤很慢;2.大规模高并发部署中,中央镜像存储库(central image repository)上的资源竞争也会加剧这种情况;镜像拉取(pull)操作是导致性能下降的主要原因。由此提出Cider——可以高并发和可扩展方式实现容器的快速部署的一种新系统。主要改动:1.将工作节点的本地Docker存储改为全节点共享的网络存储,按需加载镜像;2.容器的本地写时复制层(COW)确保Cider在整体部署期间的可扩展性;

2024-03-07 14:55:38 1011 3

原创 Linux网络编程——C++实现进程间TCP/IP通信

linuc c++ tcp/ip 网络通信 一对一通信 服务端一对多多进程通信可实现服务端客户端交互通信,双方都可 即收又发信息。

2023-12-22 19:10:41 2089

原创 【nuaa操作系统实验】第一次作业——基本命令

Linux是一个多用户操作系统,系统中存在多个用户,每一个用户都有一个专属于自己的主目录,用户主目录位于/home目录下,以用户名作为目录名称,通常情况下,用户只能修改自己主目录下的文件。在shell中,符号~代表用户的主目录,假设用户的主目录是/home/guest,cd ~的功能与cd /home/guest的功能等价。如果读取失败,返回-1;如果打开成功,返回值>=0,作为被打开文件的标识符,该整数被称为文件描述符。(2) ./mycat text // 此命令将text文件中的内容显示到屏幕上。

2023-12-09 21:22:33 1038

原创 Linux下载mysql并简单使用

一、下载mysql下载安装非常简单,直接打开终端,执行如下命令:bashsudo apt-get install mysql-server二、启动mysql安装成功后,我们需要启动mysql服务才能正常使用:启动mysql服务:sudo service mysql start停止mysql服务:sudo service mysql stop三、登陆mysql启用服务后,还需要登录到mysql:mysql -u root -proot指的是用户名,"-p"表示输入密码,若之前

2023-12-09 19:51:02 1020

原创 【云计算基础知识3】存储虚拟化

引入:虚拟机的存储资源从何而来?上层虚拟机如何使用?存储虚拟化就是将多个存储介质(如硬盘、RAID)通过一定技术集中起来,组成一个存储池(Storage Pool)并进行统一管理。从主机或工作站角度,看到的就不是多个硬盘,而是分区或是卷,就好像是一个超大容量(≥1TB)的硬盘。这种可以将多个、多种存储设备统一管理起来,为用户提供大容量、高数据传输性能的存储系统,就称为虚拟存储。作用(1) 提高硬件资源的使用率(2) 简化系统管理的复杂程度(3) 增强云存储平台的可靠性(备份等功能)

2023-12-07 17:18:38 1354

原创 【云计算基础知识2】计算虚拟化

计算虚拟化的分类及作用1、 CPU虚拟化:保障CPU资源的合理调度以及VM上的指令能够正常高效的运行。2、 内存虚拟化:保障内存空间的合理分配、管理、隔离以及高效可靠的使用。3、 I/O虚拟化:保障VM的IO操作隔离与正常高效地执行。常见的计算服务架构虚拟化只是底层硬件与上层OS/app解耦,提供可灵活分配地技术资源池地底层技术。要想实现虚拟机的创建与管理,需要与其他组件(镜像、调度、存储、网络等)协同工作才能完成,并提供完整的计算服务。OpenStack Nova(开源)

2023-12-05 20:42:56 2393

原创 【云计算基础知识1】虚拟化与容器

(全虚拟化不修改OS,直接插入;基于Linux内核的虚拟化技术,可以直接将Linux内核转换为Hypervisor,从而使得Linux内核能够直接管理虚拟机,直接调用Linux内核中的内存管理、进程管理子系统来管理虚拟机。直接将VMM安装在硬件设备上,VMM在这种模式下又叫Hypervisor,虚拟机有指令要执行时,Hypervisor会接管该指令,模拟相应操作。将应用程序与该程序的依赖打包在一个文件里,运行这个文件就会生成一个虚拟容器,程序在这个虚拟容器中运行,就好像在真实物理机上运行一样。

2023-12-04 20:47:16 1344

原创 【数据结构】二叉树复习

霍夫曼树:又叫最优树二叉树,是一种带权路径长度(WPL)最小的二叉树。带权路径长度WPL:根节点到叶结点之间的路径长度与该叶结点的权值的乘积叫做该叶结点的带权路径长度。eg. 上图WPL = 8×3 + 7×2 + 6×2。

2023-11-21 11:29:35 62

原创 【qt】将qt打包成windows文件

找到release这个文件夹的地址,找到.exe文件。下面修改图标,注意,图标格式必须是.ico。进入文件夹找到release目录,进入release目录,会看到serial.exe已有图标。然后使用命令:windeployqt + .exe文件名(此过程是加载.exe执行的依赖库)再release运行一遍。

2023-08-01 13:28:25 184 1

原创 【qt】QT上位机开发之串口助手——QT下的串口编程

添加左下侧信息框(串口号、波特率、数据位、停止位、校验位、流控) —> Combo Box + Label 控件。查看信号说明,单从名字来看,readyRead()最符合我们需要。接收别的设备发来的数据。使用Plain Text Edit控件。打开、关闭、发送、清空串口按钮 --> Push Button。使用助手软件给别的设备发送数据。使用LineEdit控件。运行查看效果:此时端口号已经被添加到了combo box中。打开串口的同时对串口进行初始化(左侧的信息栏)将接收框的属性改为只读模式。

2023-07-31 14:30:53 522

原创 【qt】仿写一个智能家居页面

点击运行,发现并不会显示该界面,显示的是之前qq登陆的界面,因为没有在代码中指定该页面的运行,因此需要修改代码部分来运行该界面。成熟的界面(比如网页)通过拖动大小都是会有相应调节,显示不开的也会带滚动条,但是我们目前做的拖动我们的qt界面会乱,也没有滚动条。前缀名可以是自己设定,注意添加完毕后一定要先保存(ctrl+s),看文件后面的小星号*消失就保存成功,否则后面无法添加文件。回到ui文件,将一个label拖到页面中,删除label中的文字,右键这个label,选改变样式表。后面的保持默认,点击完成。

2023-07-28 13:43:59 1864 1

原创 【qt】制作一个简单的qt界面(qq登陆界面)

例如,打印一串字符,每点击一次sign in按钮,就会打印一行。选中某一控件,根据对应位置,直接双击,然后输入要修改的名字。槽:通常将某个槽函数绑定在控件的信号上,当点击控件触发信号时,也就会触发这个槽函数。但登录和注册的按钮都无法使用,因此需要对按钮进行设置,即设置qt的信号和槽。2. 在widget.cpp中创建槽函数,具体实现功能在在此槽函数中编写。当我们在不知道某个函数怎么使用时,可以在帮助->索引中查找相关函数的用法。sign in按钮为例:选中控件->右击->转到槽->clicked。

2023-07-20 09:55:36 4955

原创 【操作系统一】操作系统概述

南航操作系统刘老师课

2023-06-14 15:19:44 110

原创 使用 Python 的 GUI 库 PyQt5 实现登陆界面的可视化

pyhton可视化的登陆界面,要求:先选择身份是manager还是clerk,在进行用户名和密码的输入,登陆成功后提示并跳转另一窗口显示file.txt文件内容manager : (admin, 123456)clerk : (user, 123456)2. 创建身份选择控件3. 创建用户名和密码输入控件函数setEchoMode()功能:定义输入模式示例:这段代码是用来设置密码输入框的显示模式的,它将密码输入框的显示模式设置为密码模式,这意味着输入的字符将被替换为密码符号(例如星号 *

2023-06-12 18:12:08 991 3

原创 【算法复习】动态规划算法

m*n棋盘中的每一个格都放一个礼物,每个礼物都有一定的价值. 你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格,直到到达棋盘的右下角。为了达到这个目的,我们可以用一个表来记录所有已经解决的子问题的答案,不管该子问题的答案以后是否会被用到,只要它被计算出来就将其填入表中(dp数组)。我们保存已经解决的子问题的答案,在需要的时候查找已求得的答案,以避免大量的重复计算,从而得到多项式时间复杂度的算法。与分治法不同的是,适合于用动态规划法求解的问题,经分解得到的子问题往往不是相互独立的。

2023-05-21 17:02:45 299 1

原创 【操作系统】第四次作业——解决写者饥饿问题、吃水果问题、过桥问题

南航操作系统第四次作业。

2023-05-03 19:35:37 882 1

【数据库课设】基于华为云opengauss数据库的人事管理系统(Python+Postgres+Tkinter)源码

【数据库课设】基于华为云opengauss数据库的人事管理系统(Python+Postgres+Tkinter)源码

2023-06-12

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除