源代码 按钮 系统

在京东如何做好前端系统的可观测性

本文旨在从0到1的讲述一下我们团队在做系统可观测性过程中所沉淀下来的一整套解决方案,收效甚巨,不敢苟藏,当公之于众,共建吾辈光明之未来。 ......
前端 系统

Linux 硬盘存储和文件系统介绍

一:硬盘存储 1、存储类型 根据存储的特性不同,可以将存储分为内存和外存两类。 内存:又叫做主存储器,计算机中所有程序的运行都是在内存中进行。 外存:又叫做辅助存储器,因为内存容量小且断电会丢失所有数据。所以磁盘来实现数据的持久化存储。例如:硬盘,U盘,软盘,光盘 2、硬盘和磁盘: 磁盘是一个广泛的 ......
硬盘 文件 系统 Linux

《操作系统导论》读书笔记1——CPU虚拟化,进程

系列文章目录和关于我 一丶CPU的虚拟化 一个桃子,我们称之为物理(physical)桃子。但有很多想吃这个桃子的 人,我们希望向每个想吃的人提供一个属于他的桃子,这样才能皆大欢喜。我们把给每个 人的桃子称为虚拟(virtual)桃子。我们通过某种方式,从这个物理桃子创造出许多虚拟桃子。重要的是,在 ......
导论 进程 笔记 系统 CPU

不存在百分百的安全,该给你的系统上个保险了

故障,是每个技术人都不愿遇到,但却总会遇到的事件。程序Bug、安全漏洞、黑客攻击、服务器宕机、网络中断等诸多因素都有可能引发系统故障,使我们的业务面临瘫痪的窘境。这样的例子,国内外都在不断的发生,比如: 2020年,由于严重的全澳性IT故障,Coles的收银机全部不能联网,down机瘫痪。收银员扫不 ......
百分 系统

聊一聊系统重构

打破常规,重立新规; 01 开始想聊这个话题的时候,我是打算放弃的;因为这个话题涉及范围之广,内容之多,让我犯怵; 近几年,待过两家公司;一家经历过重构,另一家也打算重构...... 其实要下定决心,推翻重来,是一个很有勇气的决定; 归根结底,不到万不得已,谁想这么玩,谁愿意花费大精力去做这些脏活、 ......
系统

自己动手从零写桌面操作系统GrapeOS系列教程——19.硬盘读写理论知识

学习操作系统原理最好的方法是自己写一个简单的操作系统。 一、硬盘控制器 我们前面已经讲过硬盘控制器是一种I/O接口,CPU通过它就能间接的读写硬盘。硬盘控制器主要有IDE和SATA两种,我们这里只考虑IDE控制器。 电脑里硬盘控制器有2个,一个叫主控制器,另一个叫从控制器。而每个硬盘控制器能连接两个 ......
桌面 硬盘 GrapeOS 理论 教程

自己动手从零写桌面操作系统GrapeOS系列教程——20.汇编语言读硬盘实战

学习操作系统原理最好的方法是自己写一个简单的操作系统。 本讲我们设计一个简单的读硬盘实验。通过一定的方法使硬盘第二个扇区的前3个字节依次为1、2、3,最后3个字节依次为3、2、1,中间的506个字节全为0。然后通过读硬盘程序将硬盘第二个扇区的数据读取到内存0x7e00-0x7fff的地方,也就是内存 ......
实战 桌面 硬盘 GrapeOS 语言

自己动手从零写桌面操作系统GrapeOS系列教程——21.汇编语言写硬盘实战

学习操作系统原理最好的方法是自己写一个简单的操作系统。 在上一讲中我们学习了用汇编语言读硬盘,本讲我们来学习用汇编语言写硬盘。同样也是设计一个简单的实验,实验内容为: 在内存中准备一段有特征的512字节数据,地址为0x7e00~0x7fff,其特征是前3个字节依次为4、5、6,最后3个字节依次为6、 ......
实战 桌面 硬盘 GrapeOS 语言

自己动手从零写桌面操作系统GrapeOS系列教程——18.外设和IO

学习操作系统原理最好的方法是自己写一个简单的操作系统。 一、外设和I/O接口 前面我们介绍过冯·诺依曼结构包含5部分,其中输入设备和输出设备统称为外部设备,简称外设。常见的外设有鼠标、键盘、显示器、硬盘等。由于外设种类多、差异大、速度慢等原因,导致CPU无法直接与外设沟通。于是在CPU和外设之间产生 ......
外设 桌面 GrapeOS 教程 系统

自己动手从零写桌面操作系统GrapeOS系列教程——16.封装打印字符串函数

学习操作系统原理最好的方法是自己写一个简单的操作系统。 在上一讲中我们向屏幕打印字符串“GrapeOS”用了十几行汇编代码,如果要输出的字符比较多,这种方法太繁琐了。本讲我们将打印字符串封装成一个函数,使用时就方便多了。 一、mbr7.asm mbr7.asm代码如下: org 0x7c00 ;如果 ......
字符串 函数 字符 桌面 GrapeOS

自己动手从零写桌面操作系统GrapeOS系列教程——17.用汇编语言清空屏幕

学习操作系统原理最好的方法是自己写一个简单的操作系统。 在QEMU中会默认输出一些字符,有时候会干扰我们自己输出的字符。一个比较好的办法是向将屏幕清空,再输出我们想要输出的字符。下面就来学习如何清空屏幕。 一、清空屏幕 其实清空屏幕的原理很简单,就是将屏幕写满空格就行了。 下面来实战。mbr8.as ......
屏幕 桌面 GrapeOS 语言 教程

如何通过Java代码在Word中创建可填充表单

有时候,我们需要制作一个Word模板文档,然后发给用户填写,但我们希望用户只能在指定位置填写内容,其他内容不允许编辑和修改。这时候我们就可以通过表单控件来轻松实现这一功能。本文将为您介绍如何通过Java代码,以编程方式在Word中创建可填充表单。下面是我整理的步骤及方法,并附上Java代码供大家参考... ......
表单 代码 Java Word

设计一款可扩展和基于windows系统的一键处理表格小工具思路

原创总结/朱季谦 设计一款可扩展和基于windows系统的一键处理表格小工具思路 日常开发当中,业务人员经常会遇到一些重复性整理表格的事情,这时候,就可以通过一些方式进行自动化程序处理,提高工作(摸鱼)效率。 例如,业务人员有这样需要,日常需要手工整理以下原始xlsx表格数据,这些数据格式都是固定死 ......
表格 思路 windows 工具 系统

ASP.NET Core - 配置系统之配置添加

2. 配置添加 配置系统可以读取到配置文件中的信息,那必然有某个地方可以将配置文件添加到配置系统中。之前的文章中讲到 ASP.NET Core 入口文件中,builder(WebApplicationBuilder 对象) 中有一个 Configuration 属性,这里就是我们扩展添加额外的配置的 ......
系统 Core ASP NET

ASP.NET Core - 选项系统之选项配置

1. 选项 前面讲完了.NET Core 下的配置系统,我们可以通过 IConfiguration 服务从各种来源的配置中读取到配置信息,但是每次要用的时候都通过 Iconfiguration 读取配置文件会比较不方便,而且效率低。.NET Core 体系下提供了一个选项系统,该功能用于实现以强类型 ......
系统 Core ASP NET

ASP.NET Core - 配置系统之配置提供程序

3. 配置提供程序 上面提到,通过 IConfigurationBuilder 的实现类对象,我们可以自由地往配置系统中添加不同的配置提供程序,从而获取不同来源的配置信息。.NET Core 中,微软提供了以下这些内置的配置提供程序: 文件配置提供程序 环境变量配置提供程序 命令行配置提供程序 Az ......
程序 系统 Core ASP NET

ASP.NET Core - 配置系统之自定义配置提供程序

#4. 自定义配置提供程序 在 .NET Core 配置系统中封装一个配置提供程序关键在于提供相应的 IconfigurationSource 实现和 IConfigurationProvider 接口实现,这两个接口在上一章 ASP.NET Core - 配置系统之配置提供程序 中也有提到了。 I ......
程序 系统 Core ASP NET

ASP.NET Core - 配置系统之配置读取

一个应用要运行起来,往往需要读取很多的预设好的配置信息,根据约定好的信息或方式执行一定的行为。 配置的本质就是软件运行的参数,在一个软件实现中需要的参数非常多,如果我们以 Hard Code(硬编码)的方式写在应用代码中,这样配置就会很乱,而且后续也不容易修改。乱而多,而且不容易修改,这就需要一个统 ......
系统 Core ASP NET

【Git】代码权限&分支管理

以Gitlab代码托管平台说明,也是目前应用最为广泛的企业搭建私服的选择。 1. 权限管理 [项目] 访问权限有3种::Private、Internal、Public Private:只有组成员才能看到 Internal:只要登录的用户就能看到 Public:所有人都能看到 [项目成员] 有五种权限 ......
分支 权限 代码 Git amp

浅析 SplitChunksPlugin 及代码分割的意义

起因 有同事分享webpack的代码分割,其中提到了SplitChunksPlugin,对于文档上的描述大家有着不一样的理解,所以打算探究一下。 Q:什么是 SplitChunksPlugin?SplitChunksPlugin 是用来干嘛的? A: 最初,chunks(以及内部导入的模块)是通过内 ......
SplitChunksPlugin 意义 代码

低代码平台前端的设计与实现(四)组件大纲树的构建设计

在上篇文章,我们已经设计了一个简单的设计态的Canvas,能够显示经过BuildEngine生成的ReactNode进行渲染。本文,我们将继续上一篇文章的成果,设计并实现一个能够显示组件节点大纲树的组件。 什么是组件大纲树? 我们希望用户能通过一个地方比较明显的看到当前整个ComponentNode ......
大纲 组件 端的 代码 平台

ICSFUZZ:操纵I/O、二进制代码重用以及插桩,来Fuzzing工业控制应用程序

​ 本文系原创,转载请说明出处 Please Subscribe Wechat Official Account:信安科研人,获取更多的原创安全资讯 源码:GitHub - momalab/ICSFuzz 原文:ICSFuzz: Manipulating I/Os and Repurposing B ......

vivo全球商城:库存系统架构设计与实践

作者:vivo官网商城开发团队 - Xu Yi、Yan Chao 本文是vivo商城系列文章,主要介绍vivo商城库存系统发展历程、架构设计思路以及应对业务场景的实践。 一、业务背景 库存系统是电商商品管理的核心系统,本文主要介绍vivo商城库存中心发展历程、架构设计思路及应对各种业务场景的实践。 ......
架构 库存 商城 全球 系统

顺应潮流,解放双手,让ChatGPT不废话直接帮忙编写可融入业务可运行的程序代码(Python3.10实现)

众所周知,ChatGPT可以帮助研发人员编写或者Debug程序代码,但是在执行过程中,ChatGPT会将程序代码的一些相关文字解释和代码段混合着返回,如此,研发人员还需要自己进行编辑和粘贴操作,效率上差强人意,本次我们试图将ChatGPT直接嵌入到代码业务中,让ChatGPT生成可以直接运行的代码。 ......
废话 双手 潮流 ChatGPT Python3

.NET应用系统的国际化-多语言词条服务

上篇文章我们介绍了 VUE+.NET应用系统的国际化-整体设计思路 系统国际化改造整体设计思路如下: 提供一个工具,识别前后端代码中的中文,形成多语言词条,按语言、界面、模块统一管理多有的多语言词条 提供一个翻译服务,批量翻译多语言词条 提供一个词条服务,支持后端代码在运行时根据用户登录的语言,动态 ......
词条 应用系统 国际 系统 NET

推荐系统[八]算法实践总结V2:排序学习框架(特征提取标签获取方式)以及京东推荐算法精排技术实战

0.前言 「排序学习(Learning to Rank,LTR)」,也称「机器排序学习(Machine-learned Ranking,MLR)」 ,就是使用机器学习的技术解决排序问题。自从机器学习的思想逐步渗透到信息检索等领域之后,如何利用机器学习来提升信息检索的性能水平变成了近些年来非常热门的研 ......
算法 实战 框架 特征 标签

.NET应用系统的国际化-整体设计思路

近期产品要支持国际化多语言,主要涉及前端界面国际化以及后端提示信息、异常信息的国际化多语言支持。 目前我们的开发技术栈:前端VUE、后端.NET。面向前端界面和后端服务,分别涉及对应的国际化多语言支持方案。 一、前端界面国际化多语言支持 前端VUE界面的源码如下: 上述代码中,我们将需要多语言支持的 ......
应用系统 思路 整体 国际 系统

代码优化与程序加速指南——针对数值优化和深度学习领域

背景 当需要处理规模较大、任务较复杂的优化问题或训练神经网络时,我们经常会遇到程序运行时间长或无法完成的情况。然而,这不一定是由于问题规模大或计算机硬件能力的限制。即使尝试使用更高性能的服务器或计算机,也不能保证能够有效地加速代码运行。因为高性能的硬件通常需要与为高性能计算而设计的代码相匹配。 本文 ......
数值 深度 领域 代码 指南

Qt开发技术:Q3D图表开发笔记(一):Q3DScatter三维散点图介绍、Demo以及代码详解

前言 qt提供了q3d进行三维开发,虽然这个框架没有得到大量运用也不是那么成功,性能上也有很大的欠缺,但是普通的点到为止的应用展示还是可以的。 其中就包括华丽绚烂的三维图表,数据量不大的时候是可以使用的。 Demo:Q3DScatter散点图演示效果 Q3D提供的三维图表 依赖QtDataVisua ......

掌握4C原则,设计高效的系统架构

hi,我是熵减,见字如面。 在软件开发中,设计一个好的架构是非常重要的,好架构能够影响整个系统的质量和可维护性。 而要设计出好架构,就需要遵循一些设计原则。 其中,架构设计的4C原则是一种常用的架构设计基础原则,4C原则强调架构设计的清晰性、简洁性、一致性和可改性。 这些原则可以帮助我们评估和优化架 ......
架构 原则 系统