英格兰历史年表

1
2
3
4
前500-前100/	凯尔特人时期/Celts/
前100-400/	罗马时期/
500-550/	亚瑟王/King Arthur/威尔士
597/		圣奥古斯丁/St. Augustine of Canterbury/使当地人皈依基督教

400-800/七国时代

1
2
3
4
5
6
7
		诺森布里亚/Northumbria/
		麦西亚/Mercia/
		东盎格利亚/East Anglia/
		埃塞克斯/Essex/东撒克逊
		苏塞克斯/Sussex/南撒克逊
		威塞克斯/Wessex/西撒克逊
400-825/	肯特/Kent

802-1066/威塞克斯王朝Wessex, West Saxons

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
796-839/44/	爱格伯特/Egbert/770-839/70/
839-858/20/	埃塞尔沃夫/Aethelwulf/
858-860/3/	埃塞尔巴德/Aethelbald/831-860/39/
860-865/6/	埃塞尔伯特/Ethelbert/
865-871/7/	埃塞尔雷德一世/Ethelred I/
871-899/29/	阿尔弗烈德大帝/Alfred/876年埃丁顿之战击败丹麦维京海盗
900-924/25/	长者爱德华/Edward the Elder/
924-940/17/	埃塞尔斯坦/Athelstan/
940-946/	埃德蒙/
946-955/	埃德烈德/
955-959/	埃德威格/
959-975/	埃德加/King Edgar the Peaceful/
975-978/4/	殉教者爱德华/Edward the Martyr/Elfrida, wife of Edgar
978-1016/39/	埃塞尔雷德二世/Ethelred the Unready/丹麦金,Sweyn I
1016-1016/半年/	埃德蒙二世/Edmund II/
1041-1066/26/	忏悔者爱德华/Edward the Exile/
1040-1042/3/	哈罗德二世/Harold Godwinson/

1016-1042/丹麦王朝House of Denmark

1
2
3
1016-1035/20/	克努特一世/Knud II den Store/
1035-1040/6/	哈罗德一世/Harold I or Harold Harefoot/
1040-1042/3/	哈德克努特/Harthacnut,Knud III Hardeknu/

1066-1154/诺曼王朝House of Norman

1
2
3
4
1066-1087/22/	威廉一世/King William I/1027-1087/61/the Conqueror
1057-1100/44/	威廉二世/King William II/Rufus红毛王/1096年牛津大学
1068-1135/68/	亨利一世/King Henry I/Well-Educated, Beauclerc 儒雅王
1135-1154/20/	斯蒂芬/King Stephen/1097-1154/58/

金雀花王朝 House of Plantagenet
1154-1399/安茹王朝House of Anjou

1
2
3
4
5
6
7
8
1133-1189/57/	亨利二世/King Henry II/Curtmantle 短斗篷王/王子叛乱
1157-1199/10/	理查德一世/King Richard I/43/Coeur de Lion 狮心王/第三次十字军东征
1199-1216/18/	约翰/King John/1167-1216/50/Lackland 无地王/1209年剑桥大学
1216-1272/57/	亨利三世/King Henry III/1207-1272/66/Simon de Montfort/奉祖Edward the Exile
1272-1307/26/	爱德华一世/King Edward I/1239-1307/69/Long Shank/jus primae noctis, 排犹,William Wallace/开棺亚瑟王
1307-1327/21/	爱德华二世/King Edward II/1284-1327/44/同性恋
1327-1377/51/	爱德华三世/King Edward III/1312-1377/66/英法百年战争(1337-1453),黑死病
1377-1399/23/	理查德二世/King Richard II/1367-1400/34/

1399-1464/兰开斯特王朝House of Lancaster/red rose

1
2
3
1399-1413/15/	亨利四世/King Henry IV/1367-1413/47/
1413-1422/9/	亨利五世/King Henry V/1387-1422/36/
1422-1461/40/	亨利六世/King Henry VI/1421-1471/51/Joan of Arc, 玫瑰战争,亨利六世和查理七世(法王)争法国王位

1461-1485/约克王朝House of York/white rose

1
2
3
1471-1483/13/	爱德华四世/King Edward IV/1442-1483/42/The white queen
1483-1483/1/	爱德华五世/King Edward V/1470-1483/
1483-1485/3/	理查德三世/King Richard III/1452-1485/34/

1485-1603/都铎王朝House of Tudor

1
2
3
4
5
6
1485-1509/25/	亨利七世/King Henry VII/1457-1509/53/1492年哥伦布发现美洲
1509-1547/39/	亨利八世/King Henry VIII/1491-1547/57/新教/dissolved the monasteries/另一个波琳家的女孩
1547-1553/7/	爱德华六世/King Edward VI/1537-1553/17/
1553-1553/9天/	简格雷/Lady Jane Grey/1537-1554/18/被斩首
1553-1558/6/	玛丽一世/Queen Mary I/1516-1558/43/the Bloody血腥玛丽/
1558-1603/46/	伊丽莎白一世/Queen Elizabeth I/1533-1603/71/William Shakespeare(1564-1616)/苏格兰女王玛丽一世(1542-1587)被斩首

1603-1649/斯图亚特王朝House of Stewart

1
2
3
4
5
6
7
8
9
1603-1625/23/	詹姆斯一世/King James I/1566-1625/60/1620年新教徒乘"五月花号",Guy Fawkes(1570-1606)
1625-1649/25/	查理一世/King Charles I/1600-1649/50/国王被斩首,1637年郁金香事件,牛顿(1643-1727)
1649-1658/10/	奥利弗 克伦威尔/Oliver Cromwell/1599-1658/60/民主榜样,被掘尸
1658-1659/2/	理查德 克伦威尔/Richard Cromwell/1626-1712/87/
1660-1685/26/	查理二世/King Charles II/1630-1685/56/快乐王/放血烫头皮治中风致死
1685-1688/4/	詹姆斯二世/King James II/1633-1701/68/光荣革命,詹姆斯党
1689-1702/14/	威廉三世/King William III/1650-1702/53/1701年王位继承法,第二次百年战争(1689-1815)
1689-1694/5/	玛丽二世/Queen Mary II/1662-1694/33/同性恋,死于天花
1702-1714/13/	安妮女王/Queen Ann/1665-1714/50/英格兰与苏格兰议会合并

1714-1901/汉诺威王朝House of Hannover

1
2
3
4
5
6
1714-1727/14/	乔治一世/King George I/1660-1727/68/
1727-1760/34/	乔治二世/King George II/1683-1760/78/七年战争
1760-1820/61/	乔治三世/King George III/1738-1820/83/蒸汽革命(1760-1830),法国大革命(1789),美国独立,发现澳大利来,拿破仑,乾隆
1820-1830/11/	乔治四世/King George IV/1762-1830/69/
1830-1837/8/	威廉四世/King William IV/1765-1837/73/
1837-1901/65/	维多利亚女王/Queen Victoria/1819-1901/83/Oliver Twist 1838, 电气革命(1860-1910),两次鸦片战争,1845爱尔兰马铃薯歉收

萨克森 科堡 哥达王朝House of Sachsen-Coburg-Gotha

1
1901-1910/10/	爱德华七世/King Edward VII/1841-1910/70/

1910-至今/温莎王朝The House of Windsor

1
2
3
4
1910-1936/27/	乔治五世/King George V/1865-1936/72/一战(1914-1918),1921年爱尔兰独立战争,Angela's Ashes 1935
1936-1936/11月/	爱德华八世/King Edward VIII/1894-1972/79/因辛普森夫人退位
1936-1952/17/	乔治六世/King George VI/1895-1952/58/二战(1939-1945)
1926-至今/	伊丽莎白二世/Her Majesty Queen Elizabeth II/

refer to:
https://wenku.baidu.com/view/6971f5114431b90d6c85c769.html
https://baike.baidu.com/item/%E8%8B%B1%E5%9B%BD%E5%8E%86%E5%8F%B2%E5%B9%B4%E8%A1%A8/7062006
http://www.englishmonarchs.co.uk/saxon_37.html

安装程序无法自动安装 Virtual Machine Communication Interface Sockets (VSock)

http://www.catalog.update.microsoft.com/search.aspx?q=kb4474419
下载kb4474419 win7 x64版珍藏!

另外,win7 usb3总线驱动:
http://www.vmware.com/go/dl_intel_usb3_driver

refer to:
https://tieba.baidu.com/p/6031541992
https://kb.vmware.com/s/article/78708
https://support.microsoft.com/en-us/topic/sha-2-code-signing-support-update-for-windows-server-2008-r2-windows-7-and-windows-server-2008-september-23-2019-84a8aad5-d8d9-2d5c-6d78-34f9aa5f8339

how to run EuhatOfp

create three vmware guest machines for example,
ip of no.1 guest machine is 192.168.204.33
ip of no.2 guest machine is 192.168.204.34
ip of no.3 guest machine is 192.168.204.35

setup dpdk in every machine, all script and binary are in the setup directory, refer to <5. setup dpdk> in

compile ofp over dpdk in vmware

modify test/servers.cfg

1
2
3
192.168.204.33:8061
192.168.204.34:8062
192.168.204.35:8063

for every guest machine modify self ip setting in test/ofp_netwrap.cli

1
2
3
debug 0
loglevel set debug
ifconfig fp0 192.168.204.33/24

in no.1 guest machine

1
2
cd test
./release/test 0

in no.2 guest machine

1
2
cd test
./release/test 1

in no.3 guest machine

1
2
cd test
./release/test 2

then you can check the log files in test/log directory.

how to build EuhatOfp

EuhatOfp is a library for peer to peers communication framework through user space tcp stack, now implemented in OFP over DPDK.

1. build ofp over dpdk

compile ofp over dpdk in vmware

2. build EuhatOfp

1
git clone https://github.com/euhat/EuhatOfp.git

modify the paths of dpdk, odp-dpdk and ofp in test/Makefile.

1
2
3
cd test
make clean
make

compile ofp over dpdk in vmware

1. get software

1
2
git libtool automake build-essential pkg-config libssl-dev doxygen libconfig-dev libnuma-dev libpcap-dev net-tools
ln -s /usr/bin/python3 /usr/bin/python

2. compile dpdk

1
git clone http://dpdk.org/git/dpdk-stable --branch 19.11 --depth 1 dpdk-19.11

run dpdk-19.11/usertools/dpdk-setup.sh
>>> select and run "x86_64-native-linuxapp-gcc"
>>> Exit Script

3. compile odp-dpdk

1
git clone https://github.com/OpenDataPlane/odp-dpdk.git

odp-dpdk/m4/odp_dpdk.m4

1
2
3
4
5
6
7
8
9
10
11
12
13
# _ODP_DPDK_LEGACY(PATH, ACTION-IF-FOUND, ACTION-IF-NOT-FOUND)
# ------------------------------------------------------------------------
# Locate DPDK installation
AC_DEFUN([_ODP_DPDK_LEGACY], [dnl
    DPDK_CFLAGS="-isystem $1/include"
    DPDK_LIB_PATH="$1/lib"
    DPDK_LDFLAGS="-L$DPDK_LIB_PATH"
    AS_IF([test -r "$DPDK_LIB_PATH"/libdpdk.so], [dnl
        DPDK_RPATH="-Wl,-rpath,$DPDK_LIB_PATH"
        DPDK_RPATH_LT="-R$DPDK_LIB_PATH"
        DPDK_SHARED=yes],
        [test ! -r "$DPDK_LIB_PATH"/libdpdk.a], [dnl
        AC_MSG_FAILURE([Could not find DPDK])])
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#!/bin/sh
 
DPDK_PATH=/home/eu/work/dpdk/dpdk-19.11/x86_64-native-linuxapp-gcc
 
cd odp-dpdk
./bootstrap
#--enable-debug --enable-debug-print
#--without-openssl
./configure --with-dpdk-path=${DPDK_PATH} \
                --prefix=`pwd`/installed \
                --enable-debug=full \
                --enable-helper-debug \
                --enable-debug-print \
                --enable-helper-debug-print \
                --disable-shared
make install

4. compile ofp

1
git clone https://github.com/OpenFastPath/ofp.git
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/bin/sh
 
ODP_DPDK_PATH=`pwd`/odp-dpdk/installed
 
cd ofp
./bootstrap
./configure --with-odp=${ODP_DPDK_PATH} \
        --with-odp-lib=odp-dpdk \
        --disable-shared \
        --enable-debug=yes \
        --enable-sp=no \
        --prefix=`pwd`/installed
make install

5. setup dpdk

1
2
3
4
cd dpdk-19.11/x86_64-native-linuxapp-gcc/kmod
modprobe uio
insmod igb_uio.ko
ifconfig ens33 down

run dpdk-19.11/usertools/dpdk-setup.sh
>>> select and run "Setup hugepage mappings for non-NUMA systems", enter 128
>>> select and run "Bind Ethernet/Baseband/Crypto device to IGB UIO module", will display like
0000:02:01.0 '82545EM Gigabit Ethernet Controller (Copper) 100f' if=ens33 drv=e1000 unused=igb_uio,vfio-pci
>>>>>> enter 02:01.0
>>> Exit Script

6. test

let the vmware guest machine use NAT.

use ipconfig check ip settings in host machine. for example, my ip for "VMware Network Adapter VMnet8" is 192.168.204.1.

ofp/example/webserver/ofp.cli

1
2
3
debug 0
loglevel set debug
ifconfig fp0 192.168.204.33/24

ofp/example/webserver/www/aa.txt

1
Hello, the world!

ofp/example/webserver/run.sh

1
2
export www_dir=`pwd`/www
./webserver -i 0 -f ofp.cli

using web browser access

1
http://192.168.204.33:2048/aa.txt

ipad充电变绿色但长时间电量不长

ipad插上充电后,屏幕右上角电池图标显示为绿色,但这样放着过了两三个小时,电量还是不长!

大概由于天气冷的原因。

解决方法,我称之谓点火充电。就是使ipad处在插电充电状态时,在ipad里运行一个3d游戏之类的app,这样cpu和gpu都处于高速运转状态,ipad很快会升温,过几分钟看看电量百分比长没长,正常情况是会长几个百分比的,这时要么一直让3d游戏跑着,要么关掉ipad,将ipad用被子盖好,就这么一直插线充电。

从频率角度说明音程的和协性

从频率角度讲,C与高一个八度的C相差2倍。一个八度被分成12项的等比数列,公比为2^(1/12),即2的12分之一次方。
以下是各音的国际标准频率值

1
2
3
4
5
6
7
C - do - 261.6 Hz
D - re - 293.6 Hz
E - mi - 329.6 Hz
F - fa - 349.2 Hz
G - so - 392 Hz
A - la - 440 Hz
B - si - 493.8 Hz

在钢琴键盘上可以看到,C与F相差5个半音,C与G相差7个半音,我们来验算一下

1
2
3
4
5
6
7
>>> import numpy as np
>>> 261.6 * np.power(2, 5/12)
349.19410585088104 # F - 349.2 Hz
>>> 261.6 * np.power(2, 7/12)
391.95713131093993 # G - 392 Hz
>>> 261.6 * np.power(2, 9/12)
439.95700446074346 # A - 440 Hz

乐理中说

1
2
3
八度(12个半音)极完全协和
纯四度(5个半音)、纯五度(7个半音)完全协和
三全音(6个半音)不协和

为什么纯四度、纯五度协和呢?
两个音之所以协和,是因为彼此之间是简单的倍数关系,如八度是2倍的关系。
纯四度是2^(5/12)倍关系,纯五度是2^(7/12)倍关系,不是简单倍数啊!
其实,2^(5/12)约等于1+1/3即4/3,2^(7/12)约等于1+1/2即3/2
我们在python中验算一下

1
2
3
4
5
6
7
8
>>> np.power(2, 5/12)
1.3348398541700344
>>> 1+1/3
1.3333333333333333
>>> np.power(2, 7/12)
1.4983070768766815
>>> 1+1/2
1.5

另外,
1+1/5即6/5靠近2^(3/12),所以相隔小三度(3个半音)比如C键与Eb键同时发声时不难听;
1+1/4即5/4靠近2^(4/12),所以相隔大三度(4个半音)比如C键与E键同时按下不难听;
1+2/3即5/3靠近2^(9/12),所以相隔大六度(9个半音)比如C键与A键同时发声时不难听。
这是三和弦、七和弦存在的理论前提。

而三全音是2^(6/12)倍即根号2倍的关系,是无理数,所以不协和,如C键与F#键同时按下,或者F键和B键同时按下就难听。

我们举一个生活中的例子,弦长与频率成反比,我们拉直一根弦,这时我们把此弦看成数轴,原点在固定弦一端的地方,随便手捏住弦的另一处,弹此弦定为C音,手捏的点则为数轴上刻度为1的位置;再手捏的刻度为3/4处则发出F(fa)音;手捏的刻度为2/3处发出G(so)音;手捏的刻度为2处发出低一个八度的C音;而手捏刻度为1/2处发出的是高一个八度的C音。

refer to:
https://pages.mtu.edu/~suits/scales.html