软件 方法 系统

自己动手从零写桌面操作系统GrapeOS系列教程——14.屏幕显示原理与文本模式

学习操作系统原理最好的方法是自己写一个简单的操作系统。 一、屏幕显示原理 电脑显示器屏幕是由很多很小的像素组成的。每个像素就像是一个小灯泡,在屏幕上一排一排的整齐排列着。只要能控制每个像素的颜色就能显示出各种各样的图形。如果近距离观察过会场或室外的大屏幕会有更直观的感受,这种大屏幕上每个像素就是一个 ......
文本 屏幕 原理 桌面 GrapeOS

自己动手从零写桌面操作系统GrapeOS系列教程——7.计算机组成与运行原理

学习操作系统原理最好的方法是自己写一个简单的操作系统。 在大学计算机课程中会学到一个叫冯·诺依曼结构的东西,很多同学当时学的也不是很清楚,也就是记住冯·诺依曼结构中五个部分的名称,能应付考试。主要原因还是当时大家的计算机知识比较少,的确不好深入理解。 计算机组成与运行原理和冯·诺依曼结构密切相关,今 ......
原理 桌面 GrapeOS 计算机 教程

自己动手从零写桌面操作系统GrapeOS系列教程——15.用汇编向屏幕输出字符

学习操作系统原理最好的方法是自己写一个简单的操作系统。 在上一讲中我们介绍了屏幕显示的原理,本讲我们来实战一下。 一、向屏幕输出一个字符mbr4.asm mbr4.asm中的代码如下: ;将屏幕第一行的第一个字符显示为‘G’。 mov ah,0x07 ;黑底白字 mov al,'G' ;G的ASCI ......
用汇 字符 屏幕 桌面 GrapeOS

如何设计一个最简化的推荐系统

互联网时代,数据呈爆炸式增长,前所未有的数据量远远超过受众的接收和处理能力,因此,从海量复杂数据中有效获取关键性有用信息成为必须解决的问题。 面对信息过载问题,人们迫切需要一种高效的信息过滤系统,“推荐系统”应运而生。 20世纪90年代以来,尽管推荐系统在理论、方法和应用方面取得了系列重要进展,但数... ......
系统

linux系统安装MySQL服务,详细图文教程

注:linux系统在安装操作系统时,如果选择了开发工具和兼容库后,一般默认都会安装MySQL服务的部分程序包。如果我们要自定义的安装全新的MySQL服务,就必须先把这些已经安装的程序包都卸载掉。否则,后面这些程序包会给我们带来很多麻烦。 1、查看系统里是否有安装MySQL相关的程序包。 rpm -q ......
图文 教程 系统 linux MySQL

自己动手从零写桌面操作系统GrapeOS系列教程——6.电脑启动过程介绍

学习操作系统原理最好的方法是自己写一个简单的操作系统。 按一下电脑上的电源按钮,电脑就启动了,不一会儿电脑屏幕上就出现了登录界面或直接进入了桌面。 这是一个很日常的场景,但有时候会有个疑问:电脑内部是如何启动的?本讲我们就简单的介绍一下。 因为本教程属于入门型,不考虑UEFI等比较新的技术,但不影响 ......
桌面 过程 GrapeOS 教程 系统

深度学习模型压缩方法概述

我们知道,一定程度上,网络越深,参数越多,模型也会越复杂,但其最终效果也越好,而模型压缩算法是旨在将一个庞大而复杂的大模型转化为一个精简的小模型。之所以必须做模型压缩,是因为嵌入式设备的算力和内存有限,经过压缩后的模型方才能部署到嵌入式设备上。工业界的模型压缩方法有:知识蒸馏、轻量化模型架构、剪枝、... ......
深度 模型 方法

深入理解计算机系统(CSAPP)bomblab实验进阶之nuclearlab——详细题解

前言 本实验是难度高于bomblab的一个补充实验,该实验部分题目难度已经达到CTF入门水平,且这个实验据说是上一届的某个学长原创,因此互联网上几乎找不到类似的题目。在间断地思考了几周后我最终完成了所有题目,并打算在这篇随笔里详细地给大家分享我的解题过程。 核弹样本(可本地断网运行):https:/ ......
题解 nuclearlab bomblab 计算机 系统

架构师日记-软件高可用实践那些事儿

关于软件的高可用,是一个老生常谈的话题。“高可用性”(High Availability)通常来描述一个系统经过专门的设计,从而减少停工时间,而保持其服务的高度可用性。其计算公式是:可用率=(总时间-不可用时间)/总时间。 ......
事儿 架构 日记 软件

【大型软件开发】开发日志(五).net框架与C++的融合:CLR——C++如何调用C#的DLL

做什么? 先说一下场景,现在正在开发一个Qt ActiveServer,也就是用一个应用程序去向其他的组件暴露接口,以达到提供服务的目的。 然后新版的框架要提供大部分功能,也就是要重做大部分模块。现在有一个问题,就是有一个用于提供向web发送post请求,获得回执并解析的模块,叫LBD_WebApi ......
软件开发 框架 软件 日志 net

【MRTK】HoloLens 项目部署的几种方法

前言 如果在项目部署过程中遇到报错 Unity.IL2CPP.Building.BuilderFailedException: Lump_libil2cpp_vm.cpp,可以查看我之前的文章 【MRTK】解决 Unity.IL2CPP.Building.BuilderFailedException ......
HoloLens 方法 项目 MRTK

解读uvm_config_db中的set和get方法

一、uvm_config_db简介 uvm_config_db的全称是configuration database,它是建立在 uvm_resource_db 之上的便利层,resource database储存的是与scope字符串相关联的name-value对(如下图所示) 。 uvm_conf ......
uvm_config_db 方法 config uvm set

SpringCloud微服务实战——搭建企业级开发框架(五十):集成移动端推送功能的系统通知公告数据库设计

系统的通知公告功能似乎是很容易被忽略的功能模块,在传统的软件系统中,一般OA类软件系统不可或缺,而在应用软件系统中此功能或有或无,在现在大多数的互联网软件系统中,此功能又必不可缺。所以,在框架设计时,我们需要考虑业务系统是否需要此功能模块,然后将此功能作为扩展插件,在需要时开启,在不需要时配置关闭即 ......

软件教程 | Jupyter&stata之stata_kernel攻略

目录: 一、什么是stata_kernel Github:kylebarron/stata_kernel 1. stata_kernel简介 Jupyter是一个用于交互式数据科学的开源生态系统,简单来说通过stata_kernel,用户可以为jupyter工具安装一个stata内核,再通过jupy ......

如何实现蓝牙配对方法混淆攻击

背景 蓝牙技术是一种无线数据和语音通信开放的全球规范,它是基于低成本的近距离无线连接,为固定和移动设备建立通信环境的一种特殊的近距离无线技术连接。蓝牙具有无线、短程等特点,主要能够提供设备到设备之间的通信。蓝牙协议目前从最初的 1.0 版本更新到了 5.3 版本,并在 4.0 版本之后分为了经典蓝牙 ......
方法

【CTO变形记】整体系统思维-从现象到本质

前言:我们的⼤脑⾥的认知不是⼀块⽩板,⽽是写满着密密麻麻对这个世界形成的各种观念、信念。塞满了对事物的各个表象,我们脑中的表象世界,对应着外部世界的各种事物。 如果感觉本篇看起来有点不适应,可以看看之前的几篇,再回来这边: 【CTO变形记】驱动力的选择 【CTO变形记】有序定无序—为什么越努力,越无 ......
变形记 本质 思维 整体 现象

推荐一款.Net Core开发的后台管理系统YiShaAdmin

若依(RuoYi)是码云上一款精美的开源快速开发平台,作者毫无保留给个人及企业免费使用。RuoYi目前有三个版本:普通版本(RuoYi)、前后端分离版本(RuoYi-Vue)、微服务版本(RuoYi-Cloud)。.net的小伙伴们估计很羡慕JAVA的生态,现在.net core发展也很快,奈何生态 ......
YiShaAdmin 后台 管理系统 系统 Core

VisionPro学习笔记(1)——软件介绍和基本使用

前言 自己使用visionPro已经有段时间了,最近也一直在研究其算子的理论,为了加深印象,计划将自己的学习笔记整理在博客园,当然其官方文档对如何使用及其各种算子都有详细的介绍,所以这里的笔记仅仅为个人加深理解而做,就当是个个人日记,日后也好查找。 !!! 为了方便,大部分图片来自网络,所以如有侵权 ......
VisionPro 笔记 软件

Python常见面试题006 类方法、类实例方法、静态方法有何区别?

006. Python中类方法、类实例方法、静态方法有何区别? 全部放一个里面篇幅过大了,就拆分成1个个发布 示例代码 class Human: def __init__(self, name): self.name = name def say(self): print(f'我的名字是{self. ......
方法 静态 实例 试题 Python

设计模式之(13)--模板方法模式

今天我们来学习下模板方法设计模式。 模板方法(Template Method Pattern):抽象的父类中定义一个操作中算法的骨架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构,即可重新定义该算法的某些特定步骤。简单地讲,就是“父类的模板方法定义不变的流程,子类重写流程中的方法”。 ......
模式 设计模式 模板 方法

数值的扩展方法以及新增数据类型BigInt

二进制和八进制表示法 ES6提供了二进制和八进制数值的新的写法,分别用前缀0b(或0B)和0o或(0O)表示 0b111110111 503 // true; 0o767 503; // true 在es5开始,严格模式中,八进制不允许使用前缀0 表示,否则会报错 // 严格模式 (function ......
数值 类型 方法 数据 BigInt

解密游戏推荐系统的建设之路

本文从零开始介绍了游戏推荐项目的发展历程,阐述了大型项目建设中遇到的业务与架构问题以及开发工程师们的解决方案,描绘了游戏推荐项目的特点以及业务发展方向,有着较好的参考与借鉴意义。 ......
游戏推荐 系统

vivo 自研Jenkins资源调度系统设计与实践

本文从目前业界实现Jenkins的高可用的实现方案,分析各方案的优缺点,引入vivo目前使用的Jenkins高可用方案,以及目前Jenkins资源的调度方案的设计实践和目前的落地运行效果。 ......
Jenkins 系统 资源 vivo

推荐系统[八]算法实践总结V0:腾讯音乐全民K歌推荐系统架构及粗排设计

推荐可分为以下四个流程,分别是召回、粗排、精排以及重排: 1. 召回是源头,在某种意义上决定着整个推荐的天花板; 2. 粗排是初筛,一般不会上复杂模型; 3. 精排是整个推荐环节的重中之重,在特征和模型上都会做的比较复杂; 4. 重排,一般是做打散或满足业务运营的特定强插需求,同样不会使用复杂模型... ......
系统 算法 全民 架构 音乐

推荐系统[八]算法实践总结V1:淘宝逛逛and阿里飞猪个性化推荐:召回算法实践总结【冷启动召回、复购召回、用户行为召回等算法实战】

推荐系统[八]算法实践总结V1:淘宝逛逛and阿里飞猪个性化推荐:召回算法实践总结【冷启动召回、复购召回、用户行为召回等算法实战】 ......
算法 实战 行为 个性 用户

前端性能精进之优化方法论(二)——分析

在上一节中曾提到过两种性能监控:SYN 和 RUM,那么对应的也有两种分析:数据分析和实验室分析。 数据分析会通过采集上来的性能信息来剖析和定位可能存在的各种问题。 实验室分析会通过某个线上或本地的测试工具对页面进行单点测试,得出性能分析报告。 本文会对前者介绍一些分析实践,后者会介绍一些比较有名的 ......
方法论 前端 性能 方法

基于NPOI封装导出Excel方法

背景: 在工作中我们有一个很常见的业务场景:导出列表的数据,生成Excel,而使用NPOI生成Excel我们也会遇到一个问题,每遇到一个不同的类导出时都要生成不同的表头,行,列,但其实里面大部分代码都是冗余的,所以这时我就想到了一个点子,通过泛型和反射整一个通用的导出方法. 导出思路: 其实这个业务 ......
方法 Excel NPOI

了解舵机以及MG996R的控制方法

了解舵机以及MG996R的控制方法 1.舵机基础知识: 舵机是遥控航空、航天模型控制动作,改变方向的重要组成部件,舵机是一种位置(角度)伺服的驱动器。 舵机主要适用于那些需要角度不断变化并可以保持的控制系统,比如人形机器人的手臂和腿,车模和航模的方向控制。舵机的控制信号实际上是一个脉冲宽度调制信号( ......
舵机 方法 996R 996 MG

用ChatGPT,快速设计一个真实的账号系统

hi,我是熵减,见字如面。 用ChatGPT,可以尝试做很多的事情。 今天我们就来让ChatGPT做为架构师,来帮我们设计一个账号系统吧。 我的实验过程记录如下,与你分享。 用户故事 首先,我们从用户故事开始吧。 提示:我们从用户故事开始,需要设计一个网站的账号系统模型,其中包括账号基础信息实体,邮 ......
账号 ChatGPT 系统

react 高效高质量搭建后台系统 系列 —— 结尾

其他章节请看: react 高效高质量搭建后台系统 系列 尾篇 本篇主要介绍表单查询、表单验证、通知(WebSocket)、自动构建。最后附上 myspug 项目源码。 项目最终效果: 表单查询 需求:给角色管理页面增加表格查询功能,通过输入角色名称,点击查询,从后端检索出相应的数据。 效果如下: ......
高质量 后台 系统 react