- Android开机流程-从Init进程启动到进入Android桌面
techfuture
Android基础架构系列androidjava机器人
1.init进程启动流程Androidbootloader负责加载boot.img,将其内容放入内存,然后启动内核。内核接管之后,会解压并加载ramdisk到内存中,然后启动用户空间的第一个进程init。在Android系统启动过程中,ramdisk.img被内核直接解压到内存中并用作初始根文件系统。这一过程不是通过挂载块设备来实现的,而是通过解压cpio档案的内容到内存中的临时文件系统(tmpf
- 一键教会OpenHarmony-4.1-Release的small系统的rootfs制作过程
wenfei11471
itopen组织1、提供OpenHarmony优雅实用的小工具2、手把手适配riscv+qemu+linux的三方库移植3、未来计划riscv+qemu+ohos的三方库移植+小程序开发4、一切拥抱开源,拥抱国产化一、rootfs制作命令small系统的rootfs制作脚本为build/ohos/packages/fs_process.py,制作的命令为build/ohos/packages/fs
- linux docker镜像管理基础
山客泛舟游Y
dockerlinux容器
linuxdocker镜像管理基础镜像的概念镜像可以理解为应用程序的集装箱,而docker用来装卸集装箱。docker镜像含有启动容器所需要的文件系统及其内容,因此,其用于创建并启动容器。docker镜像采用分层构建机制,最底层为bootfs,其上为rootfsbootfs:用于系统引导的文件系统,包括bootloader和kernel,容器启动完成后会被卸载以节约内存资源rootfs:位于boo
- ubuntu / debian 根文件系统制作
mooncity0
Linuxlinux服务器debianubuntu
一、前情提要在工作中,不可避免的需要制作各种客户需要的文件系统,常用的ubuntu、debian等主要需求有:带图形化界面不带图形化界面需提前打包一些应用依赖包进去需要提前内置一些文件或开机自启执行脚本等环境:ubuntu20.04服务器版本一、操作流程1.1构建工具下载#切换更新源sudovim/etc/apt/sources.list:%s/archive.ubuntu.com/mirrors
- CPU/内存/综合性能评估工具汇总-1:lmbench
So_shine
linux调试工具和性能量化性能优化
目录一、概括二、lmbench一、概括嵌入式开发中对要设计的产品、立项的项目进行设计时,往往需要对关键芯片进行性能评估,本文主要总结基于linux系统的产品在性能评估时的工具使用总结,在aarch64(arm64平台下测试),板卡根文件系统为debian系统。工具列表如下:名称作用git源码链接lmbench带宽测评,反应时间测评https://github.com/redrose2100/lmb
- IMX6ULL SD卡启动uboot+kernel+rootfs
xingpeng_89
IMX6ULLlinux服务器
目录1.背景说明2.SD卡启动2.1准备条件2.2对SD卡分区格式化2.3制作sd卡镜像3.效果测试1.背景说明网络上绝大数教程,教大家把uboot烧录到SD卡,然后uboot启动后,通过TFTP下载kernel和设备树,然后通过nfs挂载文件系统。很少有SD卡完整启动ubootkernel和rootfs,这里整理了一下,分享给大家。2.SD卡启动2.1准备条件①u-boot-dtb.imx②zI
- 03-10Linux的文件系统
圆缘1987
Linux的文件系统:根文件系统(rootfs):rootfilesystemLSB,FHS/boot:引导文件存放目录:内核文件(vmlinuz),引导加载器(bootloader,grub)都存放于此目录/bin:供所有用户使用的基本命令;不能关联至独立分区,OS启动会用到的程序/sbin:管理类的基本命令;不能关联至独立分区,OS启动会用到的程序/lib:基本共享库文件,以及内核模块文件(/
- 快速搭建ARM64实验平台(QEMU虚拟机+Debian)
SGchi
Linux内核调试debian
文章目录前言一、实验平台介绍二、安装步骤2.1安装工具2.2下载仓库2.3编译内核并制作根文件系统2.4运行刚才编译好的ARM64版本的Debian系统2.5在线安装软件包2.6在QEMU虚拟机和主机之间共享文件三、单步调试ARM64Linux内核参考资料前言最近翻阅笨叔的《奔跑吧Linux内核》卷2,发现了一个非常好用的ARM64的实验平台,这里对部署流程做一个记录。一、实验平台介绍该平台使用D
- Docker 命令大全
箭头大人
docker容器运维
Docker命令大全容器生命周期管理runstart/stop/restartkillrmpause/unpausecreateexec容器操作psinspecttopattacheventslogswaitexportportstats容器rootfs命令commitcpdiff镜像仓库loginpullpushsearch本地镜像管理imagesrmitagbuildhistorysavelo
- Linux第60步_“buildroot”构建根文件系统第2步_配置“buildroot下的busybox”并测试“buildroot”生成的根文件系统
LaoZhangGong123
产品研发linux服务器STM32MP157经验分享根文件系统
1、查看“buildroot下的busybox”安装路径打开终端输入“ls回车”输入“cdlinux回车/”,切换到到“linux”目录输入“ls回车”,查看“linux”目录下的文件和文件夹输入“cdbuildroot/回车”,切换到到“buildroot”目录输入“ls回车”,查看“buildroot”目录下的文件和文件夹输入“cdbuildroot-2020.02.6/回车”,切换到到“bu
- Linux第61步_“buildroot”构建根文件系统第3步_烧写根文件系统到EMMC中_并完善开发板配置
LaoZhangGong123
产品研发linuxSTM32MP157ubuntu经验分享烧录
烧录到EMMC测试,还需进一步测试和配置。1、删除rootfs”目录下的“rootfs.tar”压缩包打开第1个终端输入“ls回车”输入“cdlinux/回车”,切换到“linux”目录输入“ls回车”,列出“linux”目录下的文件和文件夹输入“cdnfs/回车”,切换到“nfs”目录输入“ls回车”,列出“nfs”目录下的文件和文件夹输入“cdrootfs/回车”,切换到“rootfs”目录输
- Linux第58步_备份busybox生成rootfs根文件系统
LaoZhangGong123
产品研发linux服务器经验分享根文件系统STM32MP157学习
备份busybox生成rootfs根文件系统打开终端输入“ls回车”输入“cdlinux/回车”输入“ls回车”,产看“linux”目录下的文件和文件夹输入“cdnfs/回车”,切换到“nfs”目录输入“ls回车”,产看“nfs”目录下的文件和文件夹输入“sudotar-vcjfrootfs-busybox.tar.bz2rootfs/回车”,将rootfs目录下的文件和文件夹打包到“rootfs
- Linux系统中 uboot、内核与文件系统之间的关系
玄奕子
嵌入式学习之Linux入门篇linuxubootLinux内核文件系统迅为电子
前言:最近正在学习Linux,总结了一下Linux系统中uboot、内核与文件系统之间的关系Linux初学者首先要搞清楚的三个文件:引导程序(bootoader):uboot.bin/uboot.imxLinux内核镜像:zlmage文件系统镜像:system.img/rootfs.tar.ba2初期很多工作都是围绕这三个知识点展开的开发环境搭建/编译系统/烧写系统不同的系统文件名会有差异设备树文
- WSL使用Centos7发行版(rootfs)
kelebukele
dockercentoswsl
参考导入要与WSL一起使用的任何Linux发行版microsoftWSL2的2.0更新彻底解决网络问题installdaemonandclientbinariesonlinuxWSL配置在HOST中,编辑用户目录下的.wslconfig文件我需要使用docker,测试发现autoMemoryReclaim只能设置为disabled时,才可以使用HOST地址访问到容器端口[experimental]
- 嵌入式Ubuntu根文件系统移植带桌面
chuantaoch
rootfsubuntulinuxrootfs
1、为什么要移植Ubuntu根文件系统相信到达这一步的人,都已经对根文件系统有了个充分的认识,已经自己从无到有创建过根文件系统了,玩过busybox的了,也可能移植过别的嵌入式文件系统了。但是,那些根文件系统要么哪个命令不支持,要么一些功能不支持,总之,达不到当前项目的需求了。于是,上网一查,顿时惊为天人,原来嵌入式设备也可以这么强了,可以移植使用Ubuntu根文件系统了,经过了网上资料,结合当前
- Linux rdev命令教程:查询/设置内核映像文件的根设备,RAM磁盘大小或视频模式(附实例详解和注意事项)
我要下东西噢
linuxlinux运维服务器
Linuxrdev命令介绍rdev是一个Linux命令,它可以用来查询/设置内核映像文件的根设备,RAM磁盘大小或视频模式。不带任何参数的rdev命令将输出当前根文件系统的/etc/mtab文件行。Linuxrdev命令适用的Linux版本rdev命令在大多数Linux发行版中都可以使用。如果在某些版本中不可用,您可能需要通过包管理器(如apt,yum,dnf或pacman)来安装它。例如,在De
- 探索 Linux Namespace:Docker 隔离的神奇背后
在深入理解Docker核心原理:Namespace、Cgroups和Rootfs一文中我们分析了Docker是由三大核心技术实现的。今天就一起分析Docker三大核心技术之一的LinuxNamespace。后续文章会演示如何从零实现一个简易的Docker,这里先简单了解下Docker的核心原理。如果你对云原生技术充满好奇,想要深入了解更多相关的文章和资讯,欢迎关注微信公众号。搜索公众号【探索云原生
- 深入理解 Docker 核心原理:Namespace、Cgroups 和 Rootfs
通过这篇文章你可以了解到Docker容器的核心实现原理,包括Namespace、Cgroups、Rootfs等三个核心功能。如果你对云原生技术充满好奇,想要深入了解更多相关的文章和资讯,欢迎关注微信公众号。扫描下方二维码或搜索公众号【探索云原生】即可订阅后续文章会演示如何从零实现一个简易的Docker,这里先简单了解下Docker的核心原理。首先我们思考一个问题:容器与进程有何不同?进程:就是程序
- 嵌入式Linux系统镜像制作(基于SD卡)
Naisu Xu
嵌入式Linux与设备相关linux服务器运维
文章目录目的原理环境准备系统镜像制作从现有SD卡备份从空白文件开始制作系统镜像使用其它补充总结目的嵌入式Linux在开发过程中对于软件方面通常是bootloader、linuxkernel、rootfs、applications分开进行处理的,但到了生产阶段这样就不方便了。比较常见的做法是将所有内容整合到一起制作成系统镜像,这样在生产的时候只要烧录系统进行即可。这篇文件将介绍基于SD卡的系统镜像制
- VMware安装OpenWrt
不忘初心_fb28
环境准备首先下载固件,网址https://downloads.openwrt.org/image-20200913094529987因为这里是VMware安装,所以下载x86-64,下载链接关于OpenWrt/LEDE固件的一些说明:combined-ext4.img.gz(rootfs工作区存储格式为ext4。)combined-squashfs.img.gz(squashfs相当于可以恢复出厂
- 2018-05-14 centos7中管理systemd 1
阿丧小威
1、systemd启动流程:POST-->BootSequence-->Bootloader-->kernel+initramfs(initrd)-->rootfs-->/sbin/initinit:CentOS5:SysVinitCentOS6:UpstartCentOS7:SystemdSystemd:系统启动和服务器守护进程管理器,负责在系统启动或运行时,激活系统资源,服务器进程和其它进程S
- SECCON-2020-kstack:userfaultfd + setxattr + double free
goodcat666
pwn_cve_kernellinuxpwn
启动脚本#!/bin/shqemu-system-x86_64\-m128M\-kernel./bzImage\-initrd./rootfs.cpio\-append"root=/dev/ramrwconsole=ttyS0oops=panicpanic=1kaslrquiet"\-cpukvm64,+smep\-netuser-netnic-devicee1000\-no-reboot\-s\
- zer0pts-2020-memo:由文件偏移处理不正确--引发的堆溢出
goodcat666
pwn_cve_kernellinuxpwn
启动脚本#!/bin/shqemu-system-x86_64\-m256M\-kernel./bzImage\-initrd./rootfs.cpio\-append"root=/dev/ramrwconsole=ttyS0oops=panicpanic=1kaslrquiet"\-cpukvm64,+smep,+smap\-monitor/dev/null\-nographic-enable-
- ncstisc-2018-babydriver:UAF
goodcat666
pwn_cve_kernellinuxpwn
启动脚本#!/bin/shqemu-system-x86_64\-initrdrootfs.cpio\-kernelbzImage\-append'console=ttyS0root=/dev/ramoops=panicpanic=1'/dev/null\-m64M--nographic\-smpcores=1,threads=1-cpukvm64,+smep只可开启了smep保护题目信息baby
- tsgctf-2021-lkgit-无锁竞争-userfaultfd
goodcat666
pwn_cve_kernellinuxpwn
启动脚本qemu-system-x86_64\-kernel./bzImage\-initrd./rootfs.cpio\-nographic\-monitor/dev/null\-cpukvm64,smep,smap\-append"console=ttyS0kaslroops=panicpanic=1quiet"\-no-reboot\-m256M题目lkgit_hash_object#def
- 搭建交叉编译环境--RK3588示范
北极星6号
linux各子系统编译linux编译交叉编译
Makefile交叉编译环境1.环境脚本buildenv.sh#1.代码路径sourceDir=/home/liuj/3_work/ok3588-linux-source/#2.交叉编译rootfs链接库syslib=$sourceDir/buildroot/output/OK3588-Ubuntu/target/libusrlib=$sourceDir/buildroot/output/OK35
- scons_交叉编译arm64_sysroot基于根文件rootfs编译方法
北极星6号
编译编译交叉编译sconsgcclinuxld链接
文章目录1.问题现象2.环境变量3.实例1:交编译arm64hello.c解决方法1:指定rootfs下的include头文件解决方法2:下载开源arm64-linux-gnu-gcc小结4.交叉编译依赖第3方库1.前言2.小知识:gcc默认搜索与支持的库3.实例:交叉编译依赖ROS的程序gcc/g++编译流程gcc/g++链接流程5.遇到的问题1.链接选项--rpath--rpath-link区
- Docker镜像分层(二)
YsDou
docker容器运维
目录一、镜像分层1.概述2.镜像内容二、Docker分层原理1.docker镜像分层2.涉及的技术①LXC②bootfs(bootfilesystem)内核空间③rootfs(rootfilesystem)内核空间④AUFS与overlay/overlay2(docker高版本)⑤overlay结构:三、联合挂载四、Dockerfile编写1.dockerfile2.dockerfile操作指令3
- docker镜像的制作
weixin_46447154
docker容器运维
镜像的概念镜像可以理解为应用程序的集装箱,而docker用来装卸集装箱。docker镜像含有启动容器所需要的文件系统及其内容,因此,其用于创建并启动容器。docker镜像采用分层构建机制,最底层为bootfs,其上为rootfsbootfs:用于系统引导的文件系统,包括bootloader和kernel,容器启动完成后会被卸载以节约内存资源rootfs:位于bootfs之上,表现为docker容器
- 扩展Vagrant虚拟机系统磁盘和根文件系统
肉啃肉er
VagrantVirtualBoxLinuxVirtualBoxVagrantFilesystemLinux
文章目录1.VBox镜像导入2.Vagrantfile示例和虚拟机创建3.修改系统磁盘大小4.扩充根文件系统:本文不会介绍如何在你的系统上安装VirtualBox和Vagrant软件,实际上安装他们是很简单的事情,只需要阅读官方文档来安装即可。总之,安装了VirtualBox和Vagrant软件之后,只需要下载并导入特定的操作系统的VBox镜像,就可以使用Vagrant来快速在VirtualBox
- VMware Workstation 11 或者 VMware Player 7安装MAC OS X 10.10 Yosemite
iwindyforest
vmwaremac os10.10workstationplayer
最近尝试了下VMware下安装MacOS 系统,
安装过程中发现网上可供参考的文章都是VMware Workstation 10以下, MacOS X 10.9以下的文章,
只能提供大概的思路, 但是实际安装起来由于版本问题, 走了不少弯路, 所以我尝试写以下总结, 希望能给有兴趣安装OSX的人提供一点帮助。
写在前面的话:
其实安装好后发现, 由于我的th
- 关于《基于模型驱动的B/S在线开发平台》源代码开源的疑虑?
deathwknight
JavaScriptjava框架
本人从学习Java开发到现在已有10年整,从一个要自学 java买成javascript的小菜鸟,成长为只会java和javascript语言的老菜鸟(个人邮箱:
[email protected])
一路走来,跌跌撞撞。用自己的三年多业余时间,瞎搞一个小东西(基于模型驱动的B/S在线开发平台,非MVC框架、非代码生成)。希望与大家一起分享,同时有许些疑虑,希望有人可以交流下
平台
- 如何把maven项目转成web项目
Kai_Ge
mavenMyEclipse
创建Web工程,使用eclipse ee创建maven web工程 1.右键项目,选择Project Facets,点击Convert to faceted from 2.更改Dynamic Web Module的Version为2.5.(3.0为Java7的,Tomcat6不支持). 如果提示错误,可能需要在Java Compiler设置Compiler compl
- 主管???
Array_06
工作
转载:http://www.blogjava.net/fastzch/archive/2010/11/25/339054.html
很久以前跟同事参加的培训,同事整理得很详细,必须得转!
前段时间,公司有组织中高阶主管及其培养干部进行了为期三天的管理训练培训。三天的课程下来,虽然内容较多,因对老师三天来的课程内容深有感触,故借着整理学习心得的机会,将三天来的培训课程做了一个
- python内置函数大全
2002wmj
python
最近一直在看python的document,打算在基础方面重点看一下python的keyword、Build-in Function、Build-in Constants、Build-in Types、Build-in Exception这四个方面,其实在看的时候发现整个《The Python Standard Library》章节都是很不错的,其中描述了很多不错的主题。先把Build-in Fu
- JSP页面通过JQUERY合并行
357029540
JavaScriptjquery
在写程序的过程中我们难免会遇到在页面上合并单元行的情况,如图所示
如果对于会的同学可能很简单,但是对没有思路的同学来说还是比较麻烦的,提供一下用JQUERY实现的参考代码
function mergeCell(){
var trs = $("#table tr");
&nb
- Java基础
冰天百华
java基础
学习函数式编程
package base;
import java.text.DecimalFormat;
public class Main {
public static void main(String[] args) {
// Integer a = 4;
// Double aa = (double)a / 100000;
// Decimal
- unix时间戳相互转换
adminjun
转换unix时间戳
如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)? Java time JavaScript Math.round(new Date().getTime()/1000)
getTime()返回数值的单位是毫秒 Microsoft .NET / C# epoch = (DateTime.Now.ToUniversalTime().Ticks - 62135
- 作为一个合格程序员该做的事
aijuans
程序员
作为一个合格程序员每天该做的事 1、总结自己一天任务的完成情况 最好的方式是写工作日志,把自己今天完成了什么事情,遇见了什么问题都记录下来,日后翻看好处多多
2、考虑自己明天应该做的主要工作 把明天要做的事情列出来,并按照优先级排列,第二天应该把自己效率最高的时间分配给最重要的工作
3、考虑自己一天工作中失误的地方,并想出避免下一次再犯的方法 出错不要紧,最重
- 由html5视频播放引发的总结
ayaoxinchao
html5视频video
前言
项目中存在视频播放的功能,前期设计是以flash播放器播放视频的。但是现在由于需要兼容苹果的设备,必须采用html5的方式来播放视频。我就出于兴趣对html5播放视频做了简单的了解,不了解不知道,水真是很深。本文所记录的知识一些浅尝辄止的知识,说起来很惭愧。
视频结构
本该直接介绍html5的<video>的,但鉴于本人对视频
- 解决httpclient访问自签名https报javax.net.ssl.SSLHandshakeException: sun.security.validat
bewithme
httpclient
如果你构建了一个https协议的站点,而此站点的安全证书并不是合法的第三方证书颁发机构所签发,那么你用httpclient去访问此站点会报如下错误
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path bu
- Jedis连接池的入门级使用
bijian1013
redisredis数据库jedis
Jedis连接池操作步骤如下:
a.获取Jedis实例需要从JedisPool中获取;
b.用完Jedis实例需要返还给JedisPool;
c.如果Jedis在使用过程中出错,则也需要还给JedisPool;
packag
- 变与不变
bingyingao
不变变亲情永恒
变与不变
周末骑车转到了五年前租住的小区,曾经最爱吃的西北面馆、江西水饺、手工拉面早已不在,
各种店铺都换了好几茬,这些是变的。
三年前还很流行的一款手机在今天看起来已经落后的不像样子。
三年前还运行的好好的一家公司,今天也已经不复存在。
一座座高楼拔地而起,
- 【Scala十】Scala核心四:集合框架之List
bit1129
scala
Spark的RDD作为一个分布式不可变的数据集合,它提供的转换操作,很多是借鉴于Scala的集合框架提供的一些函数,因此,有必要对Scala的集合进行详细的了解
1. 泛型集合都是协变的,对于List而言,如果B是A的子类,那么List[B]也是List[A]的子类,即可以把List[B]的实例赋值给List[A]变量
2. 给变量赋值(注意val关键字,a,b
- Nested Functions in C
bookjovi
cclosure
Nested Functions 又称closure,属于functional language中的概念,一直以为C中是不支持closure的,现在看来我错了,不过C标准中是不支持的,而GCC支持。
既然GCC支持了closure,那么 lexical scoping自然也支持了,同时在C中label也是可以在nested functions中自由跳转的
- Java-Collections Framework学习与总结-WeakHashMap
BrokenDreams
Collections
总结这个类之前,首先看一下Java引用的相关知识。Java的引用分为四种:强引用、软引用、弱引用和虚引用。
强引用:就是常见的代码中的引用,如Object o = new Object();存在强引用的对象不会被垃圾收集
- 读《研磨设计模式》-代码笔记-解释器模式-Interpret
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
package design.pattern;
/*
* 解释器(Interpreter)模式的意图是可以按照自己定义的组合规则集合来组合可执行对象
*
* 代码示例实现XML里面1.读取单个元素的值 2.读取单个属性的值
* 多
- After Effects操作&快捷键
cherishLC
After Effects
1、快捷键官方文档
中文版:https://helpx.adobe.com/cn/after-effects/using/keyboard-shortcuts-reference.html
英文版:https://helpx.adobe.com/after-effects/using/keyboard-shortcuts-reference.html
2、常用快捷键
- Maven 常用命令
crabdave
maven
Maven 常用命令
mvn archetype:generate
mvn install
mvn clean
mvn clean complie
mvn clean test
mvn clean install
mvn clean package
mvn test
mvn package
mvn site
mvn dependency:res
- shell bad substitution
daizj
shell脚本
#!/bin/sh
/data/script/common/run_cmd.exp 192.168.13.168 "impala-shell -islave4 -q 'insert OVERWRITE table imeis.${tableName} select ${selectFields}, ds, fnv_hash(concat(cast(ds as string), im
- Java SE 第二讲(原生数据类型 Primitive Data Type)
dcj3sjt126com
java
Java SE 第二讲:
1. Windows: notepad, editplus, ultraedit, gvim
Linux: vi, vim, gedit
2. Java 中的数据类型分为两大类:
1)原生数据类型 (Primitive Data Type)
2)引用类型(对象类型) (R
- CGridView中实现批量删除
dcj3sjt126com
PHPyii
1,CGridView中的columns添加
array(
'selectableRows' => 2,
'footer' => '<button type="button" onclick="GetCheckbox();" style=&
- Java中泛型的各种使用
dyy_gusi
java泛型
Java中的泛型的使用:1.普通的泛型使用
在使用类的时候后面的<>中的类型就是我们确定的类型。
public class MyClass1<T> {//此处定义的泛型是T
private T var;
public T getVar() {
return var;
}
public void setVa
- Web开发技术十年发展历程
gcq511120594
Web浏览器数据挖掘
回顾web开发技术这十年发展历程:
Ajax
03年的时候我上六年级,那时候网吧刚在小县城的角落萌生。传奇,大话西游第一代网游一时风靡。我抱着试一试的心态给了网吧老板两块钱想申请个号玩玩,然后接下来的一个小时我一直在,注,册,账,号。
彼时网吧用的512k的带宽,注册的时候,填了一堆信息,提交,页面跳转,嘣,”您填写的信息有误,请重填”。然后跳转回注册页面,以此循环。我现在时常想,如果当时a
- openSession()与getCurrentSession()区别:
hetongfei
javaDAOHibernate
来自 http://blog.csdn.net/dy511/article/details/6166134
1.getCurrentSession创建的session会和绑定到当前线程,而openSession不会。
2. getCurrentSession创建的线程会在事务回滚或事物提交后自动关闭,而openSession必须手动关闭。
这里getCurrentSession本地事务(本地
- 第一章 安装Nginx+Lua开发环境
jinnianshilongnian
nginxluaopenresty
首先我们选择使用OpenResty,其是由Nginx核心加很多第三方模块组成,其最大的亮点是默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用。借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序。而且OpenResty提供了大量组件如Mysql、Redis、Memcached等等,使在Nginx上开发Web应用更方便更简单。目前在京东如实时价格、秒
- HSQLDB In-Process方式访问内存数据库
liyonghui160com
HSQLDB一大特色就是能够在内存中建立数据库,当然它也能将这些内存数据库保存到文件中以便实现真正的持久化。
先睹为快!
下面是一个In-Process方式访问内存数据库的代码示例:
下面代码需要引入hsqldb.jar包 (hsqldb-2.2.8)
import java.s
- Java线程的5个使用技巧
pda158
java数据结构
Java线程有哪些不太为人所知的技巧与用法? 萝卜白菜各有所爱。像我就喜欢Java。学无止境,这也是我喜欢它的一个原因。日常
工作中你所用到的工具,通常都有些你从来没有了解过的东西,比方说某个方法或者是一些有趣的用法。比如说线程。没错,就是线程。或者确切说是Thread这个类。当我们在构建高可扩展性系统的时候,通常会面临各种各样的并发编程的问题,不过我们现在所要讲的可能会略有不同。
- 开发资源大整合:编程语言篇——JavaScript(1)
shoothao
JavaScript
概述:本系列的资源整合来自于github中各个领域的大牛,来收藏你感兴趣的东西吧。
程序包管理器
管理javascript库并提供对这些库的快速使用与打包的服务。
Bower - 用于web的程序包管理。
component - 用于客户端的程序包管理,构建更好的web应用程序。
spm - 全新的静态的文件包管
- 避免使用终结函数
vahoa.ma
javajvmC++
终结函数(finalizer)通常是不可预测的,常常也是很危险的,一般情况下不是必要的。使用终结函数会导致不稳定的行为、更差的性能,以及带来移植性问题。不要把终结函数当做C++中的析构函数(destructors)的对应物。
我自己总结了一下这一条的综合性结论是这样的:
1)在涉及使用资源,使用完毕后要释放资源的情形下,首先要用一个显示的方