
1.1.1.1 操作系统OS
文章平均质量分 89
ajian005
这个作者很懒,什么都没留下…
展开
-
集群容器部署和管理(Docker&K8S)
集群容器部署和管理(Docker&K8S)集群容器部署和管理(Docker&K8S)集群容器部署和管理(Docker&K8S)原创 2022-09-01 21:06:51 · 534 阅读 · 0 评论 -
I/O系统:中断、DMA、通道
一、轮询方式 对I/O设备的程序轮询的方式,是早期的计算机系统对I/O设备的一种管理方式。它定时对各种设备轮流询问一遍有无处理要求。轮流询问之后,有要求的,则加以处理。在处理I/O设备的要求之后,处理机返回继续工作。 尽管轮询需要时间,但轮询不比I/O设备的速度要快得多,所以一般不会发生不能及时处理的问题。 当然,再快的处理机,能处理的输入输出设备的数量也是有一定限度的。而且,转载 2014-01-12 15:27:21 · 6344 阅读 · 0 评论 -
Linux的sysctl 命令参数
Linux内核通过/proc虚拟文件系统向用户导出内核信息,用户也可以通过/proc文件系统或通过sysctl命令动态配置内核。比如,如果我们想启动NAT,除了加载模块、配置防火墙外,还需要启动内核转发功能。我们有三种方法:1. 直接写/proc文件系统# echo 1 > /proc/sys/net/ipv4/ip_forward2. 利用sysctl命令# sysctl转载 2014-01-04 18:59:42 · 1530 阅读 · 0 评论 -
JVM Management API
JVM本身提供了一组管理的API,通过该API,我们可以获取得到JVM内部主要运行信息,包括内存各代的数据、JVM当前所有线程及其栈相关信息等等。各种JDK自带的剖析工具,包括jps、jstack、jinfo、jstat、jmap、jconsole等,都是基于此API开发的。本篇对这部分内容进行一个详细的说明。 参考:http://java.sun.com/javase/6/doc转载 2014-01-02 17:55:57 · 1510 阅读 · 0 评论 -
sysbench的安装和性能测试
sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。关于这个项目的详细介绍请看:http://sysbench.sourceforge.net。它主要包括以下几种方式的测试:1、cpu性能2、磁盘io性能3、调度程序性能4、内存分配及传输速度5、POSIX线程性能6、数据库性能(OLTP基准测试)目前sys原创 2013-12-17 16:53:56 · 4076 阅读 · 0 评论 -
Linux容器虚拟化技术介绍
Linux conatiners (LXC) 是在Linux平台上基于容器的虚拟化技术的未来标准,它和传统的解决方案如Linux-VServer和OpenVZ有所区别。最初的LXC技术是由IBM研发的,目前已经进入Linux内核主线,这意味着LXC技术将是目前最有竞争力的轻量级虚拟容器技术,相比较传统的VServer和OpenVZ轻量级虚拟技术(两者都需要对标准内核进行补丁),发展潜力更大。转载 2014-01-02 11:12:35 · 4297 阅读 · 0 评论 -
无名师的Unix心传
节选自《UNIX编程艺术:附录D》这些看起来有些玄妙甚至于难以理解,其实他们所描述的却是一些hack的准则:一、无名师与万行码无名师曾对来访的程序员说:“Unix传统上认为,一行shell脚本胜过万行C程序。”这个程序员自以为对C极其精通,说:“这不可能。UNIX内核正是用C实现的。”无名师回道:“确是如此。不过,UNIX传统上认为,一行shell脚本胜过万行C程序。“原创 2013-01-18 22:53:56 · 1386 阅读 · 0 评论 -
Linux虚拟化: 探索 Linux 内核虚拟机 学习 KVM 架构及其优点
M. Tim Jones, 顾问工程师, Emulex简介: Linux® 既有良好的灵活性,在虚拟化方面同样出色。但是最近,随着内核虚拟机(KVM:Kernel Virtual Machine)的出现,Linux 虚拟化的前景发生了变化。KVM 是构成主流 Linux 内核(V2.6.20)一部分的第一个虚拟化解决方案。KVM 支持 Linux 客户操作系统的虚拟化 —— 甚至支持其硬件对虚转载 2012-12-19 10:03:35 · 1620 阅读 · 0 评论 -
Linux虚拟化:虚拟化技术漫谈
林 昊翔 (linhaoxiang@hotmail.com), Linux 内核爱好者秦 君 (qinjun@cn.ibm.com), 软件工程师, IBM简介: 随着近年多核系统、集群、网格甚至云计算的广泛部署,虚拟化技术在商业应用上的优势日益体现,不仅降低了 IT 成本,而且还增强了系统安全性和可靠性,虚拟化的概念也逐渐深入到人们日常的工作与生活中。本文针对 x86 平台,首先转载 2012-12-19 10:19:24 · 1518 阅读 · 0 评论 -
Linux虚拟化: 虚拟 Linux 虚拟化方法、架构和实现概述
M. Tim Jones, 顾问工程师, Emulex简介: 虚拟化的含义丰富,应用广泛。目前虚拟化技术主要关注于服务器虚拟化,即在一个宿主计算机上提供多个独立操作系统。本文将探索虚拟化背后的思想,然后讨论实现虚拟化的一些技术。我们还将了解现有的其他一些虚拟化技术,例如 Linux 上操作系统的虚拟化。发布日期: 2010 年 9 月 20 日 级别: 中级 访问情况 :转载 2012-12-18 19:53:39 · 8728 阅读 · 0 评论 -
Linux 网络栈剖析: 使用 SCTP 优化网络 流控制传输协议结合了 TCP 和 UDP 的优点
流控制传输协议结合了 TCP 和 UDP 的优点M. Tim Jones (mtj@mtjones.com), 资深首席软件工程师, Emulex简介: 流控制传输协议(Stream Control Transmission Protocol,SCTP)是一种可靠的传输协议,它在两个端点之间提供稳定、有序的数据传递服务(非常类似于 TCP),并且可以保护数据消息边界(例如 UD转载 2012-12-18 19:43:48 · 1965 阅读 · 0 评论 -
Linux 网络栈剖析: 从 socket 到设备驱动程序
从 socket 到设备驱动程序M. Tim Jones, 顾问工程师, Emulex简介: Linux® 操作系统的最大特性之一就是它的网络栈。它最初源于 BSD 的网络栈,具有一套非常干净的接口,组织得非常好。其接口范围从协议无关层(例如通用 socket 层接口或设备层)到各种网络协议的具体层。本文将从分层角度对 Linux 网络栈的接口进行探索,并介绍其中的一些主要结构。转载 2012-12-18 19:41:06 · 2057 阅读 · 0 评论 -
Linux 进程管理剖析: Linux 同步方法剖析 内核原子,自旋锁和互斥锁
M. Tim Jones, 顾问工程师, Emulex简介: 在学习 Linux® 的过程中,您也许接触过并发(concurrency)、临界段(critical section)和锁定,但是如何在内核中使用这些概念呢?本文讨论了 2.6 版内核中可用的锁定机制,包括原子运算符(atomic operator)、自旋锁(spinlock)、读/写锁(reader/writer lock)和内核转载 2012-12-18 19:31:35 · 1151 阅读 · 0 评论 -
Linux系统调用的内核命令 : 探究SCI并添加自己的调用
M. Tim Jones, 顾问工程师, Emulex简介: Linux® 系统调用 —— 我们每天都在使用它们。不过您清楚系统调用是如何在用户空间和内核之间执行的吗?本文将探究 Linux 系统调用接口(SCI),学习如何添加新的系统调用(以及实现这种功能的其他方法),并介绍与 SCI 有关的一些工具。发布日期: 2010 年 9 月 21 日 级别: 中级 访问情况 :转载 2012-12-18 17:27:55 · 998 阅读 · 0 评论 -
内存管理内幕
2004 年 11 月 29 日本文将对 Linux? 程序员可以使用的内存管理技术进行概述,虽然关注的重点是 C 语言,但同样也适用于其他语言。文中将为您提供如何管理内存的细节,然后将进一步展示如何手工管理内存,如何使用引用计数或者内存池来半手工地管理内存,以及如何使用垃圾收集自动管理内存。为什么必须管理内存内存管理是计算机编程最为基本的领域之一。在很多脚本语言中,您不必担心内存是如转载 2012-10-30 13:37:00 · 2015 阅读 · 0 评论 -
Java Collections Framework之ArrayList源码分析(基于JDK1.6)
该类是JDK1.2中添加的类,可用于替代Vector(1.1中包含的类库) 其内部持有的也是一个数组。Hierarchy的结构如下: 该类并非线程安全的,主要含有两个字段: elementData:内部持有的数组 size:ArrayList的长度 构造函数如下: 利用该参数初始化该数组。将数组的大小设置为10,为该数组分配内存空转载 2014-01-14 18:17:51 · 1107 阅读 · 0 评论 -
Ubuntu安装及Ubuntu下常用软件安装(不断补充)及Windows相关--软件开发用途
Ubuntu下载:原创 2014-04-26 22:21:49 · 3118 阅读 · 0 评论 -
Java concurrent Framework之util.concurrent(包括atomic and locks)包概述
Package java.util.concurrent DescriptionUtility classes commonly useful in concurrent programming. This package includes a few small standardized extensible frameworks, as well as some classes that原创 2014-01-20 09:30:56 · 1925 阅读 · 0 评论 -
堆内内存(in heap cache/memory)还是堆外内存(off heap cache/memory)
堆内内存(in heap cache/memory)还是堆外内存(off heap cache/memory)? 没有GC的map OpenHFT公司提供三个开源库:Chronicle Queue、Chronicle Map和Thread Affinity,这些库可以帮助开发人员使用堆外内存来保存数据。采用堆外内存有很多好处,同时也带来挑战 堆内内存(in h原创 2016-12-01 17:40:26 · 3691 阅读 · 0 评论 -
常用备查Linux、Android、数据库命令列表(不断更新)
Linux运维管理: netstat -ln | grep mysql; netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}';NetWork: tcpdump host ip地址 and port 端口号 -X -s 2000 -nn -i etho | eth1 |原创 2013-05-29 12:26:15 · 7107 阅读 · 0 评论 -
StuQ 技能图谱(全套13张)
程序开发语言综述.jpg前端工程师必备技能.jpg大数据工程师必备技能.jpg安全工程师必备技能.jpg嵌入式开发必备技能.jpgiOS开发工程师必备技能.jpg移动无线测试工程师必备技能.jpg云计算工程师必备技能.jpg微服务架构技能图谱.jp转载 2016-04-21 14:37:47 · 31429 阅读 · 3 评论 -
C10K、C100K, C1000K=C1M,C10M( concurrent 10M connections)....千万级并发实现的秘密:内核不是解决方案,而是问题所在!
参考资料: The C10K problem: http://www.kegel.com/c10k.html C1M http://www.blogjava.net/yongboy/category/54842.html原创 2016-05-18 16:28:22 · 5822 阅读 · 0 评论 -
Linux sysctl.conf优化方案
Sysctl是一个允许您改变正在运行中的Linux系统的接口。它包含一些 TCP/IP 堆栈和虚拟内存系统的高级选项, 这可以让有经验的管理员提高引人注目的系统性能。用sysctl可以读取设置超过五百个系统变量。基于这点,sysctl(8) 提供两个功能:读取和修改系统设置。查看所有可读变量:% sysctl -a读一个指定的变量,例如 kern.maxproc: % sysc转载 2014-01-04 19:05:14 · 1854 阅读 · 0 评论 -
nginx架构(修改版)
英文:http://www.aosabook.org/en/nginx.htmlnginx(发音为“engine x”)是一个免费的开源Web服务器,由俄罗斯软件工程师Igor Sysoev编写。其在2004年向公众推出以来,nginx一直专注于高性能,高并发性和低内存占用。 Web服务器功能之上的附加功能,如负载均衡,缓存,访问和带宽控制的能力,以及有能力有效整合各种应用,这些都有助于使原创 2015-01-11 20:51:27 · 1551 阅读 · 0 评论 -
Linux epoll浅析(收集整理版)
Linux epoll详解一、什么是epollepoll是什么?按照man手册的说法:是为处理大批量句柄而作了改进的poll。当然,这不是2.6内核才有的,它是在2.5.44内核中被引进的(epoll(4) is a new API introduced in Linuxkernel 2.5.44),它几乎具备了之前所说的一切优点,被公认为Linux2.6下性能最好的多路I原创 2014-07-02 11:17:15 · 1428 阅读 · 0 评论 -
深入java虚拟机第二版阅读笔记(不断整理中)
1 class文件是如何被调入内存执行的? 加载原理? 深入探讨 Java 类加载器:http://www.ibm.com/developerworks/cn/java/j-lo-classloader/ 深入Java虚拟机JVM类加载初始化学习笔记 http://developer.51cto.com/art/201103/249613.htm2 类的静态方法和静态变量的初始化是原创 2014-03-05 11:25:30 · 2491 阅读 · 0 评论 -
操作系统内存管理——分区、页式、段式、段页式管理
1. 内存管理方法 内存管理主要包括虚地址、地址变换、内存分配和回收、内存扩充、内存共享和保护等功能。 2. 连续分配存储管理方式 连续分配是指为一个用户程序分配连续的内存空间。连续分配有单一连续存储管理和分区式储管理两种方式。2.1 单一连续存储管理 在这种管理方式中,内存被分为两个区域:系统区和用户区。应用程序装入到用户区,可转载 2014-01-13 22:19:42 · 5494 阅读 · 0 评论 -
I/O子系统:select,poll,epoll,kqueue, iocp(Windows)及各种I/O复用机制 模式Reactor Proactor
首先,介绍几种常见的I/O模型及其区别,如下:《Unix网络编程》blocking I/Ononblocking I/OI/O multiplexing (select and poll)signal driven I/O (SIGIO)asynchronous I/O (the POSIX aio_functions)读数据的例子blo转载 2014-01-12 17:04:09 · 3903 阅读 · 1 评论 -
并发导论
原文出处: ifeve 寻寒(@小疯子诗人) 写在前面的话 由于之前工作中的疏忽,在使用Java多线程并发的时候出了问题,遂决心全面学习并发相关知识。写作本文的意图只是希望在写作过程中把想不清楚或是一时无法掌握的地方反复揣摩记录下来。写作本文参考的各种资料较多,抱歉的是文末的参考文献中对一些叫不上名字或没有出处的资料文献并未列举出来。由于本人是初入职场的菜鸟,更是并发的门外汉,转载 2014-01-28 17:50:30 · 1523 阅读 · 0 评论 -
Java concurrent Framework 基础知识之进程管理
http://www.cnblogs.com/forstudy/archive/2012/04/05/2433853.html原创 2014-01-16 21:34:08 · 4556 阅读 · 0 评论 -
Linux内存管理:Linux 可加载内核模块剖析:2.6 内核透视图
M. Tim Jones, 顾问工程师, Emulex Corp.简介: Linux® 可加载内核模块(从内核的 1.2 版本开始引入)是 Linux 内核的最重要创新之一。它们提供了可伸缩的、动态的内核。探索隐藏在可加载模块后面的原理,并学习这些独立的对象如何动态地转换成 Linux 内核的一部分。发布日期: 2008 年 8 月 07 日 级别: 中级 访问情况 : 1转载 2012-12-18 18:07:48 · 903 阅读 · 0 评论 -
Linux 文件系统剖析: Linux flash 文件系统剖析 选择和架构
选择和架构M. Tim Jones, 顾问工程师, Emulex Corp.简介: 您之前可能听说过 Journaling Flash File System(JFFS)和 Yet Another Flash File System(YAFFS),但是您知道使用底层 flash 设备的文件系统意味着什么吗?本文将向您介绍 Linux® 的 flash 文件系统,并探索它们如何通过平转载 2012-12-18 19:25:04 · 1032 阅读 · 0 评论 -
Linux 2.6.36内核优化指南
Linux 2.6.36内核优化指南作者:KenWuEmail: ken.wug@gmail.com转载本文档请注明原文链接 http://kenwublog.com/docs/linux-kernel-2-6-36-optimization.htm! 介绍本文档是一篇关于Linux Kernel 2.6.36的最简优化指南。作者旨在编译一份性能最佳且适合程序开发用的内核(转载 2012-11-19 18:24:38 · 2510 阅读 · 0 评论 -
vi/vim 基本使用方法
vi/vim 基本使用方法本文介绍了vi (vim)的基本使用方法,但对于普通用户来说基本上够了!vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本转载 2012-11-17 19:05:52 · 2191 阅读 · 0 评论 -
linux gcc编译C程序 分享
一个c语言程序从源文件到生成可执行文件,编译器需要共经历4个步骤:1) 预处理:把c文件中预处理命令扫描处理完毕,即对源代码文件中的文件包含(#include)、预编译语句(如宏定义#define等)进行分析,此时生成的文件仍然是可读的。2) 编译:把预处理后的结果编译成汇编或者目标模块,即生成汇编语言文件,此时生成的文件仍然是可读的汇编文件。3) 汇编:把编译出来的结果汇编成具体CP转载 2012-11-17 19:21:41 · 1061 阅读 · 0 评论 -
用 GDB 调试程序
原著:Rick McMullin用 gdb 调试 GCC 程序 Linux 包含了一个叫 gdb 的 GNU 调试程序. gdb 是一个用来调试 C 和 C++ 程序的强力调试器. 它使你能在程序运行时观察程序的内部结构和内存的使用情况. 以下是 gdb 所提供的一些功能:它使你能监视你程序中变量的值.它使你能设置断点以使程序在指定的代码行上停止执行.它使你能一行行的执行你的转载 2012-11-17 22:15:11 · 1036 阅读 · 0 评论 -
x86机器(VMware安装Linux系统)启动日志、日志分析、故障分析
环境描述安装环境:VMware5.5.3 build-34685 虚拟机内资源:1G内存 7G硬盘空间 CPU 2核 OS: 目的: 1 熟悉Linux安装 2 熟悉Linux启动顺序 3 理解Linux启动原理 4 试着解决Linux启动不起来等故障启动日志---------------------Power On--------原创 2012-11-14 15:27:31 · 3951 阅读 · 1 评论 -
Linux 下通过脚本实现远程自动备份
考虑到在本机上备份数据,一旦该机器硬盘出现故障,数据无法取出。远程手动备份数据费时费力且不及时。最好的方法就是通过脚本实现远程自动互备。但远程无论是通过SSH登陆,还是通过scp拷贝文件都需要输入密码。为了克服这个问题,首先需要实现不需要密码的SSH登陆,这样就可以使用rsync,scp,rexec等命令来做的远程备份了。1. 设置无需密码的ssh登陆,方法如下:假设A,B两服务器,现转载 2012-11-14 18:11:39 · 760 阅读 · 0 评论 -
LINUX 常见问题处理
LINUX 常见问题处理1.MBR损坏或丢失 进入rescue模式 检查grub.conf文件,确保文件内容正确 grub-instll /dev/had 2.grub.conf 文件错误 grub.conf包含如下语句 root(hdX,y) #指定/boot 分区所在位置,x y代表具体的磁盘和分区 kernel /vmlinuz-2.xx.x-x.EL r转载 2012-11-14 18:09:11 · 1128 阅读 · 0 评论 -
Linux 开发环境工具 下载网址大全
软件集成开发环境(代码编辑、浏览、编译、调试)Emacs http://www.gnu.org/software/emacs/Source-Navigator 5.2b2 http://sourceforge.net/projects/sourcenavAnjuta http://anjuta.sourceforge.net(可用yu转载 2012-11-13 21:15:11 · 4242 阅读 · 0 评论