又见炊烟升起

导航

 

常用词汇

STR : suspend to RAM
cathode=正极;anodeshow=负极
OD = outsource dispatch,也就是外包
NTC=Negative Temperature Coefficient ,负的温度系数,即热敏电阻
ingress traffic 入站流量
egress traffic 出站流量
quad-4倍
octa - 8倍

//十六进制对应关系


0x5=0b0101

0x6=0b0110

0x7=0b0111

0x9=0b1001

0xa=0b1010

0xb=0b1011

0xc=0b1100

0xd=0b1101

0xe=0b1110

0xf =0b1111


0x0100-0000 = 16MB   (1后面6个0)

0x1000-0000 = 256MB   (1后面7个0)

1024 = 0x400

Spoofing:有能力冒充某人某物。

Tampering: 篡改,未经授权地更改

Repudiation: 抵赖,否认做过的事

Information disclosure: 信息泄露,信息被未授权访问

DOS:Denial of Service

Elevation of privilege: 权限提升

//state-of-the-art

a. 已经发展的, 最新型的

//子鼠,丑牛,寅虎,卯兔,辰龙,巳蛇,午马,未羊,申猴,酉鸡,戌狗,亥猪.

//” 一年三节“指一年中的端午、中秋、春节

//生肖:子鼠、丑牛、寅虎、卯兔、辰龙、巳蛇、午马、未羊、申猴、酉鸡、戌狗、亥猪

Private Equity,私募股权投资

sign in 签收

sign up 签约雇用

MVNO  - "移动虚拟网络运营商"(Mobile Virtual Network Operator)

AWT :Abstract Window Toolkit ,  SUN开发

对称多路处理: SMP

操作符重载operator overloading

Overload 重载

function overloading(函式多载化)

pass-by-value (传值)

pass-by-reference(传址)

generic pointers(泛型指标)

Sequence container – 顺序容器(如list,vertor,deque)

Associative container –关联容器(如map,set)

Derived class – 派生类

Constructor – 构造函数

Destructor –析构函数

Copy constructor –拷贝构造函数

Copy assignment operator – 拷贝赋值操作符

Data Encapsulation – 数据封装

泛型范式generic pattern

LAMP -  stands for Linux, Apache, MySQL, and PHP, is a robust combination of applications driven on the powerful Linux operating system.

Bill of Materials (BOM)

EMS(Electronic Manufacturing Service)

Advanced System Bus (ASB)

Advanced Peripheral Bus (APB)

AMBA:Advanced Peripheral Bus (APB)

AIC (Advanced Interrupt Controller)

CMS -  Content Management System

Top Down - 自上向下

Bottom Up - 自下向上

FP - 点函数化编程(functional programming )

FDI – 对外直接投资

Out-of-band transport:带外传输(控制信道和业务信道是两条独立信道,比如FTP使用两条独立的TCP连接)

In-band transport:带内传输(控制信道和业务信道是公共一条信道连接)

pp值- 峰峰值

rms值- 有效值

Layer-built battery 层叠电池

photovesistor  光敏电阻

spin-off n. 1.副产品2.让产易股, 抽资脱离

//l磅等于16盎司,l盎司等于28.35克

macro-economics - 宏观经济学

Microeconomics - 微观经济学

IMF - 国际货币基金组织

sanity test 是测试范围更窄的回归测试,它只关心一部分功能。sanity test通常窄而深,主要用来验证在系统经过一个小的改动后其某一部分小功能没有问题

sanity:n.神志正常;心智健康

System Architecture Evolution(SAE), 包含Evolved Packet Core(EPC)

Evolved Packet System (EPS):由LTE和SAE共同组成

// evolution 演进

revolution 革命

//PDT管交付,PDU管资源。理论上这套机制很完美。比如说PDT要去找了项目来,然后算算钱,定个合同,PDU签下合同出人来开发。这样的话,防止 PDT什么样的需求都接。同时,PDU内部也可以专注人的管理,提高水平。并且PDU可以和PDT谈合同,如果PDT的合同不好,那么PDU可以不干。

//GANSS -Galileo and Additional Navigation Satellite SystemsGLONASS - GLObal'naya NAvigatsionnaya Sputnikovaya Sistema (Engl.: Global Navigation Satellite System)

//PPPOE= point to point over ethernet

linux命令

//2个项目对比文件的差异,可以使用如下,会按照文件路径的名称排序并打印文件大小:

find / -iname "*camera*" 2>/dev/null -exec du -b {} \; | sort -k2

//grep 不要用通配符(*)等,比如当前系统已经有ais_server进程在跑了,但是用 ais 搜不到 ais_server 进程


trinket:/ # ps -ef |grep *ais*

root     4107 4070 6 22:57:22 pts/2 00:00:00 grep *ais*

trinket:/ # ps -ef |grep ais

root     4072 4070 1 22:56:30 pts/2 00:00:00 ais_server

root     4109 4070 4 22:57:24 pts/2 00:00:00 grep ais

trinket:/ #

// ps -e -o pid,ppid,command 

这里-e 选项让 ps 命令显示系统中运行的所有进程的信息。而-o pid,ppid,command 选项

告诉 ps 要显示每个进程的哪些信息——这里,我们让 ps 显示进程 ID、父进程 ID 以及进程

运行的命令行。

// top -H -p 进程号

显示进程下面有几个线程

// dmesg -T

显示易读的时间戳(可能不准确!)

//linux下添加用户时,需要加上 -m 才会创建home下文件夹:

sudo useradd -d /home/newusername -s /bin/bash -m newusername

//du可以查看文件及文件夹的大小:

du -h --max-depth=1 /usr/local/tomcat_8888/

// diff -urN old_folder new_folder > mysoft.patch

参数-u 表示使用unified 格式,-r 表示比较目录,-N 表示将不存在的文件当作空文件处理,这样新添加的文件也会出现在patch文件中。

然后在需要应用patch的地方使用下述命令即可:

patch -p0 < mysoft.patch

//git 打补丁:

方法1: git format-patch 创建补丁,对应使用 git-am 打入补丁

方法2: git diff 创建补丁,对应使用 git apply打入补丁

//发明人

对象 人物
C语言,unix Dennis Ritchie,Ken Thompson
JAVA James Gosling
C++ Bjarne Stroustrup 于贝尔实验室
GOOGLE 三驾马车(Eric Schmidt、Larry Page、Sergey Brin)
PYTHON 贵铎·范·罗萨姆(Guido van Rossum)
ubuntu 马克·舍特尔沃斯Mark Shuttleworth
晶体管之父 William Shockley,约翰.巴丁,沃尔特.布兰顿
小型机之父 Chester Gordon Bell 在DEC 研发的PDP系列和VAX系列小型机
经济学之父 亚当.斯密(Adam Smith)
Facebook创始人 马克·扎克伯格(Mark Zuckerberg)
STL Alexander Stepanov
思科创始人 斯坦福大学的Leonar Bosack 和Sandi Lerner,创立后被红杉投资买断创始人股份
甲骨文创始人 拉里·埃里森(Larry Ellison)
GNU Richard Matthew Stallman,简称RMS
克劳德·香农(Claude Shannon) 被学术届尊为信息时代之父
现代管理学之父 彼得•德鲁克
SUN首席科学家,发明了BSD,TCP/IP,csh,vi和NFS,被誉为”软件世界的爱迪生” Bill Joy
SUN的4名联合创始人 维诺德.科斯拉(Vinod Khosla) ,安迪.贝克托希尔姆, 比尔.乔伊,斯科特.麦克尼利(Scott Mcnealy)
第一台晶体管收音机和第一只硅晶体管 1954年TI公司
集成电路之父 Jack St.Clair Kilby和Robert Norton Noyce 分别独立申请专利
BASIC语言 Thomas Eugene Kurtz 和John George Kemeny
微处理器的创意及4004芯片的诞生 Intel公司的Marcian E.Hoff

//如果修改了项目代码,先 git add 你修改过的文件,再 git diff 并 git status 查看确认,然后 git commit 提交,然后输入

你的开发日志,最后 git log 再次确认。

现在教给你一个偷懒方法,那就是 git commit -a,这个命令可以直接提交所有修改,省去了你 git add 和 git diff 和 git

commit 的工序,可谓一条龙服务。

但是,此处有一点应该注意,那就是 git commit -a 无法把新增文件或文件夹加入进来,所以,如果你新增了文件或文

件夹,那么就要老老实实的先 git add .,再 git commit 喽。

//如果你觉得 git log 给出的信息太单薄了,可以使用 git log -p,这样 git 不但会给出开发日志,而且会显示每个开发版本的代码区别所在。

GDB 基本使⽤

//systemd 的系统的coredump路径是在:

/var/lib/systemd/coredump

  • 执行指令:

    • next(n): 执行行当前的语句句

    • nexti(ni): 执行行当前的汇编指令

    • step(s): 执行当前语句,但会进⼊入⼦子例程

  • 信息查看:

    • list: 查看源代码

    • disas: 查看汇编命令

    • info(i): 查看各种信息

    • whatis: 查看类型

    • x: 检查内存地址

    • display: 每次程序中断时打印⼀一遍该表达式

    • print(p): 打印表达式

  • 断点:

    • break(b): 设置断点

    • watch: 设置监视点

  • 调⽤用栈

    • backtrace: 打印调⽤用栈

    • up, down: 在调⽤用栈上移动

  • 回退

    • record: 可以记录每⼀一次执⾏行行时的环境,因此可以回退

    • reverse-next(rn): 回退语句句

    • reverse-nexti(rni): 回退汇编

//repo代码整体更新成另一个分支:

repo forall -c 'git fetch --all;git reset --hard base/DFCV_V1.0_master'

//在命令行下,可以使用Windows自带的certutil命令来计算一个文件的校验值:

certutil -hashfile D:\works\Hello.txt MD5

//报错:could not get lock /var/lib/dpkg/lock -open

解决方法:输入以下命令

    sudo rm /var/cache/apt/archives/lock

    sudo rm /var/lib/dpkg/lock

之后再安装想装的包,即可解决。

//cmake 可以可视化地查看编译的结构:

    cmake  --graphviz=test.dot

然后用xdot工具可以查看生成的test.dot 文件

//qt编译时使用哪个版本,使用 qtchooser来选择

// 查看自己的Linux的gnome或者kde等等软件的版本号,使用 apt-show-versions 软件就能看到所有的软件版本号

//开机系统的grub启动顺序,使用 grub-customizer 来控制

*gnome的jhbuild 安装后需要一个默认的配置文件,这个文件就是 https://Git.gnome.org/browse/jhbuild/plain/examples/sample.jhbuildrc (如 https://developer.gnome.org/jhbuild/stable/getting-started.html.en 所述,“If a configuration file does not exist, the defaults are used. The configuration file uses Python syntax. An example is provided, see examples/sample.jhbuildrc. Copy examples/sample.jhbuildrc to~/.config/jhbuildrc and customize as required.”),然后参考 http://worldofgnome.org/how-to-easily-install-the-very-latest-gnome-in-any-distro-with-jhbuild/

// git放弃本地修改,直接覆盖之

git fetch --all;git reset --hard origin/master

或者

    git reset HEAD ^

    git checkout -f HEAD

    git clean -dxf

//git 查询当前git仓是否与服务器端保持最新

    git remote  show origin 
或者
git remote  show base

//dos搜索文件名:

E:_project_IVI2.0 平台开发>dir /s "drive.pdf"

//linux下搜索文件内容:

find . -type f -iname "*.h" -o -iname "*.c"  | xargs grep  -irn -e "clearlooks_style_draw_box_gap" 

或者

grep -irn "xxxxx" --include "*.[ch]" ./

//如果查找某个文件并且列出详细文件情况:find xxx |xargs ls -al

//调整显示的对比度命令如下:

xgamma -gamma 0.70

其中数值的范围为:0-10.00

但该命令重启后就会失效,因此需要在用户变量下添加该命令,即在用户目录下任意含有“.bash”字样的文本内添加命令,如下操作:

vi /home/username/.bash 在尾部添加:xgamma -gamma 0.70

//Q:为啥我的nautilus地址栏只有那种输入栏的模式,而没有按钮模式?

A:

旧版本的nautilus是:

在gconf-editor中设置:/apps/nautilus/preferences/always_use_location_entry

目前新版本是在终端中输入: gsettings set org.gnome.nautilus.preferences always-use-location-entry true

//用sudo打开GUI程序很大几率上会造成权限的问题,可以使用 gksudo 来代替 sudo

//编译代码时由config.ac 用autoconf 生成configure文件,常常出现报错,可以用 autoreconf --install重新生成configure 文件,这里的--install 意思:

-i, --install    copy missing auxiliary files

//一条命令find 和ls 列出查找出来的文件:

root@nisy_matebook:/usr/include# find . -iname "struct*.h" |xargs ls -l

-rw-r--r-- 1 root root 1810 Apr 15 03:26 ./x86_64-linux-gnu/bits/struct_mutex.h

-rw-r--r-- 1 root root 2027 Apr 15 03:26 ./x86_64-linux-gnu/bits/struct_rwlock.h

docker 常用命令

//docker启动:

$ service docker restart

//搜索一个基于 Ubuntu 的镜像文件,只需要运行:

$ sudo docker search ubuntu

//下载 Ubuntu 的镜像,你需要在终端运行以下命令:

$ sudo docker pull ubuntu

//你也可以下载指定版本的 Ubuntu 镜像。运行以下命令:

$ docker pull ubuntu:18.04

//查看已经下载的镜像列表,可以使用以下命令:

$ sudo docker images

//通过下面的命令来使用其标签来启动:

$ sudo docker run -t -i ubuntu:latest /bin/bash

或者,你可以通过镜像 ID 来启动新的容器:

$ sudo docker run -t -i 7698f282e524 /bin/bash

//查看正在运行的容器:

$ sudo docker ps

//查看所有正在运行和停止运行的容器:

$ sudo docker ps -a

//在宿主机中断容器的执行:

$ sudo docker stop

//如果想要进入正在运行的容器中,你只需要运行:

$ sudo docker attach 32fc32ad0d54

当你在容器中想要退出时,只需要在容器内的终端中输入命令:

# exit

//停止容器:

$ sudo docker stop 3d24b3de0bfc

停止该容器:

$ sudo docker stop 3d24b3de0bfc

//列出已经下载的镜像:

$ sudo docker images

使用镜像 ID 来删除镜像。

$ sudo docekr rmi ce5aa74a48f1

//查看一下所有的容器(包含所有的正在运行和已经停止的容器):

$ sudo docker pa -a

//删除容器:

$ sudo docker rm 12e892156219

我们再来检查一下本机存在的镜像:

$ sudo docker images

//测试docker环境: docker run hello-world

root@nisy-ubuntu:/home/nisy# docker run hello-world

Hello from Docker!

This message shows that your installation appears to be working correctly.

常用linux命令options


less -N 文件名 //显示文件并且带行号

// linux常用命令全拼:

pwd:print work directory 打印当前目录 显示出当前工作目录的绝对路径

ps: process status(进程状态,类似于windows的任务管理器)

常用参数:-auxf

ps -auxf 显示进程状态

df: disk free 其功能是显示磁盘可用空间数目信息及空间结点信息。换句话说,就是报告在任何安装的设备或目录中,还剩多少自由的空间。

du: Disk usage

rpm:即RedHat Package Management,是RedHat的发明之一

rmdir:Remove Directory(删除目录)

rm:Remove(删除目录或文件)

cat: concatenate 连锁

cat file1file2>>file3 把文件1和文件2的内容联合起来放到file3中

insmod: install module,载入模块

ln -s : link -soft 创建一个软链接,相当于创建一个快捷方式

mkdir:Make Directory(创建目录)

man: Manual

su:Swith user(切换用户)

cd:Change directory

ls:List files

ps:Process Status

mkdir:Make directory

rmdir:Remove directory

mkfs: Make file system

fsck:File system check

uname: Unix name

lsmod: List modules

mv: Move file

rm: Remove file

cp: Copy file

ln: Link files

fg: Foreground

bg: Background

chown: Change owner

chgrp: Change group

chmod: Change mode

umount: Unmount

dd: 本来应根据其功能描述“Convert an copy”命名为“cc”,但“cc”已经被用以代表“CComplier”,所以命名为“dd”

tar:Tape archive (磁带档案)

ldd:List dynamic dependencies

insmod:Install module

rmmod:Remove module

lsmod:List module

文件结尾的”rc”(如.bashrc、.xinitrc等):Resource configuration

Knnxxx /Snnxxx(位于rcx.d目录下):K(Kill);S(Service);

nn(执行顺序号);xxx(服务标识)

.a(扩展名a):Archive,static library

.so(扩展名so):Shared object,dynamically linked library

.o(扩展名o):Object file,complied result of C/C++ source file

RPM:Red hat package manager

dpkg:Debian package manager

apt:Advanced package tool(Debian或基于Debian的发行版中提供)

bin = Binaries (二进制文件)

/dev = Devices (设备)

/etc = Etcetera (等等)

/lib = LIBrary

/proc = Processes

/sbin = Superuser Binaries (超级用户的二进制文件)

/tmp = Temporary (临时)

/usr = Unix Shared Resources

/var = Variable (变量)

FIFO = First In, First Out

GRUB = GRand Unified Bootloader

IFS= Internal Field Seperators

LILO = LInux LOader

MySQL = My 是最初作者女儿的名字,

SQL = Structured QueryLanguage

PHP = Personal Home Page Tools = PHP HypertextPreprocessor

PS = Prompt String

Perl = “Pratical Extraction and Report Language”(实际的抽取和报告语言) =”Pathologically Eclectic Rubbish Lister”

Python 得名于电视剧Monty Python’s Flying Circus

Tcl = Tool Command Language

Tk = ToolKit

VT = Video Terminal

YaST = Yet Another Setup Tool

apache = “a patchy” server

apt = Advanced Packaging Tool

ar = archiver

as = assembler

awk = “Aho Weiberger and Kernighan”三个作者的姓的第一个字母

bash = Bourne Again SHell

bc = Basic (Better) Calculator

bg = BackGround

biff = 作者HeidiStettner在U.C.Berkely养的一条狗,喜欢对邮递员汪汪叫。

cal = Calendar (日历)

cat = Catenate (链接)

cd = Change Directory

chgrp = Change Group

chmod = Change Mode

chown = Change Owner

chsh = Change Shell

cmp = compare

cobra = Common Object Request BrokerArchitecture

comm = common

cp = Copy

cpio = CoPy In and Out

cpp = C Pre Processor

cron = Chronos 希腊文时间

cups = Common Unix Printing System

cvs = Current Version System

daemon = Disk And Execution MONitor

dc = Desk Calculator

dd = Disk Dump (磁盘转储)

df = Disk Free

diff = Difference

dmesg = diagnostic message

du = Disk Usage

ed = editor

egrep = Extended GREP

elf = Extensible Linking Format

elm = ELectronic Mail

emacs = Editor MACroS

eval = EVALuate

ex = EXtended

exec = EXECute (执行)

fd = file descriptors

fg = ForeGround

fgrep = Fixed GREP

fmt = format

fsck = File System ChecK

fstab = FileSystem TABle

fvwm = F\*\*\* Virtual Window Manager

gawk = GNU AWK

gpg = GNU Privacy Guard

groff = GNU troff

hal = Hardware Abstraction Layer

joe = Joe’s Own Editor

ksh = Korn SHell

lame = Lame Ain’t an MP3 Encoder

lex = LEXical analyser

lisp = LISt Processing = Lots of IrritatingSuperfluous Parentheses

ln = Link

lpr = Line PRint

ls = list

lsof = LiSt Open Files

m4 = Macro processor Version 4

man = MANual pages

mawk = Mike Brennan’s AWK

mc = Midnight Commander

mkfs = MaKe FileSystem

mknod = Make Node

motd = Message of The Day

mozilla = MOsaic GodZILLa

mtab = Mount TABle

mv = Move

nano = Nano’s ANOther editor

nawk = New AWK

nl = Number of Lines

nm = names

nohup = No HangUP

nroff = New ROFF

od = Octal Dump

passwd = Passwd

pg = pager

pico = PIne’s message COmposition editor

pine = “Program for Internet News \&Email” = “Pine is not Elm”

ping = 拟声 又 = Packet Internet Grouper

pirntcap = PRINTer CAPability

popd = POP Directory

pr = pre

printf = Print Formatted

ps = Processes Status

pty = pseudo tty

pushd = PUSH Directory

pwd = Print Working Directory

rc = runcom = run command, rc还是plan9的shell

rev = REVerse

rm = ReMove

rn = Read News

roff = RunOFF

rpm = RPM Package Manager = RedHat PackageManager

rsh, rlogin, rvim中的

r = Remote

rxvt = ouR XVT

seamoneky = 我

sed = Stream Editor

seq = SEQuence

shar = Shell ARchive

slrn = S-Lang rn

ssh = Secure Shell

ssl = Secure Sockets Layer

stty = Set TTY

su = Substitute User

svn = SubVersion

tar = Tape ARchive

tcsh = TENEX C shell

tee = T (T形水管接口)

telnet = TEminaL over Network

termcap = terminal capability

terminfo = terminal information

tex = τέχνη的缩写,希腊文art

tr = traslate

troff = Typesetter new ROFF

tsort = Topological SORT

tty = TeleTypewriter

twm = Tom’s Window Manager

tz = TimeZone

udev = Userspace DEV

ulimit = User’s LIMIT

umask = User’s MASK

uniq = UNIQue

i = VIsual = Very Inconvenient

vim = Vi IMproved

wall = write all

wc = Word Count

wine = WINE Is Not an Emulator

xargs = eXtended ARGuments

xdm = X Display Manager

xlfd = X Logical Font Description

xmms = X Multimedia System

xrdb = X Resources DataBase

xwd = X Window Dump

yacc = yet another compiler compiler

Fish = the Friendly Interactive SHell

su = Switch User

//常用16进制:

1M =0x10-0000

1G =0x4000-0000

缩略语

CMSIS = Cortex Microcontroller Software Interface Standard
    
MIME = Multipurpose Internet Mail Extensions

//STEM是科学(Science),技术(Technology),工程(Engineering),数学(Mathematics)四门学科英文首字母的缩写。

STEAM代表科学(Science),技术(Technology),工程(Engineering),艺术(Arts),数学(Mathematics)。

//DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。

//crud=增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete)。

//VPS,即虚拟专用服务器(Virtual Private Server)

//FOSS= Free and Open Source Software

//smith-铁匠

如果Peterson,son是儿子的意思;德国Fitz前缀,比如Fitzgerald ,Fitz就是儿子的意思。

golden handshake (一大笔的)退休金,遣散费

bring home the bacon 养家活口

balance the books 达到收支平衡

The country is trying to balance the books by increasing taxes on its citizens.

(此国正试着透过向国民课更多的税来达到收支平衡。)

skill

//经常要做一些挂机测试并需要在cmd里有打印,但是cmd中的记录是有限制的,终于找到好办法,就是在mobaxterm中这里设置:

image

//notepad++中同时搜索多个关键字:正则表达式搜索,如:

    "SENSOR_FEATURE|suspend"

人生格言

人到事中迷,就怕没人提

后悔通常发生在自己没做的事,而不是自己做不到的事。

我们总是高估了一天能做的事,但是却低估了一年能做的事

posted on 2022-06-29 00:23  ni_sy  阅读(276)  评论(0)    收藏  举报