echobits

echobits的杂货铺

GalGame系列 简介

美少女万华镜

《美少女万华镜》(日语:美少女万華鏡)是ωstar制作的超自然学风格官能AVG游戏系列。ωstar于2011年公开系列第一部作品《被诅咒的传说少女》,接下来亦陆续推出作品《勿忘草与永远的少女》、《致曾经是少女的你》、《神明所创造的少女们》、《罪与罚的少女》、《理与迷宫的少女》。

《美少女万华镜》系列采用恋爱冒险的游戏方式。玩家在游玩的时候都需观看和聆听故事情节的发展;声音和文字会与人物和背景一同出现,用以帮助玩家了解剧情。除了《致曾经是少女的你》和最终作《理与迷宫的少女》外,玩家所扮演的角色都会在开首就进入莲华的“万花筒世界”内,然后籍此展开故事。

系列内所有作品的剧本皆由吉祥寺ドロレス所著,并由八宝备仁负责原画。《美少女万华镜》系列以色情场景及出色的CG绘制著称,此一系列的每部作品在发售当月每每能登上getchu屋视觉小说销量排行榜的首8位。

阅读全文 »

先安装openssl

系统一般自带,没安装的可以安装一下

$ sudo apt install -y openssl
$ openssl version
OpenSSL 1.1.1k  31 Mar 2021

先把文件打包压缩一下

这里我推荐压缩比较高的 bzip2

$ tar -jcf data.tar.bz2 ./data/*

打包压缩一下 当前目录下 data 文件夹下所有文件

加密

openssl aes-256-cbc -a -salt -iter 5 -in data.tar.bz2 -out data.tar.bz2.enc

此处为对称加密。系统将提示您输入两次加密密码,可以是任何您想要的密码。此命令将生成一个新的 data.tar.bz2.enc 文件作为已加密的文件。请妥善保管您输入的密码。一旦丢失,该文件则无解了。

阅读全文 »

OS版本

Ubuntu 20.04 LTS

查看已安装内核

$ dpkg --get-selections | grep linux

查看正在使用的内核

$ uname -sr

删除不用内核

$ sudo apt-get remove linux-headers-5.4.0-74 -y
$ sudo apt-get remove linux-headers-5.4.0-74-generic -y
$ sudo apt-get remove linux-image-5.4.0-74-generic -y
$ sudo apt-get remove linux-modules-5.4.0-74-generic -y
$ sudo apt-get remove linux-modules-extra-5.4.0-74-generic -y
阅读全文 »

针对内存中的临界资源,两个或者多个线程使用一个临界区时,就要为临界区加锁。锁本质也是一个变量。

乐观锁 悲观锁

乐观锁,悲观锁是一种思想。

乐观锁

并不是真的对数据上锁,而是监听数据是否发生改变,如果在使用数据期间,该数据被其它线程改动,就会放弃对该数据的操作。一般用于读多写少的环境。

悲观锁

悲观锁是只要访问一个临界区的数据就会对其上锁。一般多用于写入环境。

实际场景

在实际场景中首先考虑业务的读写要求。如果悲观锁和乐观锁都能够使用,看并发的效率,如果并发时资源竞争不激烈,可以使用乐观锁。并发冲突很严重时就要使用悲观锁,一些数据安全性很高的场景。

一般乐观锁用来做 Watch监听,Version版本号控制,CAS原子性操作,在go中的CAS原子性操作可以有效减少锁的开销,但是原子性操作是依赖于CPU性能的,会消耗CPU资源。

阅读全文 »

GC介绍

GC是垃圾回收的缩写,是各种高级编程语言所必须的一种内存清理机制。Go中GC的runtime包定义。经历过三个阶段:1.3之前使用STW标记清扫、1.5版本使用三色标记法、1.8版本之后对三色标记进行优化,加上了写屏障机制。

GC的触发条件

定时触发,内存阈值触发,手动触发

工作清扫,STW

最早的GC在回收垃圾的过程中,是不允许向堆中写入数据的,GC回收时会暂停全部的work工作线程。等回收结束再通知线程继续工作。由此导致 SWT 成为了GC性能的一个瓶颈,在每次调用GC时都会暂时停止业务。

1.3版本的GC mark and sweep

工作流程:
1. 触发GC机制后,暂停全部的业务逻辑,找出不可达的对象和可达对象。
2. 开始标记所有的可达对象。
3. 标记完成后,删除所有不可达对象。
4. 停止暂停,继续运行程序。然后等待第二次触发,循环整个清理过程,直到程序的生命周期结束。

缺点:

stw会让程序出现暂停,删除堆区会造成大量的内存碎片。

标记清扫的优化思路:

正是因为 标记清扫需要让程序暂停,出现卡顿。所以提出了一个优化方案就是将标记完成后的清扫工作与程序一并运行。在标记完成后就停止暂停,减少暂停的时间范围。

阅读全文 »

我的系统环境是 Ubuntu 20.04,并且已经安装好了GCC

下载

$ wget -c https://download.redis.io/releases/redis-6.2.5.tar.gz 
$ tar -zxf redis-6.2.5.tar.gz
$ cd redis-6.2.5

编译

直接在 redis-6.2.5 这个目录下make就可以了

$ make -j6

拷贝

编译完成后 src 目录下会出现 一些可执行文件,拷贝到 /usr/local/bin

$ sudo cp src/redis-server /usr/local/bin/
$ sudo cp src/redis-cli /usr/local/bin/ 

或者不通过拷贝的方式,我们也可以执行下面的命令达到一样的效果。

$ sudo make install
阅读全文 »

gcc版本

$ gcc --version
gcc (GCC) 12.0.0 20210722 (experimental)
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

这里默认你已经装好9以上的gcc,并配置好环境了。没GCC环境的可以参考我上篇文章 ubuntu 20.04 lts 编译gcc12

下载Linux内核

kernel.org 下载 longterm: 5.10.53/home/user/Download/kernel

cd /home/user/Download/kernel && wget -c https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.10.53.tar.xz 

解压

tar -Jxf linux-5.10.53.tar.xz && cd linux-5.10.53
阅读全文 »

这里默认你系统已经安装了gcc,没安装的运行下面的指令

$ sudo apt install -y build-essential

先准备编译环境

$ sudo apt install -y git libmpc-dev flex

git 可以从gcc官网代码仓库clone gcc源代码

$ git clone git://gcc.gnu.org/git/gcc.git gcc && pushd gcc/

配置编译环境

我是64bit环境需要使用 --disable-multilibx

$ ./configure --prefix=/usr/local/gcc12 --with-system-zlib --disable-multilib
$ make -j6 # 编译,很耗时
$ sudo make install # 安装到 /usr/local/gcc12 

/usr/local/gcc12/bin 下的可执行程序全都软链接到 /usr/bin/

$ sudo ln -sf /usr/local/gcc12/bin/gcc /usr/bin/gcc-12
$ sudo ln -sf /usr/local/gcc12/bin/g++ /usr/bin/g++-12
$ sudo ln -sf /usr/local/gcc12/bin/gcc-ar /usr/bin/gcc-ar-12
$ sudo ln -sf /usr/local/gcc12/bin/gcc-nm /usr/bin/gcc-nm-12
$ sudo ln -sf /usr/local/gcc12/bin/gcc-ranlib /usr/bin/gcc-ranlib-12
$ sudo ln -sf /usr/local/gcc12/bin/gcov /usr/bin/gcov-12
$ sudo ln -sf /usr/local/gcc12/bin/gcov-dump /usr/bin/gcov-dump-12
$ sudo ln -sf /usr/local/gcc12/bin/gcov-tool /usr/bin/gcov-tool-12
阅读全文 »

B站 (bilibili) 在6月初进行了大规模的自查工作,针对目前B站拥有的大量番剧动画进行审查后,进行了下架的处理,截止到目前为止共计有198部番剧下架,当然这个数量肯定还会增加,而且肯定还会有遗漏的地方,这里先做一个初步的汇总,一起来看看有哪些番剧不幸遭遇下架吧

对于这些被下架的番剧,定位标准不一,但总体来说的标准是禁腐和百合、校园霸凌、勾心斗角、常规的三俗、价值观不正常这类的番剧,家教和魔法少女伊莉雅都不能幸免,这个属于躺枪,但没想到魔伊作为接近fate系列IP的作品也会被下架,但是日常这部番为何会被下架,我是搞不懂。下面看具体的汇总

下架番剧名单汇总

  • 哥谭妹子第一季
  • 哥谭妹子第二季
  • 哥谭妹子第三季
  • 学战都市Asterisk
  • 学战都市Asterisk第二季
  • 初音岛
  • 初音岛 S.S.
  • 初音岛II S.S.
  • 欧西里斯的天秤
  • 欧西里斯的天秤 第二季
阅读全文 »

最近【2019 年 4 月 24 日左右发现】微博图床出问题了,访问图片链接全部是返回 403 状态码,表示拒绝访问,其实是微博图床开启了防盗链,本文就记录这个现象以及可行的解决方案。

iframe方案

Javascript源码

function showImg( url ) {
    var imgid = Math.random(),
    frameid = 'frameimg' + imgid;
    window['img'+imgid] = '<img id="img" src=\''+url+'\' /> <script> window.onload = function() { parent.document.getElementById(\''+frameid+'\').height = document.getElementById(\'img\').height+\'px\'; }<'+'/script>';
    document.write('<iframe id="'+frameid+'" src="javascript:parent[\'img'+imgid+'\'];" frameBorder="0" scrolling="no" width="100%"></iframe>');
}

调用方法

showImg('图片地址');
阅读全文 »