tag 标签: Plus

相关博文
  • 热度 2
    2023-10-28 15:30
    388 次阅读|
    0 个评论
    一、Linu启动流程简要分析 想要适配rootfs,就得先了解Linux开发板常见启动流程。详细的启动过程我们这里就不再多说了,别的大佬说的更好。 这里简单说明一下,开发板上电后,当然是Bootloader先启动了,不同的板子有不同的过程。 然后UBoot启动完之后,会传递启动参数给内核,然后跳转到内核。 内核启动后会尝试加载rootfs,并从里面特定目录里查找init程序。 然后init程序会开始运行初始化系统服务的程序(我们的镜像用的OpenRC),然后OpenRC负责启动各种服务。 例如这是传递了一个有问题的rootfs给内核,内核找不到init程序,然后报错了。 二、docker运行Alpine Linux容器 其实docker是个不错的rootfs提取工具,基本上各个平台的发行版都有。 下载速度还很快,版本任你选,还可以在集成到SDK之前在电脑上把想安装的软包和源都给处理好。 废话不多说,现在开始搞。 2.1 先创建一个100M的临时文件,用来存储新的rootfs dd if=/dev/zero of=rootfs.ext4 bs=1M count=100 2.2 格式化该临时文件 mkfs.ext4 rootfs.ext4 2.3 挂载该临时文件系统到/tmp/my-rootfs mkdir /tmp/my-rootfs sudo mount rootfs.ext4 /tmp/my-rootfs 2.4 开启虚拟化支持(如果重启了WSL或者电脑,就需要从这一步开始) docker run --rm --privileged multiarch/qemu-user-static --reset --persistent yes 2.5 创建名称为armv7alpine的容器 docker run -it \ --name armv7alpine \ --net=host \ -v /tmp/my-rootfs:/my-rootfs \ arm32v7/alpine 接下来所有的操作都是在这个armv7alpine容器内完成的,一直到创建Alpine根文件系统压缩包完成。 三、修改源 由于官方源速度比较慢,我们需要将Alpine Linux的官方源替换成阿里源。修改好用apk update命令测试一下。 sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories apk update 四、安装启动服务软件和配置串口 4.1 安装openrc 根据第一节内容的说明,大家已经简单了解了Linux的启动过程。 安装openrc很简单,就是输入下面这一行命令就行了。 apk add openrc 安装完OpenRC,还需要配置一些东西,接下来继续搞。 4.2 启动必要服务 rc-update add devfs boot rc-update add procfs boot rc-update add sysfs boot 4.3 设置串口自动登录 在设置前,我们需要确认内核使用的默认串口设备是哪个。可以通过cat /proc/cmdline指令来确认内核使用的串口设备。 同时也可以在官方SDK里输入ls /dev/tty*来查看板子默认开启了哪些串口。 其实图片里是有tty1,tty3,tty4的,但是一般我们只用到ttyFIQ0,也懒得记这么多串口引脚。 4.3.1 添加串口到配置文件,这个文件是负责管理哪个串口能登录root用户 /etc/securetty 4.3.2 修改/etc/inittab文件,这个文件负责在串口设备上开启登录服务和别的一些东西 删除tty1到tty6开始的行,这一步一定要做,否则串口启动会卡死在找ttyX上。 添加这一行,允许串口自动登陆 ttyFIQ0::respawn:/sbin/agetty —autologin root ttyFIQ0 vt100 修改好的内容 # /etc/inittab ::sysinit:/sbin/openrc sysinit ::sysinit:/sbin/openrc boot ::wait:/sbin/openrc default # Set up a couple of getty's 这下面的删除掉 # Put a agetty on the serial port 这下面一行的改成这样,其他不变 ttyFIQ0::respawn:/sbin/agetty --autologin root ttyFIQ0 vt100 # Stuff to do for the 3-finger salute ::ctrlaltdel:/sbin/reboot # Stuff to do before rebooting ::shutdown:/sbin/openrc shutdown 好的,改完这些,现在的rootfs已经可以启动了。只是还不能使用网络安装软件包。 五、配置网络 5.1 添加网络接口配置 跟很多发行版一样,想永久配置网络设置,可以修改/etc/network/interfaces这个文件。 默认是没有这个文件的,使用以下命令新建 vi /etc/network/interfaces 然后将以下内容复制进去,记得改成自己的IP和对应网段,网关。 个人建议是使用静态IP,这样就不用反复去路由器确认自动获取的IP地址了。 auto eth0 iface eth0 inet static address 192.168.50.59 netmask 255.255.255.0 gateway 192.168.50.1 修改为记得将networking服务添加到默认启动队列,如果发现板子没有IP可以检查networking服务是否正常运行。 rc-update add networking default 5.2 修改域名解析服务器 编辑/etc/resolv.conf文件,将DNS服务器的IP地址更换成自己当地的服务器IP。 注意:这个文件在重启docker容器、重启电脑后会恢复 # This file was automatically generated by WSL. To stop automatic generation of this file, add the following entry# # generateResolvConf = false nameserver 202.103.224.68 5.3 修改主机名称 编辑/etc/hostname这个文件,把里面的内容换成主机名称,例如这里是修改成了Luckfox。 主机名称在ssh远程登录进入shell、串口登录时会显示,用来标识主机。 六、安装和配置ssh服务 6.1 安装openssh软件包 没啥好说的,直接apk add openssh就行了 apk add openssh 6.2 配置ssh 打开/etc/ssh/sshd_config文件 将内容32行和57行修改成以下内容 # Authentication: #LoginGraceTime 2m PermitRootLogin yes #StrictModes yes #MaxAuthTries 6 #MaxSessions 10 #PubkeyAuthentication yes # To disable tunneled clear text passwords, change to no here! PasswordAuthentication yes 6.3 将sshd添加到默认级别队列,实现开机启动sshd rc-update add sshd default 七、配置开机启动ntpd实现网络校时 7.1 创建本地启动服务脚本 新建/etc/local.d/crond.start这个文件,在文件内添加一下内容。 这个开机服务脚本只做三件事情:ntp网络校时、开启crond定时任务、关闭板子led灯 #!/bin/bash ntpd -d -q && crond /sys/class/leds/work/brightness 保存后,给脚本添加可执行权限 chmod a+x /etc/local.d/crond.start 7.2 配置ntp服务器 新建/etc/ntp.conf文件,添加ntp服务器,这里用的是阿里云校时服务器。 文件内容如下: server ntp.aliyun.com iburst server ntp0.aliyun.com iburst server ntp1.aliyun.com iburst server ntp2.aliyun.com iburst 7.3 将local添加到默认级别队列 rc-update add local default 7.4 设置时区 Alpine Linux默认是不带多国语言支持和时区支持的。 需要安装tzdata包,复制了上海时区数据后,就可以把这个包删除了,能省一点是一点。 apk add tzdata && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ /etc/timezone && apk del tzdata 做到这里,开机校时服务就完成了,但是busybox的ntpd程序只进行一次校时。 如果板子需要长期开启,期间需要更准确的时间,清按下一步步骤添加定时ntp校时配置。 7.5 设置crond定时任务 注意:这一步要烧录到板子之后,串口启动再做。现在做了也白搭,具体原因我也没去了解和分析。 7.5.1 创建/var/spool/cron/crontabs目录,用于保存定时配置 mkdir -p /var/spool/cron/crontabs 7.5.2 输入crontab -e命令编辑定时任务 crontab -e 然后将以下内容复制进去,保存 # do daily/weekly/monthly maintenance # min hour day month weekday command 0 */6 * * * ntpd -d -q 八、安装需要用到的软件包 到这一步,rootfs的定制工作基本上完成了,剩下的就是安装一些自己需要用到的软件包到rootfs里。 根据自己的需要进行调整,个人建议util-linux、btop、bash都安装一下。 apk add util-linux apk add sqlite btop apk add bash bash-completion 修改root用户默认登录的shell,打开/etc/passwd文件,将root这一行的末尾,ash修改成bash。 如下图所示: root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin 九、将rootfs打包并集成到SDK里完成镜像构建 9.1 打包rootfs 在/目录下执行以下命令 for d in bin etc lib root sbin usr; do tar c "$d" | tar x -C /my-rootfs; done for dir in dev proc run sys var; do mkdir /my-rootfs/${dir}; done cd /my-rootfs/ && tar czf alpine.tar.gz * 执行完毕之后,可以看到/tmp/my-rootfs目录下有一个alpine.tar.gz文件。 将这个文件复制到Luckfox的官方SDK的sysdrv/custom_rootfs目录下(自行创建目录)。 如下图所示 9.2 修改官方SDK根目录下的build.sh文件 打开SDK的build.sh,找到1044行的function __PACKAGE_ROOTFS()函数, 将build_get_sdk_version前的内容替换成以下内容: ``` function __PACKAGE_ROOTFS() { local rootfs_tarball _target_dir _install_dir if ; then if ; then rootfs_tarball="$RK_PROJECT_PATH_SYSDRV/rootfs_${RK_LIBC_TPYE}_${RK_CHIP}.tar" tar xf $rootfs_tarball -C $RK_PROJECT_OUTPUT else rootfs_tarball="$RK_CUSTOM_ROOTFS" if ; then mkdir $RK_PROJECT_PACKAGE_ROOTFS_DIR fi tar xf $rootfs_tarball -C $RK_PROJECT_PACKAGE_ROOTFS_DIR fi else msg_error "Not found rootfs tarball: $rootfs_tarball" exit 1 fi build_get_sdk_version ``` 9.3 修改SDK根目录下的.BoardConfig.mk文件 在文件末尾添加以下内容 # 配置自定义镜像目录 export RK_CUSTOM_ROOTFS=../sysdrv/custom_rootfs/alpine.tar.gz 然后执行以下命令删除output/out/rootfs_uclibc_rv1106目录 rm -rf output/out/rootfs_uclibc_rv1106 这个目录只是构建系统生成的临时rootfs,删除后能确保我们的rootfs生效 然后重新执行build.sh命令生成镜像即可,生成镜像后按常规方式烧录到Nand Flash就行了。 TF卡镜像目前还没研究好怎样处理,烧录后能用,就是根分区大小不能拓展。 ./build.sh 清理临时文件系统 如果以后很少用到,不想再自己折腾文件系统的,可以按此步骤执行。 关闭docker容器 docker stop armv7alpine 取消挂载 sudo umount /tmp/my-rootfs 删除文件 rm rootfs.ext4 参考文档 现代 Linux 的五大初始化系统 https://linux.cn/article-7873-1.html 史上最详细linux启动过程讲解—-没有之一 https://cloud.tencent.com/developer/article/1114481 Creating Custom rootfs and kernel Images https://www.cnblogs.com/dream397/p/13786186.html
  • 2021-12-21 10:08
    0 个评论
    (深圳沃客密科技有限公司)    新的 EITUVICUREPlusII 和 UVPowerPuckII 是之前*** UV 工业***应用 UVICUREPlus 和 UVPowerPuck 的***版本。带用户可选的抽样速率,新的测试仪可以用于高速传送带或是更慢的生产线,测量和其他的 EIT 产品兼容。 UVICUREPlus Ⅱ 单通道: 大陆UVICURE PLUS II的版本,10W量程,UVICURE PLUS II EIT能量计 仪器测试面:(探头位置) 大陆UVICURE PLUS II的版本,10W量程,UVICURE PLUS II EIT能量计 单通道 UV 测量计标准 EIT 可单选波段 : UVA(320-390nm) , UVB(280-320nm) UVC(250-260nm) , UVV(395-445nm) 单通道 UV 测量计动态范围 标准版本 –10WattUVA,UVB,UVV ; 1WattUVC 。低功率版本 –100mW 。 探头结构图: 大陆UVICURE PLUS II的版本,10W量程,UVICURE PLUS II EIT能量计 设置功能 提供用户可选的仪表模式用于数据分析,比较,筛选和操作设定。 数据参考模式 用于比较读数。在系统安装和检修故障的时候非常有用。用户可以将选定 UV 读数存储为基准线或是参考读数,然后和另一个读数比较。仪表会显示两个读数,并指示读数之间的变化***比。数据显示为 mJ/cm2,mW/cm2, 和***比。 图形模式: 图形模式显示采集到的每个 UV 波段的 UV 照度和能量。图形展示为照度随时间而变化。右边显示的图形表示一个灯或是 2 个灯的固化系统。 用户可选的抽样率 SmoothOnData :和之前的版本兼容。 SmoothOffData :和之前的 UVPowerMap 兼容超过 2000 个样本 / 秒。 测量的单位 测量的单位是用户可选择的,让操作员容易读取。数据将按您的需要显示。选择的单位可以是: mJ/cm2 , mW/cm2 , J/cm2 , W/cm2 , uJ/cm2 , uW/cm2 。 彩色,容易读取的显示屏 可以选择低,中和高强度用于图形显示。 通讯端口 UV 能量计和 PC/PDA 符合串口通讯协议。下载收集的数据到计算机做统计分析和数据记录,以及过程验证。 EIT 波峰曲线示意图: UVA 技术规格表 显示 容易读取,黄色数字,黑色背景 测量范围 标准版本:UVA,UVB,UVV -10mW/cm2 to 10W/ m2;UVC -5mW/cm2 to 1W/cm2 低功率版本:UVA,UVB,UVC,UVV:100microW/cm2 to 100mW/cm2 测量精度 +/- 10% ;+/- 5% 典型 光谱范围 ( UVICUREPlus Ⅱ ) 检测320-390nm (UVA)或者280-320nm (UVB)、 250-260nm (UVC)、395-445nm (UVV) 空间响应 近似余弦 操作温度 0-75 °C内部温度。允许较短时间的更高外部温度(当温度超过相应的规格,会有警报声提示)操作温度 时间规定 2 分钟DISPLAY模式 (没有按键动作)。EITIM也可以设置没有时间显示。 电池 两只可更换AAA碱性电池 电池寿命 大约20小时显示时间 尺寸 直径117mm x高度12.7mm 重量 289 克 外壳材料 铝和不锈钢 手提包材料 内部聚亚安酯,软,防划尼龙外壳 手提包重量 260 克 手提包尺寸 274mm 宽×89mm高×197mm深 大陆UVICURE PLUS II的版本,10W量程,UVICURE PLUS II EIT能量计
  • 热度 4
    2021-9-30 21:11
    1005 次阅读|
    0 个评论
    NXP发布了的一处理器,一经问世便备受瞩目,这便是i.MX系列处理器中首款集成专用神经处理引擎(NPU)的i.MX 8M Plus。NXP官方给这颗处理器的定位是“能够在工业和物联网等领域实现边缘端高级机器学习推理”,而在NXP后续的相关宣传中,也着重强调了i.MX 8M Plus处理器能够实现面向工业边缘、涉及机器学习和智能视觉相关的应用。然而,实际情况是i.MX 8M Plus的产品与行业适用性不仅限于此,它的强大性能和配置在诸如智慧医疗、智能交通以及工业自动化等领域都可发挥出最大价值。毫无疑问,这款集成了NPU(且算力高达2.3TOPS)、双千兆以太网、两个集成MIPI CSI摄像头接口和双摄像头图像信号处理器(ISP),并支持三屏异显、HiFi语音及其他多媒体功能的处理器,必将在风起云涌的嵌入式ARM市场占据一席之地。 NXP消费和工业市场i.MX应用处理器副总裁兼总经理Martyn Humphries曾表示:“在‘智慧’边缘转变为‘智能’边缘的过程中, i.MX 8M Plus是重要的里程碑式产品,它将成为处理解决方案的潮流引领者。”这种底气并非空穴来风,还是归结于i.MX 8M Plus的强大。 下面就让我们来深入了解一下i.MX 8M Plus。i.MX 8M Plus采用先进的14nm LPC FinFET工艺技术,可同时执行多个高度复杂的神经网络,如多对象识别、超过40000个英语单词的语音识别和医疗成像。强大的NPU能够处理Mobilenet,这是一种热门的图像分类网络,分类速度超过每秒500个图像 工程师可将机器学习推理功能的负载转移到NPU,让高性能Cortex-A和Cortex-M内核、DSP和GPU执行其他系统级或用户应用任务。视觉部分集成了双ISP,并支持高动态范围(HDR)和鱼眼镜头校正。ISP支持两个用于实现实时立体视觉的高清摄像头或单个12兆像素分辨率摄像头。这些功能为监控、智能零售应用、机器人视觉和家居健康监测仪等实时图像处理应用提供支持。 为支持语音应用,i.MX 8M Plus集成了高性能HiFi 4 DSP,通过对语音流进行预处理和后处理来增强自然语言处理性能。这一点对于需要保障视频通讯质量的应用场合,如医疗上的远程诊疗系统,具有非常明显的优势。 在工业应用上,i.MX 8M Plus能够提高工业生产力和自动化,可检测、测量、精确识别对象并通过准确检测机器操作异常情况实现对设备的预测性维护。此外,通过将准确的人脸识别、语音/命令识别和手势识别相结合,工厂人机界面可以更直观、更安全。i.MX 8M Plus支持工业4.0 IT/OT融合,将千兆以太网与时间敏感型网络(TSN)相集成,结合Arm Cortex M7实时处理功能,提供确定性有线网络连接和处理。更加令人振奋的是,i.MX 8M Plus供货周期将长达15年,这对于长生命周期的产品用户来说非常重要。 值得一提的是,i.MX 8M Plus应用处理器中集成的新IP(例如NPU和ISP)虽然很强大,但同时也可能会给工程师带来开发上的挑战。虽然很多工程师有能力解决这些难题,但由此增加的复杂性无疑会给项目期限带来更多压力。因此,作为NXP官方金牌合作伙伴,飞凌嵌入式与NXP深入合作,推出了基于i.MX 8M Plus处理器的开发套件OKMX8MP-C开发板与FETMX8MP-C核心板,协力解决工程师使用i.MX 8M Plus开发产品的痛点,助力客户缩短产品上市时间。凭借成熟的OKMX8MP-C开发板与FETMX8MP-C核心板,工程师可以大大减少在原理图设计和产品板卡布局以及系统移植和调试上所用的时间,并提升产品的稳定性,降低生产难度。
  • 热度 22
    2014-12-22 19:02
    2232 次阅读|
    0 个评论
    Not typical of me, I was not wearing my happy face several days ago, nor did I perform a single happy dance. The reason for this sad state of affairs started when I arrived at my office at the crack of dawn and powered up the main tower computer that drives the three 28-inch monitors forming my desktop.   Everything seemed to be OK at first. The various applications (Outlook, Firefox, Excel, Word, Visio, Notepad, etc.) appeared to open and run as expected while I was setting up my desktop the way I like it. As soon as I tried to do anything with any of these applications, however, that program immediately locked up. If I subsequently tried to use the ctrl-alt-delete key combination to access the task manager, the entire system locked up and then all three screens went black. Strange to relate, the only thing that continued to work was the lonely cursor associated with my mouse, and there’s not much you can do with a cursor on an otherwise blank screen.   I tried re-booting the machine several times to no avail. There were probably other things I could have tried, but I’d pretty much reached the end of the line. To be honest, this computer has been getting flakier and flakier recently, and I’ve been expecting this day to come for a few months now. We’ve run antivirus and anti-malware tools, and we’ve tried swapping memory sticks and running low-level diagnostic and intensive burn-in tests, but at the end of the day there’s only so much you can do.     I must admit to feeling a tad forlorn. This machine has been a true and faithful companion for several years now. It was actually a refurbished unit I purchased off eBay for around $350. The graphics card was a beast that could drive two high-resolution monitors. I soon discovered that a new card of the same type would have cost me around $450 (eek!), but then I tracked down a refurbished version on eBay for something like $30. Since that time, I’ve been working the poor little scamp into the ground, pounding away on my keyboard, orchestrating things with my mouse, creating blogs, editing images, and doing suchlike from dawn till dusk, day-in and day-out. I know how frazzled I feel, so I’m not surprised that my tower computer eventually gave up the ghost and shrugged off this mortal coil.   The thing is that I can’t survive without my big-boy computer. I can struggle along on my notepads – as I must do when I’m travelling -- but I can generate only a fraction of the throughput I manage on my primary setup. If you couple this with the fact that I am a man of little patience, who is not prepared to wait several days to obtain a new machine, you can see we have a problem.   Of course one can find computers at places like Best-Buy and Walmart, but these are pretty much generic boxes targeted at the masses. These machines may be OK for home use, but I haven’t had much luck over the years using them in a grueling professional environment.   Fortunately, I have a chum called Daniel Imsand who works at a local company called GigaParts . This is an interesting organization with two faces to it. On one hand it is the largest independent ham radio distributor in the USA (and possibly in the world). On the other it builds and sells kick-ass PCs. The GigaParts Zero Systems brand is divided into three categories: Zero Home PCs, Zero Gaming PCs, and Zero Workstations.   Daniel is the product manager for all of GigaParts' Zero Systems. He is tasked with creating custom configurations with great pricing boasting the most reliable and stable components. As Daniel told me, GigaParts includes parts and labor warranty -- three years for both on the machine I ended up purchasing from them. But, given a choice, it prefers not to have to do any warranty work, so the company designs and builds its machines in such a way that they keep going, and going, and …   A lot of GigaParts' computer business involves creating custom value-added systems that it builds to order. (Apparently it does a roaring trade in professional-grade flight simulators.) But it also offers prebuilt, off-the-shelf systems sufficient to make even a grizzled old engineer like me squeal with delight. (It was not a pretty sound.)   I called Daniel on the phone. Based on his recommendation, I settled on a Zero Pro Z7 Plus machine. This little beauty boasts a quad-core Intel Core i7-4790 processor running at 3.6 GHz (be still, my beating heart). This is augmented by 16GB of DDR3-1600 RAM, an enterprise-grade Intel Pro 2500 Series 240GB SSD (solid state drive), an nVidia Quadro K620 Workstation GPU, SuperSpeed USB 3.0, and more bells and whistles than you could swing a stick at.   One thing I really like is that the company offers this machine with Microsoft Windows 7 Professional 64-Bit. (I have little regard for Windows 8 on my office machines.) As soon as I got off the phone with Daniel, I leapt into my truck and raced over to the GigaParts building. By the time I arrived, about 20 minutes later, my new machine, along with a bunch of HDMI cables and appropriate connectors, was sitting on the counter waiting for me. After undergoing a few formalities, like paying for the little scamp (thank goodness for credit cards, is all I can say), I zipped back to my office and commenced connecting everything together.     To be honest, after spending the past several months trying to keep my old machine gasping along, I've grown a little tired of crawling around under my desk, replacing parts and messing around with cables. Thus, I decided to locate this new machine on the top of my desk behind the monitors, as shown in the picture above.   I then spent the rest of the day downloading and/or reloading my various applications, like Microsoft Office, Microsoft Visio, Paint.net, and so forth. I also downloaded Mozilla Firefox, which is my preferred Web browser, and I made sure that Google.com is the default search engine that appears on the screen when I launch that browser.   Then the next day -- a brand spanking new day. Once again I'm wearing my happy face and all is now well in the Land of Max, where the colors are brighter, the butterflies are bigger, the birds sing sweeter, and the beer is plentiful and cold. I just powered up "the beast." OMG, this machine is so fast ! The password box appears on the center screen only a second or so after you've pressed the soft power button. As soon as you enter the password all three screens immediately spring to life. When I launch an application like Word or Excel, it appears on my screen in a flash. It's so fast, in fact, that I get the impression the program has launched before I've finished double-clicking its icon on my desktop.   Having said all this, I have run into one slight problem. I think this came about when I downloaded a new copy of the free PDFCreator utility that I've been using for years, but I can’t say for sure. All I know is that now, when I launch Firefox, I'm presented with the Google search engine on the initial tab, which is what I want. But if I subsequently click the '+' icon to open up a new tab, that tab appears with the loathsome Bing search engine flaunting itself in all its horrible glory. I've tried playing with the "options" settings, but for the life of me I can’t work out how to stop this from happening.   Are you aware of any problems associated with downloading PDFCreator, and do you have any ideas as to how I can banish the despicable Bing search engine back to the nether regions from whence it came?
相关资源
  • 所需E币: 0
    时间: 2023-7-5 09:01
    大小: 1.68KB
    SpringBoot+Vue3+ElementPlus打造私人分布式存储系统课程下载,2023年7月已完结,16章完整版,视频+源码+笔记下载!《SpringBoot+Vue3+ElementPlus打造私人分布式存储系统》课程将带你从项目设计、实现、优化、压力与并发安全测试、部署上线全流程打造业务俱全的网盘系统,并解决数据存储安全问题。助力你实现复杂业务与全栈技术双重提升,大大提升毕设通过率,求职面试通过率,升职加薪成功率。一致性分布式存储系统需要使用多台服务器共同存储数据,而随着服务器数量的增加,服务器出现故障的概率也在不断增加。为了保证在有服务器出现故障的情况下系统仍然可用。一般做法是把一个数据分成多份存储在不同的服务器中。但是由于故障和并行存储等情况的存在,同一个数据的多个副本之间可能存在不一致的情况。这里称保证多个副本的数据完全一致的性质为一致性。可用性分布式存储系统需要多台服务器同时工作。当服务器数量增多时,其中的一些服务器出现故障是在所难免的。我们希望这样的情况不会对整个系统造成太大的影响。在系统中的一部分节点出现故障之后,系统的整体不影响客服端的读/写请求称为可用性。分区容错性分布式存储系统中的多台服务器通过网络进行连接。但是我们无法保证网络是一直通畅的,分布式系统需要具有一定的容错性来处理网络故障带来的问题。一个令人满意的情况是,当一个网络因为故障而分解为多个部分的时候,分布式存储系统仍然能够工作。读写(Read-your-writes)一致性:如果客户端A写入了最新值,那么A的后续操作都会读取到最新值。但是其他用户(比如B或者C)可能要过一会才能看到。会话(Session)一致性:要求客户端和存储系统交互的整个会话期间保证读写一致性。如果原有会话因为某种原因失败而创建了新的会话,原有会话和新会话之间的操作不保证读写一致性。单调读(Monotonicread)一致性:如果客户端A已经读取了对象的某个值,那么后续操作不会读取到更早的值。单调写(Monotonicwrite)一致性:客户端A的写操作按顺序完成,这就意味着,对于同一个客户端的操作,存储系统的多个副本需要按照与客户单相同的顺序完成。从存储系统的角度看,一致性主要包含如下几个方面:副本一致性:存储系统的多个副本之间的数据是否一致,不一致的时间窗口等;更新顺序一致性:存储系统的多个副本之间是否按照相同的顺序执行更新操作
  • 所需E币: 0
    时间: 2023-7-4 19:12
    大小: 1.82KB
    上传者: 开心就很好了
    SpringBoot+Vue3+ElementPlus打造私人分布式存储系统视频教程下载,课程已完结,一共16章全,视频+源码+笔记下载!什么是分布式存储系统?分布式存储系统,是将数据分散存储在多台独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。数据存取与安全是数据时代的基石,个人隐私现在愈发重要,拥有属于自己的高安全性存储系统迫在眉睫。《SpringBoot+Vue3+ElementPlus打造私人分布式存储系统》课程将带你从项目设计、实现、优化、压力与并发安全测试、部署上线全流程打造业务俱全的网盘系统,并解决数据存储安全问题。助力你实现复杂业务与全栈技术双重提升,大大提升毕设通过率,求职面试通过率,升职加薪成功率。手把手带你从0到1全流程打造商业级分布式数据存储系统掌握网盘类项目全流程落地能力网盘项目功能设计→前后端开发→各种中间件集成→压力与并发安全测试→部署上线→运维与服务提升前后端主流技术综合实战能力VUE3.0+Element-Plus技术搭建前端SpringEvent和RocketMQ异步解耦Caffeine、Redis等缓存技术解决高并发Redis和ZooKeeper搭建分布式锁方案具备处理复杂业务问题的能力文件秒传大文件并发分片上传分布式场景生成全局唯一ID分布式、高并发场景保证数据一致性分布式存储技术与集中式存储技术的区别分布式存储技术与集中式存储技术两者的主要区别有三处:第一是数据存储量。集中式存储技术将信息数据存储在一个数据库中,数据存储量相当有限,不能满足高级别数据存储的需求。而分布式存储技术是将数据存储在零散的网络空间中,可以存储海量的数据,能满足多种级别的数据存储需求。第二是防御性。集中式存储技术的防御性低,这是因为信息数据全部集中存储在服务器中,一旦服务器感染网络病毒或是遭受黑客攻击,全部数据将会损坏或丢失,整个网络都会随之瘫痪,可能产生很严重的后果。而分布式存储技术的防御性较高,每一个节点都可以被看作一个中心,这样即使一个节点遭受攻击或数据篡改,其他中心也能够保证整体网络的正常运行,部分数据的损坏不影响其他数据的使用,有效保证了信息安全。第三是并发性能。集中式存储技术的并发性能低,不能同时读写信息数据,在查询大量数据时速度非常慢。而分布式存储技术的并发性能好,能够同时对海量数据进行读写操作。
  • 所需E币: 0
    时间: 2023-7-4 17:58
    大小: 867B
    上传者: 蝴蝶结欧恩
    分享课程——SpringBoot+Vue3+ElementPlus打造私人分布式存储系统,已完结16章,附源码+笔记。数据存取与安全是数据时代的基石,个人隐私现在愈发重要,拥有属于自己的高安全性存储系统迫在眉睫。本课程将带你从项目设计、实现、优化、压力与并发安全测试、部署上线全流程打造业务俱全的网盘系统,并解决数据存储安全问题。助力你实现复杂业务与全栈技术双重提升,大大提升毕设通过率,求职面试通过率,升职加薪成功率。手把手带你从0到1全流程打造商业级分布式数据存储系统一站式获得业务复杂,功能完备,拓展性强的极具竞争优势的项目经验一次掌握100+Web全栈开发技能点,一课收获3年的技术积累
  • 所需E币: 0
    时间: 2023-6-19 16:31
    大小: 851B
    上传者: 蝴蝶结欧恩
    分享课程——SpringBoot+Vue3+ElementPlus打造私人分布式存储系统,附源码+笔记。数据存取与安全是数据时代的基石,个人隐私现在愈发重要,拥有属于自己的高安全性存储系统迫在眉睫。本课程将带你从项目设计、实现、优化、压力与并发安全测试、部署上线全流程打造业务俱全的网盘系统,并解决数据存储安全问题。助力你实现复杂业务与全栈技术双重提升,大大提升毕设通过率,求职面试通过率,升职加薪成功率。手把手带你从0到1全流程打造商业级分布式数据存储系统一站式获得业务复杂,功能完备,拓展性强的极具竞争优势的项目经验一次掌握100+Web全栈开发技能点,一课收获3年的技术积累
  • 所需E币: 0
    时间: 2023-4-25 14:59
    大小: 908.69KB
    Optimaltuningforadoubleintegratorplusdeadtime
  • 所需E币: 0
    时间: 2023-4-22 22:57
    大小: 6.87MB
    上传者: EPTmachine
    (Developer'sLibrary)StephenPrata-CPrimerPlus-Addison-WesleyProfessional(2013)
  • 所需E币: 2
    时间: 2023-3-14 17:04
    大小: 210.74MB
    上传者: Argent
    c++PrimerPlus第六版
  • 所需E币: 1
    时间: 2023-3-8 14:47
    大小: 21.18MB
    上传者: Bullboy
    学习神经网络与深度学习的推荐书目
  • 所需E币: 1
    时间: 2022-7-23 16:04
    大小: 815.99KB
    上传者: Argent
    SEFaceplatesforE1PlusOverloadRelaysonDeviceNet
  • 所需E币: 1
    时间: 2022-7-23 16:03
    大小: 839.34KB
    上传者: Argent
    MEFaceplatesforE1PlusOverloadRelayonDeviceNet
  • 所需E币: 1
    时间: 2022-7-23 16:04
    大小: 23.54KB
    上传者: Argent
    Logix-PanelViewPlusCalculatorTool
  • 所需E币: 1
    时间: 2022-7-23 13:21
    大小: 1.84MB
    上传者: Argent
    SEFaceplates-AOIsforE3PlusOverloadRelaysonDeviceNet
  • 所需E币: 1
    时间: 2022-7-23 11:44
    大小: 1.85MB
    上传者: Argent
    MEFaceplates-AOIsforE3PlusOverloadRelays
  • 所需E币: 1
    时间: 2022-7-23 10:22
    大小: 174.17KB
    上传者: Argent
    PanelViewPluswithCompactLogixoverEtherNet-IP
  • 所需E币: 1
    时间: 2022-7-23 10:23
    大小: 374.96KB
    上传者: Argent
    PanelViewPlusUnscheduledcommunicationoverControNet
  • 所需E币: 1
    时间: 2022-7-23 10:23
    大小: 411.09KB
    上传者: Argent
    PanelViewPlusinbothmasterandslavemode
  • 所需E币: 1
    时间: 2022-7-23 10:24
    大小: 375.37KB
    上传者: Argent
    PanelViewPlusScheduledcommunication
  • 所需E币: 5
    时间: 2022-7-9 15:30
    大小: 52.42MB
    上传者: 西风瘦马
    CPrimerPlus第六版英文版.pdf
  • 所需E币: 5
    时间: 2022-7-9 15:31
    大小: 55.25MB
    上传者: 西风瘦马
    CPrimerPlus(第五版)中文版,.pdf
  • 所需E币: 0
    时间: 2022-6-2 10:27
    大小: 1.37MB
    IdentificationofOverDampedSecondOrderPlusDeadTimeProcessUsingRelayFeedBackTest