一步步教你如何使用 laradock 搭建项目环境

前言:

看群里和laravel社区有些人对docker不太会使用,在这里我推荐使用laradock来部署我们的项目环境,用laradock部署简单快捷,方便管理,可以为你省出很多时间陪陪家人。现在用laradock一步步搭建环境。

setup 1:

从github上拉去laradock项目

git clone https://github.com/laradock/laradock.git   

setup 2:

进入laradock文件夹,重命名或者复制 env-example 到 .env文件

IEEE754浮点数标准

什么是 IEEE

电气电子工程师学会(英语:Institute of Electrical and Electronics Engineers,简称为IEEE),是一个建立于196311日的国际性电子技术与电子工程师协会,亦是世界上最大的专业技术组织之一,拥有来自175个国家的42万会员。总部设立于:美国纽约市。目前IEEE在工业界所定义的标准有着极大的影响

IEEE 都发布了哪些标准?

标准代号说明
IEEE 754浮点算法规范
IEEE 802局域网和广域网
IEEE 802.11无限网络
IEEE 802.16无限宽频网络
IEEE 829软件测试文书
IEEE 896未来总线Futurebus
IEEE 1003POSIX(可移植操作系统接口)
IEEE 1076VHDL(VHSIC硬件描述语言)
IEEE 1149.1JTAG
IEEE 1275Open Firmware
IEEE 1284并口
IEEE P1363公钥密码
IEEE 1364Verilog 硬件描述语言
IEEE 1394窜行总线“火线”
IEEE 1619存储安全
IEEE 1901PLC
IEEE 12207软件生命周期过程
IEEE 1275Open Firmware

缓存一致性协议-mesi

背景

现代CPU几乎都是多核,每个核心也有自己独立的缓存(L1,L2,L3),当多个核心同时对一个数据(变量)更新时,假设核心1在核心2还未将更新的数据刷回内存之前读取了数据,并进行操作就会造成程序执行的结果不符合逾期。这对于我们程序来说,是不正确的。

字母解释

  • M:(modify)修改 -- 该缓存行有效,数据被修改了,和内存中的数据不一致,数据只存在于本缓存行中
  • E:(exclusive)独享、互斥 -- 该缓存行有效,数据和内存中的数据一致,数据只存在于本缓存行中
  • S:(shared)共享 -- 该缓存行有效,数据和内存中的数据一致,数据同时存在于其他缓存中
  • I:(invalid)无效 -- 该缓存行数据无效

优势

对于总线锁,总线锁是对整个内存进行加锁,在一个核心对一个数据进行修改的过程中,其他的核心也无法修改内存中的其他数据,这样会导致CPU处理性能严重下降。

什么情况下不可用

  1. CPU不支持缓存一致性协议
  2. 变量超过一个缓存行的大小,缓存一致性协议是针对单个缓存进行加锁。此时,缓存一致性协议无法再对该变量进行加锁,只能改用总线加锁方式。

wsl 使用实践

wsl 使用实践

wsl 是什么

wsl 全称 windows subsystem for linux,是一个可以运行在 windows 10 系统之上的,完整的 ubuntu 操作系统。

常用命令

  • wsl --list --online 列出可用的 linux 发行版

    NAME            FRIENDLY NAME
    Ubuntu          Ubuntu
    Debian          Debian GNU/Linux
    kali-linux      Kali Linux Rolling
    openSUSE-42     openSUSE Leap 42
    SLES-12         SUSE Linux Enterprise Server v12
    Ubuntu-16.04    Ubuntu 16.04 LTS
    Ubuntu-18.04    Ubuntu 18.04 LTS
    Ubuntu-20.04    Ubuntu 20.04 LTS

用go语言写的一个贪吃蛇小游戏

go-snake

游戏由来

因想给儿子写一款小游戏,就想到了用 go 写一个贪吃蛇的游戏。游戏引擎使用的是 ebiten, 它是一款 2d 的游戏引擎。
现在这个游戏只完成一些基础部分的编写,整体是能运行起来,对于一些更具体的游戏玩法和人机互动功能还未完善,后面时间多的情况下,我会逐步去完善它,添加更多的游戏交互效果。
这个游戏也让想学习 ebiten 引擎的同学提供了一些参考。

项目地址

https://github.com/AaronChengHao/gosnake

这是游戏中的截图

imageimage

这是游戏的 gif

imageimage