交换机和路由器有什么区别 发表于 2024-10-17 | 分类于 计算机网络笔记 在交换机中有一张端口和MAC地址的映射表,称之为MAC地址表 交换机交换机只关心MAC地址,不关心IP地址。 MAC地址在TCP/IP协议中属于数据链路层。 MAC地址表交换机中有一张端口和MAC地址的映射表,称之为MAC地址表 数据包中包含接收方MAC地址(也叫目标MAC地址),根据 ... 阅读全文 »
IP地址和MAC地址是什么 发表于 2024-10-16 | 分类于 计算机网络笔记 在计算机网络中发送信息,只需要填写内容和对方的IP地址,操作系统会根据目标IP地址,自动查询arp表获取对方的MAC地址,从网卡发出内容。 MAC地址MAC地址也叫物理地址、硬件地址,由网络设备制造商生产时烧录在网卡。 可以说mac地址是全球唯一的地址,虽然可以通过其它手段修改mac地址,但不在 ... 阅读全文 »
分布式RPC通信:protobuf序列化和反序列化 发表于 2024-09-07 | 分类于 RPC通信 Protobufprotobuf(protocol buffer)是google 的一种数据交换的格式,它独立于平台语言。google 提供了protobuf多种语言的实现:java、c#、c++、go 和 python,每一种实现都包含了相应语言的编译器以及库文件。由于它是一种二进制的格式,比使 ... 阅读全文 »
分布式RPC通信:原理介绍 发表于 2024-09-04 | 分类于 RPC通信 集群和分布式有这样一个单机服务器,多个模块提供了下面这些功能 分布式相比单机服务器的好处 系统中,有些模块属于CPU密集型的,有些模块属于I/O密集型的,各模块对硬件的需求是不一样的 单机服务器中任意模块的修改,会导致整个项目代码的重新编译部署 分布式通信框架要考虑: 模块怎么划分 ... 阅读全文 »
MindSpore笔记:安装和实现LeNet-5手写数字识别 发表于 2024-08-08 | 分类于 人工智能笔记 安装MindSpore(Windows环境)一、安装MindSpore(Windows环境)1. 安装python 3.7安装Python3.7.5,可以点击链接下载:https://mirrors.huaweicloud.com/python/3.7.5/python-3.7.5-amd64.ex ... 阅读全文 »
MindSpore笔记:整体架构概览 发表于 2024-08-02 | 分类于 人工智能笔记 MindSpore四层架构 模型层:预置的模型和开发套件 表达层:提供AI模型开发、训练、推理的接口。支持原生python开发和调试神经网络。具备动静图统一能力。 编译优化:AI框架的核心,以MindIR(全场景中间统一表达)为媒介,前端表达—》执行效率更高的底层语言 ... 阅读全文 »
进程和线程 发表于 2024-07-24 | 分类于 操作系统笔记 1.进程1.1 进程的概念来自百度百科的定义: 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配的基本单位,是操作系统结构的基础。 1.2 进程控制块PCB进程控制块(Processing Control Block),是操作系统核心中一种数据结构,主要表示进 ... 阅读全文 »
git常用命令 发表于 2024-07-23 | 分类于 git-linux-windows命令 git add git add:将文件的更改添加到暂存区(Staging Area),表示你希望将这些更改包含在下一次提交中。可以使用 git add <file> 来添加特定文件,也可以使用 git add . 来添加所有更改过的文件。 123git add 要提交的文件或者全部提交g ... 阅读全文 »
死锁问题定位分析 发表于 2024-07-07 | 分类于 cpp 死锁产生程序的多个线程获取多个锁资源时,有可能发生死锁,比如线程A获取了锁1,线程B获取了锁2,线程A还需要获取锁2,线程B还需要获取锁1,这时双方都在等待对方的锁资源,线程A和线程B互相等待,进程死锁。 即多线程获取锁的顺序不一致 123456789101112131415161718192021 ... 阅读全文 »
C++线程类thread、线程互斥(模拟卖票)和同步通信(生产者消费者模型) 发表于 2024-07-06 | 分类于 cpp C++ 11线程类threadC++11提供线程类thread之前,windows上调用CreateThread创建线程,linux上调用pthread_create创建线程,直接调用系统API函数,编写的程序无法做到跨平台编译运行。 1234567891011121314151617181920 ... 阅读全文 »