<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/rss.xsl" type="text/xsl"?>
<rss version="2.0">
  <channel>
    <title>IT瘾os推荐</title>
    <link>https://itindex.net/categories/os</link>
    <description>IT社区推荐资讯 - ITIndex.net</description>
    <language>zh</language>
    <copyright>https://itindex.net/</copyright>
    <generator>https://itindex.net/</generator>
    <docs>http://backend.userland.com/rss</docs>
    <image>
      <url>https://itindex.net/images/logo.gif</url>
      <title>IT社区推荐资讯 - ITIndex.net</title>
      <link>https://itindex.net/categories/os</link>
    </image>
    <item>
      <title>容器平台选型的十大模式：Docker、DC/OS、K8S 谁与当先？（上）-社区博客-网易云</title>
      <link>https://itindex.net/detail/58811-%E5%AE%B9%E5%99%A8-%E5%B9%B3%E5%8F%B0-%E6%A8%A1%E5%BC%8F</link>
      <description>&lt;div&gt;    &lt;p&gt;作者：刘超 网易云基础服务      &lt;br /&gt;无论是在社区，还是在同客户交流的过程中，总会被问到到底什么时候该用 Docker？什么时候用虚拟机？如果使用容器，应该使用哪个容器平台？      &lt;br /&gt;       &lt;br /&gt;显而易见，我不会直接给大家一个答案，而是希望从技术角度进行分析具体的场景。例如客户是大公司还是小公司，将部署小集群还是大集群，倾向于私有云还是公有云，已经采购了 IaaS 还是没有 IaaS，IT 运维能力强还是弱，是否需要物理机、虚拟机、容器的混合部署，是一般的并发系统还是高并发，这里面所应该做的技术选型都不一样。举个例子，如果你是一个初创型的主营业务非 IT 的小公司，自然不应该花大力气在数据中心里面自己搭建一套大规模、高并发、高性能的容器平台。      &lt;br /&gt;       &lt;br /&gt;接下来，首先，我们来谈下什么情况下应该使用 Docker 的问题。      &lt;br /&gt;       &lt;br /&gt;      &lt;img src="https://nos.netease.com/cloud-website-bucket-test/20180518161044cac61b5e-31c5-4e3f-b6e6-92412d1cb886.jpg"&gt;&lt;/img&gt;      &lt;br /&gt;       &lt;br /&gt;如上图所示，左面是我们经常挂在嘴边的所谓容器的优势，但是虚拟机都能一一怼回去。      &lt;br /&gt;       &lt;br /&gt;如果部署的是一个传统的应用，这个应用启动速度慢，进程数量少，基本不更新，那么虚拟机完全能够满足需求。      &lt;br /&gt;       &lt;br /&gt;○ 应用启动慢：应用启动 15 分钟，容器本身秒级，虚拟机很多平台能优化到十几秒，两者几乎看不出差别；      &lt;br /&gt;○ 内存占用大：动不动 32G，64G 内存，一台机器跑不了几个；      &lt;br /&gt;○ 基本不更新：半年更新一次，虚拟机镜像照样能够升级和回滚；      &lt;br /&gt;○ 应用有状态：停机会丢数据，如果不知道丢了什么，就算秒级启动也没有用，照样恢复不了，而且还有可能因为丢数据，在没有修复的情况下，盲目重启带来数据混乱；      &lt;br /&gt;○ 进程数量少：两三个进程相互配置一下，不用服务发现，配置不麻烦      &lt;br /&gt;       &lt;br /&gt;如果是一个传统应用，根本没有必要花费精力去容器化，因为白花了力气，享受不到好处。      &lt;br /&gt;       &lt;br /&gt;      &lt;img src="https://nos.netease.com/cloud-website-bucket-test/20180518161057f268563c-a39f-4cd2-9efd-ecf8db8d59aa.png"&gt;&lt;/img&gt;      &lt;br /&gt;       &lt;br /&gt;那么什么情况下，才应该考虑做一些改变呢：      &lt;br /&gt;       &lt;br /&gt;传统业务突然被互联网业务冲击了，应用老是变，三天两头要更新，而且流量增大了，原来支付系统是取钱刷卡的，现在要互联网支付了，流量扩大了 N 倍。      &lt;br /&gt;       &lt;br /&gt;这种情况下就只能：拆。      &lt;br /&gt;       &lt;br /&gt;拆开了，每个子模块独自变化，相互影响变少。      &lt;br /&gt;拆开了，原来一个进程扛流量，现在多个进程一起扛。      &lt;br /&gt;       &lt;br /&gt;这被称为微服务。      &lt;br /&gt;       &lt;br /&gt;      &lt;img src="https://nos.netease.com/cloud-website-bucket-test/20180518161112f30d4533-82b9-4b7f-b14e-4da2fee0e749.jpg"&gt;&lt;/img&gt;      &lt;br /&gt;       &lt;br /&gt;微服务场景下，进程多，更新快，于是出现 100 个进程，每天一个镜像。      &lt;br /&gt;       &lt;br /&gt;容器乐了，每个容器镜像小，没什么问题，虚拟机哭了，因为虚拟机每个镜像太大了。      &lt;br /&gt;       &lt;br /&gt;所以微服务场景下，可以开始考虑用容器了。      &lt;br /&gt;       &lt;br /&gt;      &lt;img src="https://nos.netease.com/cloud-website-bucket-test/20180518161122390d15ac-9d76-4e6d-b162-56c97d826762.jpg"&gt;&lt;/img&gt;      &lt;br /&gt;       &lt;br /&gt;这时虚拟机又怒了，我不用容器了，微服务拆分之后，用 Ansible 自动部署是一样的。      &lt;br /&gt;       &lt;br /&gt;这从技术角度来讲没有任何问题，问题是从组织角度出现的。一般的公司，开发会比运维多得多，开发写完代码就不用管了，环境的部署完全是运维负责，运维为了自动化，写 Ansible 脚本来解决问题。      &lt;br /&gt;       &lt;br /&gt;然而这么多进程，又拆又合并的，更新这么快，配置总是变，Ansible 脚本也要常改，每天都上线，不得累死运维。      &lt;br /&gt;       &lt;br /&gt;所以在如此大的工作量情况下，运维很容易出错，哪怕通过自动化脚本。这时，容器就可以作为一个非常好的工具运用起来。      &lt;br /&gt;       &lt;br /&gt;除了容器从技术角度，能够使得大部分的内部配置可以放在镜像里面之外，更重要的是从流程角度，将环境配置这件事情，往前推了，推到了开发这里，要求开发完毕之后，就需要考虑环境部署的问题，而不能当甩手掌柜。      &lt;br /&gt;       &lt;br /&gt;这样做的好处就是，虽然进程多，配置变化多，更新频繁，但是对于某个模块的开发团队来讲，这个量是很小的，因为 5-10 个人专门维护这个模块的配置和更新，不容易出错。      &lt;br /&gt;       &lt;br /&gt;如果这些工作量全交给少数的运维团队，不但信息传递会使得环境配置不一致，部署量也会大非常多。      &lt;br /&gt;       &lt;br /&gt;容器是一个非常好的工具，就是让每个开发仅仅多做 5% 的工作，就能够节约运维 200% 的工作量，并且不容易出错。      &lt;br /&gt;       &lt;br /&gt;然而原来运维该做的事情开发做了，开发的老大愿意么？开发的老大会投诉运维的老大么？      &lt;br /&gt;       &lt;br /&gt;这就不是技术问题了，其实这就是 DevOps，DevOps 不是不区分开发和运维，而是公司从组织到流程能够打通，看如何合作，边界如何划分，对系统的稳定性更有好处。      &lt;br /&gt;       &lt;br /&gt;所以微服务、DevOps、容器是相辅相成，不可分割的。不是微服务，根本不需要容器，虚拟机就能搞定，不需要 DevOps，一年部署一次，开发和运维沟通再慢都能搞定。      &lt;br /&gt;       &lt;br /&gt;所以，容器的本质是基于镜像的跨环境迁移。      &lt;br /&gt;       &lt;br /&gt;镜像是容器的根本性发明，是封装和运行的标准，其它什么 namespace，cgroup，早就有了，这是技术方面。      &lt;br /&gt;       &lt;br /&gt;在流程方面，镜像是 DevOps 的良好工具。      &lt;br /&gt;       &lt;br /&gt;容器是为了跨环境迁移的，第一种迁移的场景是开发、测试、生产环境之间的迁移。如果不需要迁移，或者迁移不频繁，虚拟机镜像也行，但总是要迁移，带着几百 G 的虚拟机镜像，太大了。      &lt;br /&gt;       &lt;br /&gt;第二种迁移的场景是跨云迁移，跨公有云，跨 Region，跨两个 OpenStack 的虚拟机迁移都是非常麻烦，甚至不可能的，因为公有云不提供虚拟机镜像的下载和上传功能，而且虚拟机镜像太大了，一传传一天。      &lt;br /&gt;       &lt;br /&gt;所以跨云场景下，混合云场景下，容器也是很好的使用场景。这也同时解决了仅仅私有云资源不足，扛不住流量的问题。      &lt;br /&gt;       &lt;br /&gt;所以这是我认为的容器的本质，是最终应该使用容器的正确姿势，当然一开始你不一定完全按照这个来。      &lt;br /&gt; &lt;/p&gt;    &lt;h2&gt;模式一：公有云虚拟机&lt;/h2&gt;    &lt;p&gt;       &lt;br /&gt;适合场景：初创公司，无信息安全担忧      &lt;br /&gt;       &lt;br /&gt;如果您是一家初创公司，人员少，IT 运维能力不足，要部署的系统很少，能够花在 IT 系统上的资金有限，当然应该选择公有云的虚拟机部署，它能够解决您的如下问题：      &lt;br /&gt;       &lt;br /&gt;○ 基层 IT 资源的管理交给公有云平台，公司自身运维人员仅需要基本的 Linux 能力；      &lt;br /&gt;○ 少量的部署系统，例如 10 台以下的虚拟机，往往替换一个 war，重启 Tomcat 就能解决，如果稍微虚拟机多一点 10 到 20 台，Ansible 脚本可以很好地解决这个问题；      &lt;br /&gt;○ 公有云按量按时收费，可以在花费很少的情况下启动，并且在业务飞速扩展的时候，迅速申请大量虚拟机；      &lt;br /&gt;       &lt;br /&gt;这里所说的信息安全担忧，真的仅仅是心理的担忧，公有云往往有大量的安全机制来保证每个租户的安全隔离，只要用好了这些机制，公有云的安全性绝对大于一般公司自己搭建的数据中心，      &lt;a href="https://mp.weixin.qq.com/s?__biz=MzI1NzYzODk4OQ==&amp;mid=2247484499&amp;idx=1&amp;sn=acd6b919667bd39a47a68b84394d6b8c&amp;chksm=ea151371dd629a67f8671299643de9df789b574c0028919ffdc6645846eeffb7eecdb94b5d2c&amp;scene=21#wechat_redirect"&gt;当客户在说要安全的时候，客户在想什么？&lt;/a&gt; 这篇文章讲到了绝对的端到端解决方案。      &lt;br /&gt;       &lt;br /&gt;这里贴张图说明公有云的安全性：      &lt;br /&gt;       &lt;br /&gt;      &lt;img src="https://nos.netease.com/cloud-website-bucket-test/201805181612025e4a1595-4e84-487b-8b7d-beca8b89a7c5.jpg"&gt;&lt;/img&gt;      &lt;br /&gt; &lt;/p&gt;    &lt;h3&gt;公有云为支撑自身高并发业务积累了更强的安全防护能力和更多的安全防护经验：&lt;/h3&gt;    &lt;p&gt;       &lt;br /&gt;○ 多线 BGP，外网线路冗余      &lt;br /&gt;○ 高吞吐量的 DDoS 外网防护      &lt;br /&gt;○ 更完善的防火墙，入侵检测，WAF      &lt;br /&gt;○ 更完善的流量清洗规则      &lt;br /&gt; &lt;/p&gt;    &lt;h3&gt;公有云为支撑自身高并发业务推出了更安全、更高可靠、更高可用的 PaaS 服务：&lt;/h3&gt;    &lt;p&gt;       &lt;br /&gt;数据库：      &lt;br /&gt;○ 高可用：主备切换数据零丢失      &lt;br /&gt;○ 高可靠：同城双活，异地备份      &lt;br /&gt;○ 安全性：访问控制，IP 白名单      &lt;br /&gt;       &lt;br /&gt;对象存储：      &lt;br /&gt;○ 高可靠：超大容量，三份备份，异地同步      &lt;br /&gt;○ 安全性：访问控制，防盗链      &lt;br /&gt; &lt;/p&gt;    &lt;h3&gt;公有云为支撑自身高并发业务推出更完善的监控运维的系统，流程，经验：&lt;/h3&gt;    &lt;p&gt;       &lt;br /&gt;完善的监控系统，保障大促期间系统故障的快速定位和排障      &lt;br /&gt;保障大促能够极大的提升和训练一支有经验的运维团队      &lt;br /&gt;大促的业务层面的数据对运维也是机密的，需要流程保障&lt;/p&gt;    &lt;p&gt; &lt;/p&gt;    &lt;h3&gt;道高一尺魔高一丈，公有云为保证自身业务的安全性对云平台不断升级：&lt;/h3&gt;    &lt;p&gt;       &lt;br /&gt;○ 越来越强的 DDoS 防护      &lt;br /&gt;○ 越来越完善的防火墙规则      &lt;br /&gt;○ 最新的云平台安全功能和机制      &lt;br /&gt;○ 不断更新的虚拟机和容器镜像建设漏洞      &lt;br /&gt;○ 不断更新的病毒库      &lt;br /&gt; &lt;/p&gt;    &lt;h2&gt;模式二：无 IaaS，裸用容器&lt;/h2&gt;    &lt;p&gt;       &lt;br /&gt;适用场景：初创公司无 IaaS，有信息安全担忧      &lt;br /&gt;       &lt;br /&gt;但是即便如此，还是有初创公司或者初创项目，也许因为心理方面，也许因为合规方面，非常担心信息安全问题，还是希望采取部署在自己机房的方式。      &lt;br /&gt;       &lt;br /&gt;但由于是初创公司，在机房里面一般是不能部署 IaaS，因为 IaaS 平台的运维难度，优化难度更大，没有一个 50 人的团队根本玩不起来，所以一般在使用容器之前，采用的是物理机部署的方式，当物理机数目非常小，比如部署 5 到 10 个应用的时候手动部署或者简单脚本部署就可以，但是一旦到了 20 个应用，手动部署和简单脚本就非常麻烦了：      &lt;br /&gt;       &lt;br /&gt;○ 运维人员比例低，而应用相对较多      &lt;br /&gt;○ 部署在同一个物理机上的应用多，配置冲突，端口冲突，互相连接，运维需要一个 excel 去管理，还容易出错      &lt;br /&gt;○ 物理机容器被脚本和 Ansible 改的乱七八糟，难以保证环境一致性，重装物理机更加麻烦      &lt;br /&gt;○ 不同的应用依赖不同的操作系统和底层包，千差万别      &lt;br /&gt;       &lt;br /&gt;这个时候，可以试一下裸用容器，即在原来的脚本，或者 Ansible 里面，将启动进程，改为使用 Docker run，可以有以下的作用：      &lt;br /&gt;       &lt;br /&gt;○ 配置，端口隔离，冲突减少      &lt;br /&gt;○ 基于容器部署，使得环境一致性，安装和删除干干净净      &lt;br /&gt;○ 不同的操作系统和底层包，都可以用容器镜像搞定      &lt;br /&gt;       &lt;br /&gt;在这个阶段，最简单的方式就是把容器当做虚拟机来使用，也即先启动容器，然后在里面下载 war 包等，当然也可以更进一步，将 war 包和配置直接打在容器镜像里面，这样需要一个持续集成的流程了，不仅仅是运维的事情，开发也要参与其中。      &lt;br /&gt;       &lt;br /&gt;在这个阶段，网络的模式可以使用桥接打平的方式。      &lt;br /&gt;       &lt;br /&gt;      &lt;img src="https://nos.netease.com/cloud-website-bucket-test/20180518161217c6a50fca-a84c-489c-973f-b189c9ca881b.png"&gt;&lt;/img&gt;      &lt;br /&gt;       &lt;br /&gt;这种方式好处是访问 Docker 和访问物理机一样，可很方便地实现 Docker 里面和物理机里面的互通，兼容原来部署在物理机上的应用。      &lt;br /&gt;       &lt;br /&gt;当然 Bridge 的性能一般，如果性能要求比较高，可使用 SR-IOV 网卡嵌入容器内。      &lt;br /&gt;       &lt;br /&gt;      &lt;img src="https://nos.netease.com/cloud-website-bucket-test/20180518161228b03cd162-2dd4-44d9-ab3a-eb304c47d001.jpg"&gt;&lt;/img&gt;      &lt;br /&gt; &lt;/p&gt;    &lt;h2&gt;模式三：有 IaaS，裸用容器&lt;/h2&gt;    &lt;p&gt;       &lt;br /&gt;适用场景：创新项目，引入 DevOps 流程      &lt;br /&gt;       &lt;br /&gt;有一些公司规模大一些，已经采购了 IaaS，只不过有一些创新的项目需要部署，这种状态下，基本虚拟机已经能够满足需求，而且由于能够运维 IaaS，IT 能力比较强，一般也采用了 Ansible 等部署工具。      &lt;br /&gt;       &lt;br /&gt;这种情况下，使用容器的动力相对比较少，然而容器也是能够带来一定好处的，就是 DevOps。      &lt;br /&gt;       &lt;br /&gt;创新项目迭代速度比较快，如果有比较多的创新项目，对运维的压力也是非常大的，这里的裸用容器和模式二的裸用容器不同的是，不是拿容器当做虚拟机来用，而是将容器当做交付物来用。      &lt;br /&gt;       &lt;br /&gt;虽然容器化对于运维的整个过程来讲改进有限，但是关键就是要开发写一个 Dockerfile，这一点非常重要，意味着运行环境的配置提前到开发，而非直接交到运维，也即上面说的，开发 5% 的工作量增加减少大量运维工作，容器环境原子性升级回滚使得停服时间变短，可以保持开发、测试、运维环境的一致性。      &lt;br /&gt;       &lt;br /&gt;      &lt;img src="https://nos.netease.com/cloud-website-bucket-test/20180518161241cf744058-452e-4571-b4a8-ecd3a660b9bc.jpg"&gt;&lt;/img&gt;      &lt;br /&gt; &lt;/p&gt;    &lt;h2&gt;模式四：使用 Docker Swarm Mode&lt;/h2&gt;    &lt;p&gt;       &lt;br /&gt;适用场景：发展中公司，中等规模集群      &lt;br /&gt;       &lt;br /&gt;当集群规模超过 50 台时，裸用容器已经非常难受了，因为网络、存储、编排、服务发现等全部要靠自己的脚本或 Ansible 来搞定，是时候引入容器平台了。      &lt;br /&gt;       &lt;br /&gt;当容器平台规模不是很大时，Docker Swarm Mode 还是比较好用的：      &lt;br /&gt;       &lt;br /&gt;○ 集群的维护不需要 Zookeeper，不需要 Etcd，自己内置      &lt;br /&gt;○ 命令行和 Docker 是一样的，用起来顺手      &lt;br /&gt;○ 服务发现和 DNS 是内置的      &lt;br /&gt;○ Docker Overlay 网络是内置的      &lt;br /&gt;       &lt;br /&gt;总之 docker 帮你料理好了一切，你不用太关心细节，很容易就能够将集群运行起来。      &lt;br /&gt;       &lt;br /&gt;而且可以通过 docker 命令，像在一台机器上使用容器一样使用集群上的容器，可以随时将容器当虚拟机来使用，这样对于中等规模集群，以及运维人员还是比较友好的。      &lt;br /&gt;       &lt;br /&gt;当然内置的太多了也有缺点，就是不好定制化，不好 Debug，不好干预。当你发现有一部分性能不行时，你需要改整个代码，全部重新编译，当社区更新了，合并分支是很头疼的事情。当出现问题时，由于 Manager 大包大揽干了很多活，不知道哪一步出错了，反正就是没有返回，停在那里，如果重启整个 Manager，影响面又很大。      &lt;br /&gt;       &lt;br /&gt;      &lt;img src="https://nos.netease.com/cloud-website-bucket-test/20180518161254e3e7f353-dc69-4198-a24b-e954e8ffc511.jpg"&gt;&lt;/img&gt;      &lt;br /&gt; &lt;/p&gt;    &lt;h2&gt;模式五：使用 Marathon 和 Mesos&lt;/h2&gt;    &lt;p&gt;       &lt;br /&gt;使用场景：万节点集群，多定制      &lt;br /&gt;       &lt;br /&gt;当集群规模大一些，几百个节点时，很多人就不愿意使用 Docker Swarm Mode 了，很多的选择是既没有用 DC/OS，也没有用 Kubernetes，而是仅仅用了 Marathon 和 Mesos。      &lt;br /&gt;       &lt;br /&gt;因为 Mesos 是一个非常优秀的调度器，它的双层调度机制可以使得集群规模大很多。      &lt;br /&gt;       &lt;br /&gt;Mesos 的调度过程如图所示：      &lt;br /&gt;       &lt;br /&gt;      &lt;img src="https://nos.netease.com/cloud-website-bucket-test/2018051816130922c7e2de-6c11-45b3-ab95-a74388092756.jpg"&gt;&lt;/img&gt;      &lt;br /&gt;       &lt;br /&gt;Mesos 有 Framework、Master、Agent、Executor、Task 几部分组成。这里面有两层的 Scheduler，一层在 Master 里面，allocator 会将资源公平的分给每一个 Framework，二层在 Framework 里面，Framework 的 scheduler 将资源按规则分配给 Task。      &lt;br /&gt;       &lt;br /&gt;其它框架的调度器是直接面对整个集群，Mesos 的优势在于，第一层调度先将整个 Node 分配给一个 Framework，然后 Framework 的调度器面对的集群规模小很多，然后在里面进行二次调度，而且如果有多个 Framework，例如有多个 Marathon，则可以并行调度不冲突。      &lt;br /&gt;       &lt;br /&gt;详细的调度机制非常复杂，可以看 号称了解 mesos 双层调度的你，先来回答下面这五个问题！这篇文章。      &lt;br /&gt;       &lt;br /&gt;而且 Mesos 的架构相对松耦合，有很多可以定制化的地方，从而运维人员可以根据自己的需要开发自己的模块。详细的定制方式看文章 定制化 Mesos 任务运行的几种方法。      &lt;br /&gt;       &lt;br /&gt;这也是很多优秀的公司使用 Marathon 和 Mesos 的原因。      &lt;br /&gt;       &lt;br /&gt;例如爱奇艺、去哪儿、携程、当当等都选择了使用 Mesos，需要提一下的是，大家如果参加社区，能发现裸用 Marathon 和 Mesos 的很多，但是整个 DC/OS 都用得比较少，而用 Marathon 和 Mesos 往往不能解决一些问题，因而这些 IT 能力非常强的互联网公司做了大量的自己的定制化，增加了 Marathon 和 Mesos 的外围模块。      &lt;br /&gt; &lt;/p&gt;    &lt;h2&gt;模式六：使用开源 Kubernetes&lt;/h2&gt;    &lt;p&gt;       &lt;br /&gt;使用场景：千节点集群，少定制      &lt;br /&gt;       &lt;br /&gt;Kubernetes 模块划分得更细，模块比较多，比起裸 Marathon 和 Mesos 来讲功能丰富，而且模块之间完全的松耦合，可以非常方便地进行定制化。      &lt;br /&gt;       &lt;br /&gt;      &lt;img src="https://nos.netease.com/cloud-website-bucket-test/201805181613200c5089f5-1d5b-4435-b096-0f674ffeeb13.jpg"&gt;&lt;/img&gt;      &lt;br /&gt;       &lt;br /&gt;而且 Kubernetes 的数据结构的设计层次比较细，非常符合微服务的设计思想。例如从容器-&amp;gt;Pods-&amp;gt;Deployment-&amp;gt;Service，本来简单运行一个容器，被封装为这么多的层次，每个层次有自己的作用，每一层都可以拆分和组合，这样带来一个很大的缺点，就是学习门槛高，为了简单运行一个容器，需要先学习一大堆的概念和编排规则。      &lt;br /&gt;       &lt;br /&gt;但是当需要部署的业务越来越复杂时，场景越来越多时，你会发现 Kubernetes 这种细粒度设计的优雅，使得你能够根据自己的需要灵活的组合，而不会因为某个组件被封装好了，从而导致很难定制。例如对于 Service 来讲，除了提供内部服务之间的发现和相互访问外，还灵活设计了 headless service，这使得很多游戏需要有状态的保持长连接有了很好的方式，另外访问外部服务时，例如数据库、缓存、headless service 相当于一个 DNS，使得配置外部服务简单很多。很多配置复杂的大型应用，更复杂的不在于服务之间的相互配置，可以有 Spring Cloud 或者 Dubbo 去解决，复杂的反而是外部服务的配置，不同的环境依赖不同的外部应用，External Name 这个提供了很好的机制。      &lt;br /&gt;       &lt;br /&gt;包括统一的监控 cadvisor，统一的配置 confgMap，都是构建一个微服务所必须的。      &lt;br /&gt;       &lt;br /&gt;然而 Kubernetes 当前也有一个瓶颈——集群规模还不是多么大，官方说法是几千个节点，所以超大规模的集群，还是需要有很强的 IT 能力进行定制化，这个在模式七中会说一下我们在网易云上做的事情。但是对于中等规模的集群也足够了。      &lt;br /&gt;       &lt;br /&gt;而且 Kubernetes 社区的热度，可以使得使用开源 Kubernetes 的公司能够很快地找到帮助，等待到新功能的开发和 Bug 的解决。&lt;/p&gt;    &lt;p&gt;      &lt;br /&gt; 本文未结束，敬请期待下篇。&lt;/p&gt;&lt;/div&gt;
    &lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/58811-%E5%AE%B9%E5%99%A8-%E5%B9%B3%E5%8F%B0-%E6%A8%A1%E5%BC%8F</guid>
      <pubDate>Sat, 29 Sep 2018 13:31:16 CST</pubDate>
    </item>
    <item>
      <title>Cassandra on DC/OS</title>
      <link>https://itindex.net/detail/58598-cassandra-on-dc</link>
      <description>&lt;p&gt;  &lt;a href="http://wiki.huihoo.com/wiki/Apache_Cassandra"&gt;Apache Cassandra&lt;/a&gt; 是一个强大的开源分布式NoSQL数据库，高度的可伸展性。&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="cassandra" src="http://wiki.huihoo.com/images/a/ae/Cassandra-supplies-linear-scalability.png"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;  &lt;a href="https://docs.mesosphere.com/services/cassandra/"&gt;基于DC/OS构建其分布式集群&lt;/a&gt;是个非常值得采纳的方法，其基本思路是：&lt;/p&gt;
 &lt;p&gt;把Cassandra放到Docker里，然后由DC/OS调度Cassandra容器集群运行、管理。&lt;/p&gt;
 &lt;p&gt;Mesos 的 persistence primitives 是一个新的强大的工具，它使得更多的有状态应用可以运行在 Mesos 上。利用它，可以把 cassandra 集群改造成了一个极易扩展到数百节点的分布式持久化框架。&lt;/p&gt;
 &lt;ul&gt;
  &lt;li&gt;   &lt;a href="https://github.com/docker-library/cassandra" rel="nofollow" target="_blank"&gt;https://github.com/docker-library/cassandra&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;   &lt;a href="https://github.com/mesosphere/dcos-cassandra-service" target="_blank"&gt;https://github.com/mesosphere/dcos-cassandra-service&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
 &lt;pre&gt;  &lt;code&gt;# dcos package install cassandra
# dcos cassandra help
# dcos cassandra
# dcos cassandra pod list
# dcos cassandra pod info node-0
on master node
# docker run -ti cassandra:3.0.16 cqlsh --cqlversion=&amp;quot;3.4.0&amp;quot; 192.168.0.240

cqlsh&amp;gt; CREATE KEYSPACE demo WITH REPLICATION = { &amp;apos;class&amp;apos; : &amp;apos;SimpleStrategy&amp;apos;, &amp;apos;replication_factor&amp;apos; : 3 };

cqlsh&amp;gt; USE demo;CREATE TABLE map (key varchar, value varchar, PRIMARY KEY(key));

cqlsh:demo&amp;gt; INSERT INTO demo.map(key, value) VALUES(&amp;apos;Cassandra&amp;apos;, &amp;apos;Rocks!&amp;apos;);
cqlsh:demo&amp;gt; INSERT INTO demo.map(key, value) VALUES(&amp;apos;StaticInfrastructure&amp;apos;, &amp;apos;BeGone!&amp;apos;);
cqlsh:demo&amp;gt; INSERT INTO demo.map(key, value) VALUES(&amp;apos;Buzz&amp;apos;, &amp;apos;DC/OS is the new black!&amp;apos;);

cqlsh:demo&amp;gt; SELECT * FROM demo.map;

# docker image ls
# docker run cassandra:3.0.16 &amp;amp;
# docker ps
# docker exec -ti 1d001728d86d cqlsh --cqlversion=&amp;quot;3.4.0&amp;quot;&lt;/code&gt;&lt;/pre&gt;
 &lt;p&gt;你也可关注与评估Cassandra商业发行版  &lt;a href="https://docs.mesosphere.com/services/dse/"&gt;DataStax Enterprise&lt;/a&gt;：datastax-dse 和 datastax-ops&lt;/p&gt;
 &lt;p&gt;In production, the DSE nodes should be operated with 32 GB of memory and 16 GB of heap.&lt;/p&gt;
 &lt;p&gt;此外，ScyllaDB兼容Cassandra，速度更快，每节点每秒可处理 100 万 TPS。&lt;/p&gt;
 &lt;p&gt;  &lt;a href="https://www.zhihu.com/question/35956679" target="_blank"&gt;如何评价 ScyllaDB&lt;/a&gt;？&lt;/p&gt;
 &lt;p&gt;ScyllaDB性能是Cassandra的10多倍（3台ScyllaDB可以提供30台Cassandra集群的吞吐量，而且响应延时更低），ScyllaDB的CTO兼创始人Avi Kivity是大名鼎鼎的KVM作者。&lt;/p&gt;
 &lt;ul&gt;
  &lt;li&gt;   &lt;a href="https://github.com/topics/seastar"&gt;https://github.com/topics/seastar&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;   &lt;a href="https://github.com/topics/dpdk"&gt;https://github.com/topics/dpdk&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
 &lt;p&gt;  &lt;a href="http://www.bshare.cn/share?url=http%3A%2F%2Fblog.huihoo.com%2F%3Fp%3D1018&amp;title=Cassandra+on+DC%2FOS" title="&amp;#29992;bShare&amp;#20998;&amp;#20139;&amp;#25110;&amp;#25910;&amp;#34255;&amp;#26412;&amp;#25991;"&gt;   &lt;img alt="&amp;#29992;bShare&amp;#20998;&amp;#20139;&amp;#25110;&amp;#25910;&amp;#34255;&amp;#26412;&amp;#25991;" src="http://static.bshare.cn/frame/images/button_custom1-zh.gif"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;
 &lt;br /&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>Database &amp; Storage Mesos &amp; DC/OS</category>
      <guid isPermaLink="true">https://itindex.net/detail/58598-cassandra-on-dc</guid>
      <pubDate>Thu, 09 Aug 2018 07:16:36 CST</pubDate>
    </item>
    <item>
      <title>深入解析DC/OS 1.8 – 高可靠的微服务及大数据管理平台</title>
      <link>https://itindex.net/detail/56024-%E8%A7%A3%E6%9E%90-dc-os</link>
      <description>&lt;div&gt;  &lt;div&gt;
   &lt;div&gt;
    &lt;p&gt;大家好，欢迎大家参加这次DC/OS的技术分享。&lt;/p&gt;
    &lt;p&gt;先做个自我介绍，刘超，Linker Networks首席架构师，Open DC/OS社区贡献者，长期专注于OpenStack, Docker, Mesos等开源软件的企业级应用与产品化。&lt;/p&gt;
    &lt;p&gt;从事容器方面工作的朋友可能已经听说过DC/OS，往往大家误解DC/OS就是marathon + mesos，其实DC/OS包含很多的组件，DC/OS 1.8九月份发布了，此次分享给大家做一个介绍。&lt;/p&gt;
    &lt;p&gt;一、DC/OS的基本思想&lt;/p&gt;
    &lt;p&gt;所谓的DC/OS，全称为数据中心操作系统，其基本的思想就是使得运维人员操作整个数据中如操作一台电脑一样。&lt;/p&gt;
    &lt;p&gt;DC/OS使用了哪些技术可以做到这一点呢？&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/AVBf2eI.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;如图，左面是普通的Linux操作系统，右面是DC/OS，在这里做了一个对比。&lt;/p&gt;
    &lt;p&gt;无论是哪种操作系统，都需要管理外部的硬件设备，最重要的四种硬件资源即CPU，内存，存储，网络。&lt;/p&gt;
    &lt;p&gt;最初使用汇编语言写程序的前辈，还是需要指定使用那些硬件资源的，例如指定使用哪个寄存器，放在内存的哪个位置，写入或者读取那个串口等，对于这些资源的使用，需要程序员自己心里非常的清楚，要不然一旦JUMP错了位置，程序就无法运行。这就像运维数据中心的一台台物理机的前辈一样，那个程序放在了哪台机器上，使用多少内存，多少硬盘，都需要心里非常的清楚。&lt;/p&gt;
    &lt;p&gt;为了将程序员从对硬件的直接操作中解放出来，提升程序设计的效率，从而有了操作系统这一层，实现对于硬件资源的统一管理。某个程序使用哪个CPU，哪部分内存，哪部分硬盘，程序只需要调用API就可以了，由操作系统自行分配和管理，其实操作系统只做了一件事情，就是调度。对应到数据中心，也需要一个调度器，将运维人员从指定物理机或者虚拟机的痛苦中解放出来，这就是Mesos。Mesos即使数据中心操作系统的内核。&lt;/p&gt;
    &lt;p&gt;在使用操作系统的时候，我们可以开发驱动程序来识别新的硬件资源，可以开发内核模块(例如openvswitch.ko)来干预对于硬件资源的使用，对于Mesos，同样可以开发isolator来识别新的硬件资源例如GPU，也可以开发Executor来干预资源的使用。&lt;/p&gt;
    &lt;p&gt;在内核之上，就是系统服务，例如systemd，是用来维护进程运行的，如果systemctl enable xxx，则保证服务挂掉后自动重启。对于DC/OS，保持服务long run的是marathon，但是仅仅只有marathon还不够，因为服务是启动在多台机器上的，而且服务之间是有依赖关系的，一个服务挂掉了，在另外一台机器启动起来，如何保持服务之间的调用不需要人工干预呢？这需要另外的技术，称为服务发现，多是通过DNS，负载均衡，虚拟机IP等技术实现的。&lt;/p&gt;
    &lt;p&gt;使用操作系统，需要安装一些软件，于是需要yum之类的包管理系统，使得软件的使用者和软件的编译者分隔开来，软件的编译者需要知道这个软件需要安装哪些包，包之间的依赖关系是什么，软件安装到什么地方，而软件的使用者仅仅需要yum install就可以了。DC/OS就有这样一套包管理软件，和其他的容器管理平台需要自己编译Docker镜像，自己写yml，自己管理依赖不同，DC/OS的软件使用者只需要dcos package install就可以安装好软件了，软件的配置，节点数目，依赖关系都是有软件编译者设置。&lt;/p&gt;
    &lt;p&gt;在最外层，DC/OS像普通的操作系统一样，有统一的界面和命令行。通过它们，可以管理安装包，管理节点，运行任务等。DC/OS不仅仅是运行容器的平台，如果仅仅运行容器，就是容器管理平台，而非数据中心操作系统。通过DC/OS，你可以在每台机器上运行一个命令来进行统一的配置，而无需登录到每台机器上去。你可以运行容器应用和大数据分析应用并共享资源，并且可以相互发现，这更加符合现代互联网应用，微服务和大数据不可分割。而且Mesos的架构非常开放，你可以通过开发Framework, Executor, Modules, Hooks等，轻松干预微服务或者大数据任务的执行过程，来定制化你的应用。这也符合操作系统微内核的概念。&lt;/p&gt;
    &lt;p&gt;二、DC/OS的内核模块Mesos&lt;/p&gt;
    &lt;p&gt;Mesos架构如下&lt;/p&gt;
    &lt;img alt="" src="http://img2.tuicool.com/UbQrmee.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;这个图比较的著名了，也有很多文章介绍这个图，详情可以看文章      &lt;a href="http://mesos.apache.org/documentation/latest/architecture/" target="_blank"&gt;http://mesos.apache.org/docume ... ture/&lt;/a&gt; ，这里不做过多的介绍。&lt;/p&gt;
    &lt;p&gt;从图中可以看到，Mesos有Framework(Framework里面有Scheduler), Master(Master里面有allocator), Agent, Executor, Task几部分组成。这里面有两层的Scheduler，一层在Master里面，allocator会将资源公平的分给每一个Framework，二层在Framework里面，Framework的scheduler将资源按规则分配给Task。&lt;/p&gt;
    &lt;p&gt;Mesos的这几个角色在一个任务运行的生命周期中，相互关系如下：&lt;/p&gt;
    &lt;img alt="" src="http://img2.tuicool.com/fQ73u2Y.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;Agent会将资源汇报给Master，Master会根据allocator的策略将资源offer给framework的scheduler。Scheduler 可以accept这个资源，运行一个Task，Master将Task交给Agent，Agent交给Executor去真正的运行这个Task。&lt;/p&gt;
    &lt;p&gt;这个图相对比较的简略，真正详细的过程比这个复杂很多，大家可以参考这篇博客      &lt;a href="http://www.cnblogs.com/popsuper1982/p/5926724.html" target="_blank"&gt;http://www.cnblogs.com/popsuper1982/p/5926724.html&lt;/a&gt; ，在代码级别分析了整个任务运行的过程，还画了一个泳道图      &lt;a href="http://images2015.cnblogs.com/blog/635909/201608/635909-20160806163718778-1628977219.png" target="_blank"&gt;http://images2015.cnblogs.com/ ... 9.png&lt;/a&gt; 。&lt;/p&gt;
    &lt;p&gt;要研究Mesos，熟悉整个过程非常重要，这样一个任务运行出现问题的时候，才能比较好的定位问题在哪里，如果解决。Mesos将一个简单的任务的运行过程，分成如此多的层次，如此多的角色来做，是为了双层调度和灵活配置，这是一个内核应该做的事情。&lt;/p&gt;
    &lt;p&gt;我们如何干预一个Task的运行过程呢？&lt;/p&gt;
    &lt;p&gt;第一、写一个Framework&lt;/p&gt;
    &lt;p&gt;如果你想完全自己控制Task的运行，而非让Marathon来运行并保持一个无状态的Task长运行，就需要自己写一个Framework，在你的Framework里面，三个Task之间的关系你可以自己定义，而非像Marathon一样，Task * 3，3个任务不分彼此，你的Framework可以控制这三个Task一主两备，可以控制三个Task的启动顺序，可以将一个先启动的Task的IP，位置等通过环境变量告知另外两个Task。&lt;/p&gt;
    &lt;p&gt;写一个Framework需要写一个Scheduler，实现一些接口，如文档      &lt;a href="http://mesos.apache.org/documentation/latest/app-framework-development-guide/" target="_blank"&gt;http://mesos.apache.org/docume ... uide/&lt;/a&gt; 中所述。&lt;/p&gt;
    &lt;p&gt;然后使用使用MesosSchedulerDriver来运行这个Scheduler。&lt;/p&gt;
    &lt;img alt="" src="http://img0.tuicool.com/ZZNzaa6.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;其实Mesos这些模块之间的通信都是通过Protocol Buffer定义消息来交互的，然而如果让Framework的开发人员还要学会如何使用Protocol Buffer消息和Mesos Master通信，是很痛苦的事情，所以MesosSchedulerDriver帮助你做了这个事情，你只需要实现Scheduler定义的接口就可以了，不需要了解这些接口是谁调用的，调用了接口之后，消息如何传给Mesos Master。&lt;/p&gt;
    &lt;p&gt;所有的接口里面，最重要的是resourceOffers函数，根据得到的offers(每个slave都有多少资源)，创建一系列tasks，然后调用MesosSchedulerDriver的launchTasks函数，MesosSchedulerDriver会将这些tasks封装为LaunchTasksMessage发送给Mesos Master。&lt;/p&gt;
    &lt;p&gt;第二、写一个Allocator&lt;/p&gt;
    &lt;p&gt;通过上面的描述，Mesos有两层调度，第一层就是Allocator，将资源分配给Framework。&lt;/p&gt;
    &lt;p&gt;Mesos允许用户通过自己写Module的方式，写一个so，然后启动的时候加载进去，然后在命令行里面指定使用so中的哪个Module。&lt;/p&gt;
    &lt;p&gt;当然写Allocator的不多，因为Mesos的DRF算法是Mesos的核心，如果不用这个算法，还不如不用mesos。&lt;/p&gt;
    &lt;p&gt;Mesos源码中默认的Allocator，即HierarchicalDRFAllocator的位置在$MESOS_HOME/src/master/allocator/mesos/hierarchical.hpp，而DRF中对每个Framework排序的Sorter位于$MESOS_HOME/src/master/allocator/sorter/drf/sorter.cpp，可以查看其源码了解它的工作原理。&lt;/p&gt;
    &lt;p&gt;HierarchicalDRF的基本原理&lt;/p&gt;
    &lt;p&gt;如何作出offer分配的决定是由资源分配模块Allocator实现的，该模块存在于Master之中。资源分配模块确定Framework接受offer的顺序，与此同时，确保在资源利用最大化的条件下公平地共享资源。&lt;/p&gt;
    &lt;p&gt;由于Mesos为跨数据中心调度资源并且是异构的资源需求时，资源分配相比普通调度将会更加困难。因此Mesos采用了DRF（主导资源公平算法 Dominant Resource Fairness）&lt;/p&gt;
    &lt;p&gt;Framework拥有的全部资源类型份额中占最高百分比的就是Framework的主导份额。DRF算法会使用所有已注册的Framework来计算主导份额，以确保每个Framework能接收到其主导资源的公平份额。&lt;/p&gt;
    &lt;p&gt;举个例子&lt;/p&gt;
    &lt;p&gt;考虑一个9CPU，18GBRAM的系统，拥有两个用户，其中用户A运行的任务的需求向量为{1CPU, 4GB}，用户B运行的任务的需求向量为{3CPU，1GB}，用户可以执行尽量多的任务来使用系统的资源。&lt;/p&gt;
    &lt;p&gt;在上述方案中，A的每个任务消耗总cpu的1/9和总内存的2/9，所以A的dominant resource是内存；B的每个任务消耗总cpu的1/3和总内存的1/18，所以B的dominant resource为CPU。DRF会均衡用户的dominant shares，执行3个用户A的任务，执行2个用户B的任务。三个用户A的任务总共消耗了{3CPU，12GB}，两个用户B的任务总共消耗了{6CPU，2GB}；在这个分配中，每一个用户的dominant share是相等的，用户A获得了2/3的RAM，而用户B获得了2/3的CPU。&lt;/p&gt;
    &lt;p&gt;以上的这个分配可以用如下方式计算出来：x和y分别是用户A和用户B的分配任务的数目，那么用户A消耗了{xCPU，4xGB}，用户B消耗了{3yCPU，yGB}，在图三中用户A和用户B消耗了同等dominant resource；用户A的dominant share为4x/18，用户B的dominant share为3y/9。所以DRF分配可以通过求解以下的优化问题来得到：&lt;/p&gt;
    &lt;p&gt;max(x,y) #(Maximize allocations)&lt;/p&gt;
    &lt;p&gt;subject to&lt;/p&gt;
    &lt;p&gt;x + 3y &amp;lt;= 9 #(CPU constraint)&lt;/p&gt;
    &lt;p&gt;4x + y &amp;lt;= 18 #(Memory Constraint)&lt;/p&gt;
    &lt;p&gt;2x/9 = y/3 #(Equalize dominant shares)&lt;/p&gt;
    &lt;p&gt;最后解出x=3以及y=2，因而用户A获得{3CPU，12GB}，B得到{6CPU， 2GB}。&lt;/p&gt;
    &lt;p&gt;HierarchicalDRF核心算法实现在Src/main/allocator/mesos/hierarchical.cpp中HierarchicalAllocatorProcess::allocate函数中。&lt;/p&gt;
    &lt;p&gt;概况来说调用了三个Sorter(quotaRoleSorter, roleSorter, frameworkSorter)，对所有的Framework进行排序，哪个先得到资源，哪个后得到资源。&lt;/p&gt;
    &lt;p&gt;总的来说分两大步：先保证有quota的role，调用quotaRoleSorter，然后其他的资源没有quota的再分，调用roleSorter。&lt;/p&gt;
    &lt;p&gt;对于每一个大步分两个层次排序：一层是按照role排序，第二层是相同的role的不同Framework排序，调用frameworkSorter。&lt;/p&gt;
    &lt;p&gt;每一层的排序都是按照计算的share进行排序来先给谁，再给谁。&lt;/p&gt;
    &lt;p&gt;这里有几个概念容易混淆：Quota, Reservation, Role, Weight&lt;/p&gt;
    &lt;p&gt;每个Framework可以有Role，既用于权限，也用于资源分配&lt;/p&gt;
    &lt;p&gt;可以给某个role在offerResources的时候回复Offer::Operation::RESERVE,来预订某台slave上面的资源。Reservation是很具体的，具体到哪台机器的多少资源属于哪个Role&lt;/p&gt;
    &lt;p&gt;Quota是每个Role的最小保证量，但是不具体到某个节点，而是在整个集群中保证有这么多就行了。&lt;/p&gt;
    &lt;p&gt;Reserved资源也算在Quota里面。&lt;/p&gt;
    &lt;p&gt;不同的Role之间可以有Weight&lt;/p&gt;
    &lt;p&gt;在allocator算法结束之后，便调用Master::Offer，最终调用Framework的Scheduler的resourceOffers，让Framework进行二次调度。同上面的逻辑就串联起来。&lt;/p&gt;
    &lt;p&gt;第三、写一个Hook&lt;/p&gt;
    &lt;p&gt;你可以写hook模块，讲代码插在很多关键的步骤，从而改写整个Executor或者Docker或者Task的启动的整个过程。&lt;/p&gt;
    &lt;p&gt;可以干预的hook的地方定义在mesos/hook.hpp中。&lt;/p&gt;
    &lt;p&gt;Class hook定义如下：&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/3QbyM3E.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;其中比较常用的是slavePrelaunchDockerHook，可以在Docker启动之前做一些事情，比如准备工作。&lt;/p&gt;
    &lt;p&gt;还有slaveRemoveExecutorHook，这个可以在executor结束的时候，做一些事情，比如清理工作。&lt;/p&gt;
    &lt;p&gt;第四、创建Isolator&lt;/p&gt;
    &lt;p&gt;当你有一种新的资源需要管理，并且每个Task需要针对这个资源进行隔离的时候，写一个Isolator就是有必要的了。&lt;/p&gt;
    &lt;p&gt;例如默认的容器并不能动态指定并限制任务硬盘使用的大小，所以mesos-containerizer就有了&amp;quot;disk/du&amp;quot;来定时查看任务使用的硬盘大小，当超出限制的时候采取操作。&lt;/p&gt;
    &lt;p&gt;Src/slave/containerizer/mesos/containerizer.cpp里面列出了当前支持的isolator，你也可以实现自己的isolator，并且通过modules参数load进去。&lt;/p&gt;
    &lt;p&gt;Isolator定义了以下函数&lt;/p&gt;
    &lt;img alt="" src="http://img2.tuicool.com/FfQ7vm7.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;在运行一个容器的最后，会调用每一个isolator的isolate函数，通过这个函数，可以对资源进行一定的限制，例如写入cgroup文件等，但是对于硬盘使用量，其实没有cgroup可以设置，需要过一段时间du一些，这就需要实现watch函数，过一段时间查看一下硬盘使用量，超过后做一定的操作。&lt;/p&gt;
    &lt;p&gt;第五、写一个Executor&lt;/p&gt;
    &lt;p&gt;如果运行一个普通的容器，或者命令行，则不需要实现Executor，仅仅Mesos默认的Executor就能够实现这个功能。如果你需要在Executor里面做很多自己定制化的工作，则需要自己写Executor。&lt;/p&gt;
    &lt;p&gt;写一个Executor需要实现一些接口，最重要的就是launchTask接口，然后MesosExecutorDriver将这个Executor运行起来。&lt;/p&gt;
    &lt;p&gt;就像Framework一样，Executor也是通过protocol buffer协议和Mesos-Agent进行沟通，通过MesosExecutorDriver，你不需要关心协议的事情，仅仅需要实现接口即可。&lt;/p&gt;
    &lt;p&gt;三、DC/OS的核心模块&lt;/p&gt;
    &lt;p&gt;下面的图描述了DC/OS的部署架构图：&lt;/p&gt;
    &lt;img alt="" src="http://img2.tuicool.com/7fY7R33.jpg%21web"&gt;&lt;/img&gt;    &lt;p&gt;在DC/OS看来，所有的节点分为三个区域，一个是管理区域，主要处理对于服务的管理方面的操作，如增删查改，启停扩缩等。为了高可用，Master节点可以是多个，在多个Master节点之前，需要有一个负载均衡器。第二个是对外服务区域，也即外界能够访问DC/OS内部的服务的区域，这个区域里面的服务多为对外的Nginx之类的，也会有marathon-lb来做外部的负载均衡器，所有对外服务区域的节点之外还需要一个负载均衡器。第三个区域是内部服务区域，用于部署内部服务，如数据库，消息总线等，这些内部节点不能对外访问。&lt;/p&gt;
    &lt;p&gt;第一、Admin Router&lt;/p&gt;
    &lt;p&gt;AdminRouter是一个反向代理，正是它将对外的区域和对内的区域完全隔离开来，在admin router之外，可以通过公网访问，在admin router之内全部是私网地址，这样提供了安全的统一访问机制。&lt;/p&gt;
    &lt;p&gt;安装完毕Open DC/OS之后，安装一个dcos的命令行工具，通过这个工具可以ssh到master的节点上。&lt;/p&gt;
eval     &lt;code&gt;ssh-agent -s&lt;/code&gt;     &lt;br /&gt;    &lt;p&gt;ssh-add .ssh/aws01.pem&lt;/p&gt;
    &lt;p&gt;dcos node ssh --master-proxy --leader&lt;/p&gt;
    &lt;p&gt;在这个节点上/etc/systemd/system路径下面有三个systemd的service，Open DC/OS的所有组件都是用systemd进行管理的。&lt;/p&gt;
    &lt;p&gt;ip-10-0-7-1 system # ls -l | grep adminrouter&lt;/p&gt;
    &lt;p&gt;lrwxrwxrwx. 1 root root 135 Oct 3 08:00 dcos-adminrouter-reload.service -&amp;gt; /opt/mesosphere/packages/adminrouter--cee9a2abb16c28d1ca6c74af1aff6bc4aac3f134/dcos.target.wants_master/dcos-adminrouter-reload.service&lt;/p&gt;
    &lt;p&gt;lrwxrwxrwx. 1 root root 133 Oct 3 08:00 dcos-adminrouter-reload.timer -&amp;gt; /opt/mesosphere/packages/adminrouter--cee9a2abb16c28d1ca6c74af1aff6bc4aac3f134/dcos.target.wants_master/dcos-adminrouter-reload.timer&lt;/p&gt;
    &lt;p&gt;lrwxrwxrwx. 1 root root 128 Oct 3 08:00 dcos-adminrouter.service -&amp;gt; /opt/mesosphere/packages/adminrouter--cee9a2abb16c28d1ca6c74af1aff6bc4aac3f134/dcos.target.wants_master/dcos-adminrouter.service&lt;/p&gt;
    &lt;p&gt;可以看到dcos-adminrouter.service是指向/opt/mesosphere/packages下面的一个路径，Open DC/OS的所有组件都是安装在这个路径下面的。&lt;/p&gt;
    &lt;p&gt;在/opt/mesosphere/packages/adminrouter--cee9a2abb16c28d1ca6c74af1aff6bc4aac3f134/nginx/conf这个路径下面，有一个文件nginx.master.conf，打开这个文件，就能看到熟悉的对于nginx的配置。&lt;/p&gt;
    &lt;p&gt;upstream mesos {&lt;/p&gt;
    &lt;p&gt;server leader.mesos:5050;&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;upstream marathon {&lt;/p&gt;
    &lt;p&gt;server master.mesos:8080;&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;location /mesos/ {&lt;/p&gt;
    &lt;p&gt;access_by_lua &amp;apos;auth.validate_jwt_or_exit()&amp;apos;;&lt;/p&gt;
    &lt;p&gt;proxy_set_header Host $http_host;&lt;/p&gt;
    &lt;p&gt;proxy_pass      &lt;a href="http://mesos/;" target="_blank"&gt;http://mesos/;&lt;/a&gt;&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;location /marathon/ {&lt;/p&gt;
    &lt;p&gt;# Enforce access restriction. Auth-wise, treat /marathon*&lt;/p&gt;
    &lt;p&gt;# equivalently to /service/marathon*.&lt;/p&gt;
    &lt;p&gt;access_by_lua &amp;apos;auth.validate_jwt_or_exit()&amp;apos;;&lt;/p&gt;
    &lt;p&gt;proxy_set_header Host $http_host;&lt;/p&gt;
    &lt;p&gt;proxy_pass      &lt;a href="http://marathon/;" target="_blank"&gt;http://marathon/;&lt;/a&gt;&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;从这个配置文件可以看出，所有对内的访问marathon的页面，访问mesos的页面，都是通过leader.mesos进行，这个域名是mesos-dns给出的，对应的是内部的IP地址，如果从外部访问marathon或者mesos的页面，则必须通过admin router，通过      &lt;a href="http://admin-router-external-ip/marathon" target="_blank"&gt;http://admin-router-external-ip/marathon&lt;/a&gt; 或者      &lt;a href="http://admin-router-external-ip/mesos" target="_blank"&gt;http://admin-router-external-ip/mesos&lt;/a&gt; 来访问。&lt;/p&gt;
    &lt;p&gt;第二、Mesos-DNS&lt;/p&gt;
    &lt;p&gt;对于数据中心操作系统来讲，服务发现和负载均衡是最最核心的功能，只有有了这些功能，才能使得服务的物理布局，服务之间的依赖关系，服务挂掉之后的自动修复不需要用户关心，才能使得用户像用一台电脑一样使用整个数据中心。&lt;/p&gt;
    &lt;p&gt;如果服务之间的相互调用不使用IP地址，而使用域名的话，问题会简单很多。&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/umY7bef.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;如图所示，对于Mesos上运行的每一个Task，Mesos-DNS都可以通过调用Mesos-Master的API得到，并且为每个Task分配一个域名和IP的对应项。如果一个Task需要访问另一个Task，则需要配置域名即可，无论Task如何挂掉，如何分配到其他的节点上运行，域名都不会变，当然Task的IP可能会变，但是不用担心，Mesos-DNS会更新它。每个Mesos-Agent只需要配置/etc/resolv.conf指向mesos-dns就可以了。&lt;/p&gt;
    &lt;p&gt;当一个Task运行的时候，Mesos-DNS会创建一个域名&amp;lt;task&amp;gt;.&amp;lt;service&amp;gt;.mesos对应：&lt;/p&gt;
    &lt;p&gt;Mesos-Agent的IP地址&lt;/p&gt;
    &lt;p&gt;如果是Mesos Containerizer的话，返回的是Task内部容器的IP&lt;/p&gt;
    &lt;p&gt;另外&amp;lt;task&amp;gt;.&amp;lt;service&amp;gt;.slave.mesos还会提供所在的物理机的IP地址。这样通过hostport和Mesos-DNS所给的域名，可以实现服务的发现。&lt;/p&gt;
    &lt;p&gt;第三：marathon-lb&lt;/p&gt;
    &lt;p&gt;使用DNS虽然可以实现服务的自发现，但是不容易实现服务的负载均衡和弹性伸缩，而marathon-lb实现了这些功能。&lt;/p&gt;
    &lt;img alt="" src="http://img2.tuicool.com/EBB3imf.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;Marathon-lb是一个基于haproxy的负载均衡器，但是它会监听marathon event bus，每当注册到marathon-lb上的服务数目变化的时候，marathon-lb也会自动更新haproxy的配置文件，从而实现负载均衡。Marathon-lb可以如图中实现对外的负载均衡，也可以实现对内的服务之间相互调用的负载均衡。&lt;/p&gt;
    &lt;p&gt;Marathon的安装可以在界面中universe里面搜索marathon-lb安装，也可以通过命令行执行dcos package install Marathon-LB进行安装，默认安装的对外的负载均衡器。&lt;/p&gt;
    &lt;p&gt;我们在服务里面创建如下的应用：&lt;/p&gt;
    &lt;p&gt;{&lt;/p&gt;
    &lt;p&gt;&amp;quot;id&amp;quot;: &amp;quot;nginx&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;container&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;type&amp;quot;: &amp;quot;DOCKER&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;docker&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;image&amp;quot;: &amp;quot;nginx:1.7.7&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;network&amp;quot;: &amp;quot;BRIDGE&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;portMappings&amp;quot;: [&lt;/p&gt;
    &lt;p&gt;{ &amp;quot;hostPort&amp;quot;: 0, &amp;quot;containerPort&amp;quot;: 80, &amp;quot;servicePort&amp;quot;: 10000 }&lt;/p&gt;
    &lt;p&gt;],&lt;/p&gt;
    &lt;p&gt;&amp;quot;forcePullImage&amp;quot;:true&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;},&lt;/p&gt;
    &lt;p&gt;&amp;quot;instances&amp;quot;: 1,&lt;/p&gt;
    &lt;p&gt;&amp;quot;cpus&amp;quot;: 0.1,&lt;/p&gt;
    &lt;p&gt;&amp;quot;mem&amp;quot;: 65,&lt;/p&gt;
    &lt;p&gt;&amp;quot;healthChecks&amp;quot;: [{&lt;/p&gt;
    &lt;p&gt;&amp;quot;protocol&amp;quot;: &amp;quot;HTTP&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;path&amp;quot;: &amp;quot;/&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;portIndex&amp;quot;: 0,&lt;/p&gt;
    &lt;p&gt;&amp;quot;timeoutSeconds&amp;quot;: 10,&lt;/p&gt;
    &lt;p&gt;&amp;quot;gracePeriodSeconds&amp;quot;: 10,&lt;/p&gt;
    &lt;p&gt;&amp;quot;intervalSeconds&amp;quot;: 2,&lt;/p&gt;
    &lt;p&gt;&amp;quot;maxConsecutiveFailures&amp;quot;: 10&lt;/p&gt;
    &lt;p&gt;}],&lt;/p&gt;
    &lt;p&gt;&amp;quot;labels&amp;quot;:{&lt;/p&gt;
    &lt;p&gt;&amp;quot;HAPROXY_GROUP&amp;quot;:&amp;quot;external&amp;quot;&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;在这个应用里面，servicePort为10000则说明我们注册到marathon-lb上的外部端口为10000, labels里面写的是external，也即注册到外部的负载均衡器上。&lt;/p&gt;
    &lt;p&gt;这个时候，我们访问public slave上的10000端口，就能看到启动的nginx的页面      &lt;a href="http://54.254.148.129:10000/" target="_blank"&gt;http://54.254.148.129:10000/&lt;/a&gt; ，内部其他的应用可以通过      &lt;a href="http://marathon-lb.marathon.mesos:10000" target="_blank"&gt;http://marathon-lb.marathon.mesos:10000&lt;/a&gt; 来访问这个nginx&lt;/p&gt;
    &lt;p&gt;如果我们访问public slave上的haproxy的配置页面      &lt;a href="http://54.254.148.129:9090/haproxy?stats" target="_blank"&gt;http://54.254.148.129:9090/haproxy?stats&lt;/a&gt; ，可以看到如下的映射关系。&lt;/p&gt;
    &lt;img alt="" src="http://img0.tuicool.com/UJBRF3Y.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;对外marathon-lb监听10000端口，对内映射为10.0.1.78上的20215端口，如果我们从服务页面上查看，的确启动的nginx是监听20215端口的。&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/fUbMjub.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;接下来我们部署marathon-lb-autoscale，它监控haproxy，发现RPS(request per seconds)超过一定的数目，就对应用进行弹性扩展。&lt;/p&gt;
    &lt;p&gt;{&lt;/p&gt;
    &lt;p&gt;&amp;quot;id&amp;quot;: &amp;quot;marathon-lb-autoscale&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;args&amp;quot;:[&lt;/p&gt;
    &lt;p&gt;&amp;quot;--marathon&amp;quot;, &amp;quot;      &lt;a href="http://dockone.io/http://leader.mesos:8080" target="_blank"&gt;http://leader.mesos:8080&amp;quot;&lt;/a&gt; ,&lt;/p&gt;
    &lt;p&gt;&amp;quot;--haproxy&amp;quot;, &amp;quot;      &lt;a href="http://dockone.io/http://marathon-lb.marathon.mesos:9090" target="_blank"&gt;http://marathon-lb.marathon.mesos:9090&amp;quot;&lt;/a&gt; ,&lt;/p&gt;
    &lt;p&gt;&amp;quot;--target-rps&amp;quot;, &amp;quot;100&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;--apps&amp;quot;, &amp;quot;nginx_10000&amp;quot;&lt;/p&gt;
    &lt;p&gt;],&lt;/p&gt;
    &lt;p&gt;&amp;quot;cpus&amp;quot;: 0.1,&lt;/p&gt;
    &lt;p&gt;&amp;quot;mem&amp;quot;: 16.0,&lt;/p&gt;
    &lt;p&gt;&amp;quot;instances&amp;quot;: 1,&lt;/p&gt;
    &lt;p&gt;&amp;quot;container&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;type&amp;quot;: &amp;quot;DOCKER&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;docker&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;image&amp;quot;: &amp;quot;brndnmtthws/marathon-lb-autoscale&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;network&amp;quot;: &amp;quot;HOST&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;forcePullImage&amp;quot;: true&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;接下来，我们部署应用siege向nginx发送请求&lt;/p&gt;
    &lt;p&gt;{&lt;/p&gt;
    &lt;p&gt;&amp;quot;id&amp;quot;: &amp;quot;siege&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;args&amp;quot;:[&lt;/p&gt;
    &lt;p&gt;&amp;quot;-d1&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;-r1000&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;-c100&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;      &lt;a href="http://marathon-lb.marathon.mesos:10000/" target="_blank"&gt;http://marathon-lb.marathon.mesos:10000/&amp;quot;&lt;/a&gt;&lt;/p&gt;
    &lt;p&gt;],&lt;/p&gt;
    &lt;p&gt;&amp;quot;cpus&amp;quot;: 0.5,&lt;/p&gt;
    &lt;p&gt;&amp;quot;mem&amp;quot;: 16.0,&lt;/p&gt;
    &lt;p&gt;&amp;quot;instances&amp;quot;: 1,&lt;/p&gt;
    &lt;p&gt;&amp;quot;container&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;type&amp;quot;: &amp;quot;DOCKER&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;volumes&amp;quot;: [],&lt;/p&gt;
    &lt;p&gt;&amp;quot;docker&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;image&amp;quot;: &amp;quot;yokogawa/siege&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;network&amp;quot;: &amp;quot;HOST&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;privileged&amp;quot;: false,&lt;/p&gt;
    &lt;p&gt;&amp;quot;parameters&amp;quot;: [],&lt;/p&gt;
    &lt;p&gt;&amp;quot;forcePullImage&amp;quot;: false&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;如果我们看haproxy的stats页面，发现已经有请求发过来了。这个时候我们增加siege到10，给nginx加压。&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/QbuEVfr.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;过一段时间就会发现marathon-lb-autoscale已经有动作了。&lt;/p&gt;
    &lt;img alt="" src="http://img2.tuicool.com/yUniiqA.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;将一个nginx变成8个nginx&lt;/p&gt;
    &lt;img alt="" src="http://img0.tuicool.com/iiMzEra.png%21web"&gt;&lt;/img&gt;    &lt;img alt="" src="http://img1.tuicool.com/fEvIFvy.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;当我们将siege从10个变回0个的时候。&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/77zQJbJ.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;第四、Minuteman&lt;/p&gt;
    &lt;p&gt;Minuteman是一个内部的东西向的负载均衡器，可用于设置VIP，多个实例使用同一个VIP来进行负载均衡。&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/YvQRn2z.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;在创建服务的时候，选择Load Balanced，则下面会出现一行地址：nginxdocker.marathon.l4lb.thisdcos.directory:80，这个就是minuteman分配的VIP。&lt;/p&gt;
    &lt;img alt="" src="http://img0.tuicool.com/mYrEVf3.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;当服务创建好了之后，通过curl      &lt;a href="http://nginxdocker.marathon.l4lb.thisdcos.directory:80" target="_blank"&gt;http://nginxdocker.marathon.l4 ... ry:80&lt;/a&gt; 就可以访问这个服务，但是我们如果ping这个域名却是不通的，而且对于的IP地址也是很奇怪的IP地址，这个IP就是VIP.&lt;/p&gt;
    &lt;p&gt;这是怎么做到的呢？minuteman的load balancer是基于Netfilter的，在dcos的slave节点上，我们能看到多出来了四个iptables规则。其中前两个规则是在raw表里面的，后两个规则是在filter表里面的。&lt;/p&gt;
    &lt;p&gt;-A PREROUTING -p tcp -m set --match-set minuteman dst,dst -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j NFQUEUE --queue-balance 50:58&lt;/p&gt;
    &lt;p&gt;-A OUTPUT -p tcp -m set --match-set minuteman dst,dst -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j NFQUEUE --queue-balance 50:58&lt;/p&gt;
    &lt;p&gt;-A FORWARD -p tcp -m set --match-set minuteman dst,dst -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j REJECT --reject-with icmp-port-unreachable&lt;/p&gt;
    &lt;p&gt;-A OUTPUT -p tcp -m set --match-set minuteman dst,dst -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j REJECT --reject-with icmp-port-unreachable&lt;/p&gt;
    &lt;img alt="" src="http://img0.tuicool.com/JVRNBfm.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;根据iptbles的规则raw表中的规则会被先执行，一旦到达了filter表的minuteman的包就都过滤掉了。&lt;/p&gt;
    &lt;p&gt;NFQUEUE的规则表示将对于包的处理权交给用户态的一个进程。--queue-balance表示会将包发给几个queue，然后用户态进程会使用libnetfilter_queue连接到这些queue中，将包读出来，根据包的内容做决策后放回内核进行发送。&lt;/p&gt;
    &lt;p&gt;在每一个Mesos-Agent节点上都运行这一个minuteman的进程，监听这些queue，我们可以通过访问API查看VIP的映射关系，curl      &lt;a href="http://localhost:61421/vips" target="_blank"&gt;http://localhost:61421/vips&lt;/a&gt; 。&lt;/p&gt;
    &lt;img alt="" src="http://img2.tuicool.com/NNJNna2.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;我们可以看到VIP的11.112.175.214后面跟着两个节点10.0.1.78:27003和10.0.1.78:4989，正好对应nginx的两个实例。&lt;/p&gt;
    &lt;img alt="" src="http://img2.tuicool.com/FfEBrm6.png%21web"&gt;&lt;/img&gt;    &lt;img alt="" src="http://img0.tuicool.com/ARnm63b.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;四、DC/OS的微服务及大数据的管理机制&lt;/p&gt;
    &lt;p&gt;DC/OS是基于Mesos的，Mesos的灵活框架机制可以使得DC/OS既能够部署容器，也能够部署大数据框架，大数据框架在不运行任务的时候，几乎不占用资源，从而真正实现微服务和大数据框架的资源共享。&lt;/p&gt;
    &lt;p&gt;前面我们部署容器的时候，都是自己准备marathon的json进行部署的，这就需要使用服务的人和设计服务的人同样的专业。&lt;/p&gt;
    &lt;p&gt;DC/OS采用了一种package管理机制，将运行一个微服务或者框架所需要的各种配置制作成模板，模板由专业人士制作好上传到package repository，使用者就不需要那么专业，只要运行dcos package install安装即可。&lt;/p&gt;
    &lt;p&gt;Mesosphere提供了官方的package repository，名为universe，地址为      &lt;a href="https://universe.mesosphere.com/repo" target="_blank"&gt;https://universe.mesosphere.com/repo&lt;/a&gt; ，在github上可以找到对应的代码      &lt;a href="https://github.com/mesosphere/universe" target="_blank"&gt;https://github.com/mesosphere/universe&lt;/a&gt; 。&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/IVJF3uJ.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;对于一个package，往往包含下面的部分：&lt;/p&gt;
    &lt;p&gt;package.json：这里面保存了一些metadata的数据，例如对于spark&lt;/p&gt;
    &lt;p&gt;&amp;quot;name&amp;quot;: &amp;quot;spark&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;description&amp;quot;: &amp;quot;Spark is a fast and general cluster computing system for Big Data. Documentation:      &lt;a href="https://docs.mesosphere.com/current/usage/service-guides/spark/" target="_blank"&gt;https://docs.mesosphere.com/cu ... ot%3B&lt;/a&gt; ,&lt;/p&gt;
    &lt;p&gt;&amp;quot;licenses&amp;quot;: [&lt;/p&gt;
    &lt;p&gt;{&lt;/p&gt;
    &lt;p&gt;&amp;quot;name&amp;quot;: &amp;quot;Apache License Version 2.0&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;url&amp;quot;: &amp;quot;      &lt;a href="https://raw.githubusercontent.com/apache/spark/master/LICENSE" target="_blank"&gt;https://raw.githubusercontent. ... ot%3B&lt;/a&gt;&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;],&lt;/p&gt;
    &lt;p&gt;&amp;quot;tags&amp;quot;: [&lt;/p&gt;
    &lt;p&gt;&amp;quot;bigdata&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;mapreduce&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;batch&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;analytics&amp;quot;&lt;/p&gt;
    &lt;p&gt;],&lt;/p&gt;
    &lt;p&gt;config.json：保存一些配置项，例如对于spark&lt;/p&gt;
    &lt;p&gt;&amp;quot;name&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;default&amp;quot;: &amp;quot;spark&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;description&amp;quot;: &amp;quot;The Spark Dispatcher will register with Mesos with this as a framework name. This service will be available at      &lt;a href="http://%3Cdcos_ur" target="_blank"&gt;http://&amp;lt;dcos_ur&lt;/a&gt; l&amp;gt;/service/&amp;lt;name&amp;gt;/&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;&lt;/p&gt;
    &lt;p&gt;},&lt;/p&gt;
    &lt;p&gt;&amp;quot;cpus&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;default&amp;quot;: 1,&lt;/p&gt;
    &lt;p&gt;&amp;quot;description&amp;quot;: &amp;quot;CPU shares&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;minimum&amp;quot;: 0.0,&lt;/p&gt;
    &lt;p&gt;&amp;quot;type&amp;quot;: &amp;quot;number&amp;quot;&lt;/p&gt;
    &lt;p&gt;},&lt;/p&gt;
    &lt;p&gt;&amp;quot;mem&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;default&amp;quot;: 1024.0,&lt;/p&gt;
    &lt;p&gt;&amp;quot;description&amp;quot;: &amp;quot;Memory (MB)&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;minimum&amp;quot;: 1024.0,&lt;/p&gt;
    &lt;p&gt;&amp;quot;type&amp;quot;: &amp;quot;number&amp;quot;&lt;/p&gt;
    &lt;p&gt;},&lt;/p&gt;
    &lt;p&gt;&amp;quot;role&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;description&amp;quot;: &amp;quot;The Spark Dispatcher will register with Mesos with this role.&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;type&amp;quot;: &amp;quot;string&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;default&amp;quot;: &amp;quot;*&amp;quot;&lt;/p&gt;
    &lt;p&gt;},&lt;/p&gt;
    &lt;p&gt;marathon.json.mustache：是一个模板，里面的一些变量会替换为config.json里面的内容，最终变成可以直接发送给marathon的请求。以spark为例&lt;/p&gt;
    &lt;p&gt;&amp;quot;id&amp;quot;: &amp;quot;{{service.name}}&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;cpus&amp;quot;: {{service.cpus}},&lt;/p&gt;
    &lt;p&gt;&amp;quot;mem&amp;quot;: {{service.mem}},&lt;/p&gt;
    &lt;p&gt;&amp;quot;container&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;type&amp;quot;: &amp;quot;DOCKER&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;docker&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;image&amp;quot;: &amp;quot;{{resource.assets.container.docker.spark_docker}}&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;network&amp;quot;: &amp;quot;HOST&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;forcePullImage&amp;quot;: true&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;},&lt;/p&gt;
    &lt;p&gt;resource.json：是一些资源，如image，tar.gz文件等&lt;/p&gt;
    &lt;p&gt;&amp;quot;assets&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;container&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;docker&amp;quot;: {&lt;/p&gt;
    &lt;p&gt;&amp;quot;spark_docker&amp;quot;: &amp;quot;mesosphere/spark:1.0.2-2.0.0&amp;quot;&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;},&lt;/p&gt;
    &lt;p&gt;所有的这些配置都像模板一样已经预先写好，安装的时候界面上一点，或者一行命令就安装好了。&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/7fEVJvF.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;当然你如果点击Advanced Installation，则所有的配置都可以定制化&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/uMrmqqM.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;就像yum里面一样，将mysql-server的yum包的制作者和mysql的使用者分开，普通用户作为使用者，不需要了解太多的细节，用就是了。&lt;/p&gt;
    &lt;p&gt;如果想在数据中心里面使用package管理，可以生成自己的local universe，里面放入自己的应用，只要专业人士设计一次，便可以多次使用。也可以一次安装多个软件形成一个group，里面包含微服务的，也包含大数据的，两者可以通过服务发现相互访问。&lt;/p&gt;
    &lt;p&gt;我们在这里先安装一个spark的软件&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/vy6V3yM.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;最初安装完毕spark，却发现只有一个docker&lt;/p&gt;
    &lt;img alt="" src="http://img0.tuicool.com/2ArUr2j.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;Spark不是一个集群计算框架吗，怎么会只有一个Docker呢？这就是mesos对大数据框架管理的特殊之处。在spark不运行任务的时候，就仅仅占用这一个docker，其实是一个框架。&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/Uvqe6by.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;安装过程如图所示：&lt;/p&gt;
    &lt;p&gt;dcos package install spark会将请求提交给admin router&lt;/p&gt;
    &lt;p&gt;admin router会将请求提交给cosmos，也即package管理的服务&lt;/p&gt;
    &lt;p&gt;cosmos将config.json, resource.json, marathon.json组合成为一个marathon请求提交给marathon&lt;/p&gt;
    &lt;p&gt;marathon将请求交给mesos-master，然后交给mesos-agent&lt;/p&gt;
    &lt;p&gt;mesos-agent启动一个容器运行spark&lt;/p&gt;
    &lt;p&gt;启动的spark容器会注册到mesos里面成为一个新的framework&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/qyyInai.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;真正运行spark任务的时候，才会有其他占用资源的任务被创建出来。&lt;/p&gt;
    &lt;p&gt;dcos spark run --submit-args=&amp;apos;-Dspark.mesos.coarse=true --driver-cores 1 --driver-memory 1024M --class org.apache.spark.examples.SparkPi      &lt;a href="https://downloads.mesosphere.com/spark/assets/spark-examples_2.10-1.4.0-SNAPSHOT.jar" target="_blank"&gt;https://downloads.mesosphere.c ... T.jar&lt;/a&gt; 30&amp;apos;&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/FJbquaf.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;Spark运行过程如图：&lt;/p&gt;
    &lt;p&gt;dcos spark run将任务提交给admin router&lt;/p&gt;
    &lt;p&gt;admin router将任务提交给spark framework&lt;/p&gt;
    &lt;p&gt;spark framework将任务提交给mesos-master&lt;/p&gt;
    &lt;p&gt;mesos-master将任务分发给mesos-agent进行分别处理&lt;/p&gt;
    &lt;p&gt;任务运行完毕后，所有mesos-agent上占用的资源又都释放了。&lt;/p&gt;
    &lt;p&gt;正是这种模式，才实现微服务和大数据框架的共享资源，与此相对应的是使用Docker来部署spark集群，然后集群自管理，不归mesos管理。这样在创建spark集群的时候，就需要指定spark worker占用的资源，比如16G，然而这16G资源则无论spark是否在计算，都会被占用，都不会被其他的框架使用。&lt;/p&gt;
    &lt;p&gt;五、DC/OS 1.8的新功能&lt;/p&gt;
    &lt;p&gt;对于最新的DC/OS 1.8，有一个博客      &lt;a href="https://dcos.io/blog/2016/introducing-dc-os-1-8-ga/index.html" target="_blank"&gt;https://dcos.io/blog/2016/intr ... .html&lt;/a&gt; 描述了最新的功能。&lt;/p&gt;
    &lt;p&gt;其中第一个重要的功能为Mesos 1.0 and the Universal Container Runtime，也即可以使用mesos-containerizer来运行Docker的镜像了。这也是DC/OS对于容器的管理越来越独立的体现。&lt;/p&gt;
    &lt;p&gt;我们在mesos-agent所在的机器上可以查看&lt;/p&gt;
    &lt;p&gt;ip-10-0-1-78 dcos.target.wants_slave # ps aux | grep mesos-agent&lt;/p&gt;
    &lt;p&gt;root 1824 0.6 0.3 1069204 46948 ? Ssl Oct03 9:57 /opt/mesosphere/packages/mesos--19a545facb66e57dfe2bb905a001a58b7eaf6004/bin/mesos-agent&lt;/p&gt;
    &lt;p&gt;mesos-agent的配置在路径/opt/mesosphere/packages/mesos--19a545facb66e57dfe2bb905a001a58b7eaf6004下面，在/opt/mesosphere/packages/mesos--19a545facb66e57dfe2bb905a001a58b7eaf6004/dcos.target.wants_slave/dcos-mesos-slave.service里面是mesos-slave的启动参数的设置，通过mesos的文档，我们知道对于mesos的参数可以使用环境变量进行设置。&lt;/p&gt;
    &lt;p&gt;ip-10-0-1-78 dcos.target.wants_slave # cat dcos-mesos-slave.service&lt;/p&gt;
    &lt;p&gt;[Unit]&lt;/p&gt;
    &lt;p&gt;Description=Mesos Agent: DC/OS Mesos Agent Service&lt;/p&gt;
    &lt;p&gt;[Service]&lt;/p&gt;
    &lt;p&gt;Restart=always&lt;/p&gt;
    &lt;p&gt;StartLimitInterval=0&lt;/p&gt;
    &lt;p&gt;RestartSec=5&lt;/p&gt;
    &lt;p&gt;KillMode=control-group&lt;/p&gt;
    &lt;p&gt;Delegate=true&lt;/p&gt;
    &lt;p&gt;LimitNOFILE=infinity&lt;/p&gt;
    &lt;p&gt;TasksMax=infinity&lt;/p&gt;
    &lt;p&gt;EnvironmentFile=/opt/mesosphere/environment&lt;/p&gt;
    &lt;p&gt;EnvironmentFile=/opt/mesosphere/etc/mesos-slave-common&lt;/p&gt;
    &lt;p&gt;EnvironmentFile=/opt/mesosphere/etc/mesos-slave&lt;/p&gt;
    &lt;p&gt;EnvironmentFile=/opt/mesosphere/etc/proxy.env&lt;/p&gt;
    &lt;p&gt;EnvironmentFile=-/opt/mesosphere/etc/mesos-slave-common-extras&lt;/p&gt;
    &lt;p&gt;EnvironmentFile=-/var/lib/dcos/mesos-slave-common&lt;/p&gt;
    &lt;p&gt;EnvironmentFile=-/var/lib/dcos/mesos-resources&lt;/p&gt;
    &lt;p&gt;EnvironmentFile=-/run/dcos/etc/mesos-slave&lt;/p&gt;
    &lt;p&gt;ExecStartPre=/bin/ping -c1 ready.spartan&lt;/p&gt;
    &lt;p&gt;ExecStartPre=/bin/ping -c1 leader.mesos&lt;/p&gt;
    &lt;p&gt;ExecStartPre=/opt/mesosphere/bin/bootstrap dcos-mesos-slave&lt;/p&gt;
    &lt;p&gt;ExecStartPre=/opt/mesosphere/bin/make_disk_resources.py /var/lib/dcos/mesos-resources&lt;/p&gt;
    &lt;p&gt;ExecStartPre=/bin/bash -c &amp;apos;for i in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 2 &amp;gt; $i; echo -n &amp;quot;$i: &amp;quot;; cat $i; done&amp;apos;&lt;/p&gt;
    &lt;p&gt;ExecStart=/opt/mesosphere/packages/mesos--19a545facb66e57dfe2bb905a001a58b7eaf6004/bin/mesos-agent&lt;/p&gt;
    &lt;p&gt;在文件/opt/mesosphere/etc/mesos-slave-common中配置了大量的mesos-agent的参数&lt;/p&gt;
    &lt;p&gt;MESOS_MASTER=zk://zk-1.zk:2181,zk-2.zk:2181,zk-3.zk:2181,zk-4.zk:2181,zk-5.zk:2181/mesos&lt;/p&gt;
    &lt;p&gt;MESOS_CONTAINERIZERS=docker,mesos&lt;/p&gt;
    &lt;p&gt;MESOS_LOG_DIR=/var/log/mesos&lt;/p&gt;
    &lt;p&gt;MESOS_MODULES_DIR=/opt/mesosphere/etc/mesos-slave-modules&lt;/p&gt;
    &lt;p&gt;MESOS_CONTAINER_LOGGER=org_apache_mesos_LogrotateContainerLogger&lt;/p&gt;
    &lt;p&gt;MESOS_ISOLATION=cgroups/cpu,cgroups/mem,disk/du,network/cni,filesystem/linux,docker/runtime,docker/volume&lt;/p&gt;
    &lt;p&gt;MESOS_DOCKER_VOLUME_CHECKPOINT_DIR=/var/lib/mesos/isolators/docker/volume&lt;/p&gt;
    &lt;p&gt;MESOS_IMAGE_PROVIDERS=docker&lt;/p&gt;
    &lt;p&gt;MESOS_NETWORK_CNI_CONFIG_DIR=/opt/mesosphere/etc/dcos/network/cni&lt;/p&gt;
    &lt;p&gt;MESOS_NETWORK_CNI_PLUGINS_DIR=/opt/mesosphere/active/cni/&lt;/p&gt;
    &lt;p&gt;MESOS_WORK_DIR=/var/lib/mesos/slave&lt;/p&gt;
    &lt;p&gt;MESOS_SLAVE_SUBSYSTEMS=cpu,memory&lt;/p&gt;
    &lt;p&gt;MESOS_EXECUTOR_ENVIRONMENT_VARIABLES=file:///opt/mesosphere/etc/mesos-executor-environment.json&lt;/p&gt;
    &lt;p&gt;MESOS_EXECUTOR_REGISTRATION_TIMEOUT=10mins&lt;/p&gt;
    &lt;p&gt;MESOS_CGROUPS_ENABLE_CFS=true&lt;/p&gt;
    &lt;p&gt;MESOS_CGROUPS_LIMIT_SWAP=false&lt;/p&gt;
    &lt;p&gt;MESOS_DOCKER_REMOVE_DELAY=1hrs&lt;/p&gt;
    &lt;p&gt;MESOS_DOCKER_STOP_TIMEOUT=20secs&lt;/p&gt;
    &lt;p&gt;MESOS_DOCKER_STORE_DIR=/var/lib/mesos/slave/store/docker&lt;/p&gt;
    &lt;p&gt;MESOS_GC_DELAY=2days&lt;/p&gt;
    &lt;p&gt;MESOS_HOSTNAME_LOOKUP=false&lt;/p&gt;
    &lt;p&gt;GLOG_drop_log_memory=false&lt;/p&gt;
    &lt;p&gt;默认的mesos-containerizer的隔离只包括cpu和memory，然而在最新的mesos版本里面，多了provisioner这一层，在上面的配置里面隔离了MESOS_ISOLATION=cgroups/cpu,cgroups/mem,disk/du,network/cni,filesystem/linux,docker/runtime,docker/volume，从而可以启动docker的镜像了。&lt;/p&gt;
    &lt;p&gt;第二个最重要的功能是CNI, container network interface。&lt;/p&gt;
    &lt;img alt="" src="http://img2.tuicool.com/zqueyq6.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;CNI要工作需要三部分：&lt;/p&gt;
    &lt;p&gt;首先DC/OS不需要外置的IPAM，而是由mesos-master的replicated_log负责管理分配IP地址，Mesos需要启动的时候，载入overlay network的modules。&lt;/p&gt;
    &lt;p&gt;在路径/opt/mesosphere/etc/mesos-slave-modules下面有文件overlay_slave_modules.json&lt;/p&gt;
    &lt;p&gt;ip-10-0-1-78 mesos-slave-modules # cat overlay_slave_modules.json&lt;/p&gt;
    &lt;p&gt;{&lt;/p&gt;
    &lt;p&gt;&amp;quot;libraries&amp;quot;:&lt;/p&gt;
    &lt;p&gt;[&lt;/p&gt;
    &lt;p&gt;{&lt;/p&gt;
    &lt;p&gt;&amp;quot;file&amp;quot;: &amp;quot;/opt/mesosphere/active/mesos-overlay-modules/lib/mesos/libmesos_network_overlay.so&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;modules&amp;quot;:&lt;/p&gt;
    &lt;p&gt;[&lt;/p&gt;
    &lt;p&gt;{&lt;/p&gt;
    &lt;p&gt;&amp;quot;name&amp;quot;: &amp;quot;com_mesosphere_mesos_OverlayAgentManager&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;parameters&amp;quot; :&lt;/p&gt;
    &lt;p&gt;[&lt;/p&gt;
    &lt;p&gt;{&lt;/p&gt;
    &lt;p&gt;&amp;quot;key&amp;quot;: &amp;quot;agent_config&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;value&amp;quot; : &amp;quot;/opt/mesosphere/etc/overlay/config/agent.json&amp;quot;&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;]&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;]&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;]&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;其次需要载入CNI isolator，这个在MESOS_ISOLATION这个环境变量里面已经配置了。&lt;/p&gt;
    &lt;p&gt;最后还需要navstar服务来实现跨节点之间的IP互访问&lt;/p&gt;
    &lt;p&gt;每个mesos-agent的机器上都有opt/mesosphere/packages/navstar--589afdaef03114a17576ee648ae433a052f7a4b9/，都会运行一个navstar进程。&lt;/p&gt;
    &lt;p&gt;每个机器上都会创建网卡d-dcos，如果Docker容器使用CNI获取IP的容器都Attach到这个网卡上，而非docker0上。&lt;/p&gt;
    &lt;p&gt;每个机器上都会创建网卡m-dcos，如果mesos容器使用CNI获取IP的容器都Attach到这个网卡上。&lt;/p&gt;
    &lt;p&gt;每台机器的d-dcos和m-dcos的网段都不同。&lt;/p&gt;
    &lt;p&gt;每台机器都会创建一个vtep1024的网卡，作为VTEP，背后是vxlan。&lt;/p&gt;
    &lt;p&gt;每台机器都会创建默认的路由表，从本节点连接到其他的节点默认走vtep1024这个网卡。&lt;/p&gt;
    &lt;p&gt;9.0.0.0/24 via 44.128.0.1 dev vtep1024&lt;/p&gt;
    &lt;p&gt;9.0.1.0/24 via 44.128.0.2 dev vtep1024&lt;/p&gt;
    &lt;p&gt;9.0.3.0/24 via 44.128.0.4 dev vtep1024&lt;/p&gt;
    &lt;p&gt;对DC/OS的网络的配置在/opt/mesosphere/etc/dcos/network/cni路径下&lt;/p&gt;
    &lt;img alt="" src="http://img2.tuicool.com/QVBZfe.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;为了试验这两个新的功能，我们首先创建一个使用CNI的Mesos容器，但是启动的是Docker的Image nginx&lt;/p&gt;
    &lt;p&gt;{&lt;/p&gt;
    &lt;p&gt;&amp;quot;id&amp;quot;:&amp;quot;nginxmesos&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;cmd&amp;quot;:&amp;quot;env; ip -o addr; sleep 3600&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;cpus&amp;quot;:0.10,&lt;/p&gt;
    &lt;p&gt;&amp;quot;mem&amp;quot;:512,&lt;/p&gt;
    &lt;p&gt;&amp;quot;instances&amp;quot;:1,&lt;/p&gt;
    &lt;p&gt;&amp;quot;ipAddress&amp;quot;:{&lt;/p&gt;
    &lt;p&gt;&amp;quot;networkName&amp;quot;:&amp;quot;dcos&amp;quot;&lt;/p&gt;
    &lt;p&gt;},&lt;/p&gt;
    &lt;p&gt;&amp;quot;container&amp;quot;:{&lt;/p&gt;
    &lt;p&gt;&amp;quot;type&amp;quot;:&amp;quot;MESOS&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;docker&amp;quot;:{&lt;/p&gt;
    &lt;p&gt;&amp;quot;network&amp;quot;:&amp;quot;USER&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;image&amp;quot;:&amp;quot;nginx&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;portMappings&amp;quot;:[&lt;/p&gt;
    &lt;p&gt;{&lt;/p&gt;
    &lt;p&gt;&amp;quot;host_port&amp;quot;: 0,&lt;/p&gt;
    &lt;p&gt;&amp;quot;container_port&amp;quot;: 80,&lt;/p&gt;
    &lt;p&gt;&amp;quot;protocol&amp;quot;: &amp;quot;tcp&amp;quot;&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;]&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;在日志里面，打印出来容器的IP地址是m-dcos网段的。&lt;/p&gt;
    &lt;img alt="" src="http://img1.tuicool.com/yInayyu.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;然后我们再启动一个使用CNI的Docker容器&lt;/p&gt;
    &lt;p&gt;{&lt;/p&gt;
    &lt;p&gt;&amp;quot;id&amp;quot;:&amp;quot;nginxmesos1&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;cmd&amp;quot;:&amp;quot;env; ip -o addr; sleep 3600&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;cpus&amp;quot;:0.10,&lt;/p&gt;
    &lt;p&gt;&amp;quot;mem&amp;quot;:512,&lt;/p&gt;
    &lt;p&gt;&amp;quot;instances&amp;quot;:1,&lt;/p&gt;
    &lt;p&gt;&amp;quot;ipAddress&amp;quot;:{&lt;/p&gt;
    &lt;p&gt;&amp;quot;networkName&amp;quot;:&amp;quot;dcos&amp;quot;&lt;/p&gt;
    &lt;p&gt;},&lt;/p&gt;
    &lt;p&gt;&amp;quot;container&amp;quot;:{&lt;/p&gt;
    &lt;p&gt;&amp;quot;type&amp;quot;:&amp;quot;DOCKER&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;docker&amp;quot;:{&lt;/p&gt;
    &lt;p&gt;&amp;quot;network&amp;quot;:&amp;quot;USER&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;image&amp;quot;:&amp;quot;nginx&amp;quot;,&lt;/p&gt;
    &lt;p&gt;&amp;quot;portMappings&amp;quot;:[&lt;/p&gt;
    &lt;p&gt;{&lt;/p&gt;
    &lt;p&gt;&amp;quot;host_port&amp;quot;: 0,&lt;/p&gt;
    &lt;p&gt;&amp;quot;container_port&amp;quot;: 80,&lt;/p&gt;
    &lt;p&gt;&amp;quot;protocol&amp;quot;: &amp;quot;tcp&amp;quot;&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;]&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;}&lt;/p&gt;
    &lt;p&gt;从日志我们看出，配置的IP是d-dcos网段的，而非docker0网段的。&lt;/p&gt;
    &lt;img alt="" src="http://img2.tuicool.com/mey263a.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;从Mesos上我们看出这两个容器是在两个节点上的&lt;/p&gt;
    &lt;img alt="" src="http://img0.tuicool.com/jyQjMre.png%21web"&gt;&lt;/img&gt;    &lt;p&gt;登入Docker的容器，ping另外一个CNI的mesos的IP是没有问题的。&lt;/p&gt;
    &lt;p&gt;ip-10-0-1-78 cni # docker ps&lt;/p&gt;
    &lt;p&gt;CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES&lt;/p&gt;
    &lt;p&gt;e7908deb3017 nginx &amp;quot;/bin/sh -c &amp;apos;env; ip &amp;quot; 28 minutes ago Up 28 minutes 80/tcp, 443/tcp mesos-b3fbe6d9-236a-4856-a986-9babbba9c02c-S2.e3c96fa7-b5ff-4af6-9099-bbed399c7c37&lt;/p&gt;
    &lt;p&gt;a992929fb0d1 nginx &amp;quot;nginx -g &amp;apos;daemon off&amp;quot; 6 hours ago Up 6 hours 443/tcp, 0.0.0.0:4989-&amp;gt;80/tcp mesos-b3fbe6d9-236a-4856-a986-9babbba9c02c-S2.fca41f8d-816c-49cd-9b19-ba059b95e885&lt;/p&gt;
    &lt;p&gt;8032756dd66e nginx &amp;quot;nginx -g &amp;apos;daemon off&amp;quot; 6 hours ago Up 6 hours 443/tcp, 0.0.0.0:27003-&amp;gt;80/tcp mesos-b3fbe6d9-236a-4856-a986-9babbba9c02c-S2.c0fdd3db-6f17-41d3-ab05-6f2d4d0bfa13&lt;/p&gt;
    &lt;p&gt;ip-10-0-1-78 cni # docker exec -it e7908deb3017 bash&lt;/p&gt;
    &lt;p&gt;root@e7908deb3017:/# ip addr&lt;/p&gt;
    &lt;p&gt;1: lo: &amp;lt;LOOPBACK,UP,LOWER_UP&amp;gt; mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1&lt;/p&gt;
    &lt;p&gt;link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00&lt;/p&gt;
    &lt;p&gt;inet 127.0.0.1/8 scope host lo&lt;/p&gt;
    &lt;p&gt;valid_lft forever preferred_lft forever&lt;/p&gt;
    &lt;p&gt;inet6 ::1/128 scope host&lt;/p&gt;
    &lt;p&gt;valid_lft forever preferred_lft forever&lt;/p&gt;
    &lt;p&gt;51: eth0@if52: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1420 qdisc noqueue state UP group default&lt;/p&gt;
    &lt;p&gt;link/ether 02:42:09:00:03:82 brd ff:ff:ff:ff:ff:ff&lt;/p&gt;
    &lt;p&gt;inet 9.0.3.130/25 scope global eth0&lt;/p&gt;
    &lt;p&gt;valid_lft forever preferred_lft forever&lt;/p&gt;
    &lt;p&gt;inet6 fe80::42:9ff:fe00:382/64 scope link&lt;/p&gt;
    &lt;p&gt;valid_lft forever preferred_lft forever&lt;/p&gt;
    &lt;p&gt;root@e7908deb3017:/# ping 9.0.2.13&lt;/p&gt;
    &lt;p&gt;PING 9.0.2.13 (9.0.2.13): 56 data bytes&lt;/p&gt;
    &lt;p&gt;64 bytes from 9.0.2.13: icmp_seq=0 ttl=62 time=0.709 ms&lt;/p&gt;
    &lt;p&gt;64 bytes from 9.0.2.13: icmp_seq=1 ttl=62 time=0.535 ms&lt;/p&gt;
    &lt;p&gt; &lt;/p&gt;
    &lt;p&gt; &lt;/p&gt;
    &lt;p&gt;http://www.tuicool.com/articles/Vve6n2e&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;
              
               &lt;br /&gt; &lt;br /&gt;
              
                 &lt;a href="http://m635674608.iteye.com/blog/2329457#comments"&gt;已有   &lt;strong&gt;0&lt;/strong&gt; 人发表留言，猛击-&amp;gt;&amp;gt;  &lt;strong&gt;这里&lt;/strong&gt;&amp;lt;&amp;lt;-参与讨论&lt;/a&gt;
              
               &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;
ITeye推荐
 &lt;br /&gt;
 &lt;ul&gt;  &lt;li&gt;   &lt;a href="http://m635674608.iteye.com/clicks/433" target="_blank"&gt;—软件人才免语言低担保 赴美带薪读研！— &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
 &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;
              
            &lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/56024-%E8%A7%A3%E6%9E%90-dc-os</guid>
      <pubDate>Mon, 10 Oct 2016 11:07:01 CST</pubDate>
    </item>
    <item>
      <title>HADOOP OS部分优化</title>
      <link>https://itindex.net/detail/52521-hadoop-os-%E4%BC%98%E5%8C%96</link>
      <description>&lt;div&gt;
  &lt;h2&gt;open file descriptors and files&lt;/h2&gt;
  &lt;p&gt;文件描述符是一个索引值，指向内核为每一个进程所维护的该进程打开文件的记录表。当程序打开一个现有文件或者创建一个新文件时，内核向进程返回一个文件描述符。在程序设计中，一些涉及底层的程序编写往往会围绕着文件描述符展开，文件描述符这一概念往往只适用于UNIX、Linux这样的操作系统。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;在Linux系列的操作系统上，由于Linux的设计思想便是把一切设备都视作文件。因此，文件描述符为在该系列平台上进行设备相关的编程实际上提供了一个统一的方法。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;在CentOS中通过下面的命令查看：&lt;/p&gt;
  &lt;pre&gt;cat /proc/sys/fs/file-max
800000&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;也可以通过查看文件中的内容来查看，其中的fs.file-max定义了最大的打开文件描述符数量：&lt;/p&gt;
  &lt;pre&gt;cat /etc/sysctl.conf
 
fs.file-max = 800000
net.core.rmem_default = 12697600
net.core.wmem_default = 12697600
net.core.rmem_max = 873800000
net.core.wmem_max = 655360000
net.ipv4.tcp_rmem = 8192 262144 4096000
net.ipv4.tcp_wmem = 4096 262144 4096000
net.ipv4.tcp_max_orphans = 300000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.ip_local_port_range = 1025 65535
net.ipv4.tcp_max_syn_backlog = 100000
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp.keepalive_time = 1200
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 1500
net.core.somaxconn=32768
vm.swappiness=0&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;CentOS下可以通过下面的命令来增加最大打开文件描述符数量，在集群中的每台机器上执行：&lt;/p&gt;
  &lt;pre&gt;# su – (hdfs &amp;amp; Hadoop users)
# ulimit –S 4096
# ulimit –H 32832&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;也可以通过修改/etc/sysctl.conf文件中的fs.file-max来达到目的。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;由于这部分的数值远远大于文档中所列出的数字，此部分没有做优化。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;h2&gt;File System&lt;/h2&gt;
  &lt;p&gt;Linux的发行版本对于文件系统有着不同的初始设置。经过测试不同的Linux File Systems，发现EXT4格式要比EXT3更好。EXT4中的新特性，比如多块延迟分配，相比于EXT3要提高很大一部分的性能。在EXT3中，当一个文件被创建或数据被添加到一个已经存在的文件时，会直接调用文件block allocator，每个block一次；而EXT4则不同，它会做一个缓冲，以便以后能够最优化地将数据连续地放入硬盘。连续的文件能够很容易地被机械硬盘读写以能够提高存储IO的整体性能。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;默认情况下，Linux会把文件访问的时间atime作记录，这在绝大多数场合下都是没有必要的，尤其是IO负载比较高的Hadoop集群下，可以尝试使用noatime和nodiratime。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;在Hadoop中，很多中间文件（比如map输出的中间文件）都只会在Hadoop job运行过程中存活，job执行完成就会被删除了，根本没有必要存在访问时间戳。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;通过命令cat /etc/fstab来查看当前的设置：&lt;/p&gt;
  &lt;pre&gt;UUID=5d75c681-1101-46c2-9428-3e48310765ce                 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=SWAP-sda3         swap                    swap    defaults        0 0&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;可以看到当前并没有使用EXT4格式以及noatime。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;注意，修改完设置后需要重新挂载文件系统，不需要重启。&lt;/p&gt;
  &lt;pre&gt;mount -o remount /&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;另外一个对于dataNodes的优化点就是通过改变文件系统的保留块大小。Linux文件系统中为了保证root能够登录到操作系统中，需要保留一定的磁盘空间，默认这个值设置为5%。但是当前磁盘空间都是TB级别的，因此保留5%就会造成一大部分空间的浪费，对于1TB来说就是50G。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;通过下面的命令来列出当前的保留磁盘空间。&lt;/p&gt;
  &lt;pre&gt;tune2fs –l /dev/sdaX&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;下面的命令可以将保留磁盘空间的容量设置成1%:&lt;/p&gt;
  &lt;pre&gt;tune2fs –m 1 /dev/sdaX&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;h2&gt;Network&lt;/h2&gt;
  &lt;p&gt;两个网络相关的参数可以影响Hadoop的性能。net.core.somaxconn Linux内核设置能够支持NameNode和JobTracker的大量爆发性的HTTP请求。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;net.core.somaxconn是listen()的默认参数,挂起请求的最大数量.默认是128.对繁忙的服务器,增加该值有助于网络性能，当前已经被调整到32768。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;这个参数同样可以通过编辑/etc/sysctl.conf文件来改变，其中有一行：&lt;/p&gt;
  &lt;pre&gt;net.core.somaxconn=32768&lt;/pre&gt;
  &lt;p&gt;或者：echo 2048 &amp;gt;   /proc/sys/net/core/somaxconn    但是这样系统重启后保存不了。 &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;设置txqueuelen到4096及以上能够更好地适应在Hadoop集群中的突发流量， txqueuelen代表用来传输数据的缓冲区的储存长度，通过下面的命令可以对该参数进行设置为4096：&lt;/p&gt;
  &lt;pre&gt;sudo ifconfig eth# txqueuelen 4096&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;其他的一系列在/etc/sysctl.conf中的配置，可以对网络产生影响：&lt;/p&gt;
  &lt;pre&gt;net.core.rmem_default = 12697600
net.core.wmem_default = 12697600
net.core.rmem_max = 873800000
net.core.wmem_max = 655360000
net.ipv4.tcp_rmem = 8192 262144 4096000
net.ipv4.tcp_wmem = 4096 262144 4096000
net.ipv4.tcp_max_orphans = 300000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.ip_local_port_range = 1025 65535
net.ipv4.tcp_max_syn_backlog = 100000
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp.keepalive_time = 1200
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 1500&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;上述设置需要重新启动整个集群系统。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;h2&gt;
   &lt;a name="baidusnap0"&gt;&lt;/a&gt;   &lt;strong&gt;Transparent&lt;/strong&gt;    &lt;a name="baidusnap1"&gt;&lt;/a&gt;   &lt;strong&gt;Huge&lt;/strong&gt;    &lt;a name="baidusnap2"&gt;&lt;/a&gt;   &lt;strong&gt;Page&lt;/strong&gt;
&lt;/h2&gt;
  &lt;p&gt;Linux的特性   &lt;strong&gt;Transparent&lt;/strong&gt; HugePages在大部分的应用中都提高了整体性能，包括Hadoop的工作负载。但是，其中的一项被称为Compaction的子特性会导致Hadoop工作负载的问题，在设置了Compaction的Hadoop benchmark测试中，结果会存在25%的浮动，而关闭Compaction后浮动消失。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;当进行内存碎片整理时，Compaction会提高CPU资源利用率，这能够帮助优化   &lt;strong&gt;Transparent&lt;/strong&gt; HugePages，但是偷取了CPU资源，却影响了hadoop中正在运行的task性能。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;通过以下命令可以查看是否启用compaction：&lt;/p&gt;
  &lt;pre&gt;cat /sys/kernel/mm/redhat_   &lt;strong&gt;transparent&lt;/strong&gt;_hugepages/defrag&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;以及以下命令来禁用Compaction：&lt;/p&gt;
  &lt;pre&gt;echo never &amp;gt; /sys/kernel/mm/redhat_   &lt;strong&gt;transparent&lt;/strong&gt;_hugepages/defrag&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;这个特定暂时没有进行修改，因为CentOS中没找到在哪儿设置。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;h2&gt;Linux kernal swappiness parameter&lt;/h2&gt;
  &lt;p&gt;任何进程只要涉及到换页向磁盘写文件都会降低hadoop的性能，Linux内核进程vm.swappiness会检查无用的内存分页并将它们交换到磁盘上。默认的值是60，可以设置为0——100。对于Hadoop来说，设置成0是一个好主意，这并没有将这个特性关闭，Linux仍然进行换页操作，但是由于这个进程在仍然还有一大部分空闲内存时仍然会进行换页，将它设置成0可以尽可能地减少内存和磁盘的延迟。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;这个参数仍然可以通过编辑/etc/sysctl.conf来进行修改。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; 也可以如下：echo 0 &amp;gt; /proc/sys/vm/swappiness&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;当前集群已经设置：&lt;/p&gt;
  &lt;pre&gt;vm.swappiness=0&lt;/pre&gt;
&lt;/div&gt;
          
           &lt;br /&gt; &lt;br /&gt;
          
             &lt;a href="http://zhangxiong0301.iteye.com/blog/2176924#comments"&gt;已有   &lt;strong&gt;0&lt;/strong&gt; 人发表留言，猛击-&amp;gt;&amp;gt;  &lt;strong&gt;这里&lt;/strong&gt;&amp;lt;&amp;lt;-参与讨论&lt;/a&gt;
          
           &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;
ITeye推荐
 &lt;br /&gt;
 &lt;ul&gt;  &lt;li&gt;   &lt;a href="http://www.iteye.com/clicks/433" target="_blank"&gt;—软件人才免语言低担保 赴美带薪读研！— &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
 &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;
          
        &lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/52521-hadoop-os-%E4%BC%98%E5%8C%96</guid>
      <pubDate>Sun, 18 Jan 2015 00:39:24 CST</pubDate>
    </item>
    <item>
      <title>下一代OS X将被重新设计，再次向iOS看齐</title>
      <link>https://itindex.net/detail/49412-%E4%B8%8B%E4%B8%80%E4%BB%A3-os-%E8%AE%BE%E8%AE%A1</link>
      <description>&lt;p&gt;  &lt;img alt="syrah_icloud_hero" height="541" src="http://cdn.pingwest.com/wp-content/uploads/2014/05/syrah_icloud_hero.jpg" width="735"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;两年前，苹果公司在发布其新一代桌面操作系统Mac OS X 10.7 Lion的时候，打出了“Back to the Mac”的标语。这个标语的意思是，iOS诞生之初借鉴了许多Mac OS X的元素，而在OS X Lion系统中，苹果将一些iOS上大获成功的特性移植了回来。&lt;/p&gt;
 &lt;p&gt;实际上，从视觉界面到软件功能，苹果旗下的两个操作系统——OS X和iOS从未停止过互相“学习”。而iOS7的用户界面在Ive主导下被重新设计过之后，不断有传言称下一代的OS X也将会遵循iOS的脚步，并将于今年6月的WWDC2014大会上对外公布出来。&lt;/p&gt;
 &lt;p&gt;根据9to5Mac的  &lt;a href="http://9to5mac.com/2014/05/01/os-x-10-10-focus-planned-for-wwdc-ios-8-features-pushed-to-ios-8-1-new-apple-tv-os-in-the-works/"&gt;报道&lt;/a&gt;，在一个月之后举办的WWDC2014上，下一代的OS X——OS X 10.10将会比iOS8更让人期待。9to5Mac引用接近这个项目的消息源称，OS X 10.10将会得到从代码层面到用户界面的重新设计，而正因如此，苹果也会像重新设计过iOS7之后那样，向开发者大力推广它的新一代的桌面操作系统，促使开发者们也做出配合。与此同时，苹果也已经将一部分iOS的设计人员调配到OS X设计团队来推进开发进度。&lt;/p&gt;
 &lt;p&gt;新设计将会向iOS7看齐，采用更锋利的窗口棱角，更清晰的系统图标，以及比现有版本更多的留白，比起目前的视觉效果更“扁平化”。当然，OS X作为一个桌面操作系统的特有功能如Finder（文件浏览器）、多窗口多任务以及Mission Control功能都将会保留下来。&lt;/p&gt;
 &lt;p&gt;同时，新的操作系统将会在今年秋季放出，到时候苹果将会更新旗下的Mac硬件产品，搭载新的操作系统发售——这是苹果惯用的发布节奏。&lt;/p&gt;
 &lt;p&gt;虽然目前没有关于新版操作系统的截图流出，但我们可以从苹果最新的软件中看到设计风格的变化。比如最新版的iWork套件和OS X mavericks内置的iBooks、备忘录等应用，都采用了此前没有过的扁平化的视觉元素。&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="pages" height="485" src="http://cdn.pingwest.com/wp-content/uploads/2014/05/pages.png" width="700"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="memos" height="473" src="http://cdn.pingwest.com/wp-content/uploads/2014/05/memos.png" width="600"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;不过，OS X 10.10的最终代号仍未确定下来。此前有消息称，这款操作系统的代号将会为“Syrah”。
&lt;/p&gt; &lt;p&gt;相关阅读：&lt;/p&gt;
 &lt;p&gt;      &lt;a href="http://www.pingwest.com/wearable-algorithm/"&gt;是时候让可穿戴计算“回归算法”了&lt;/a&gt;&lt;/p&gt;
 &lt;p&gt;      &lt;a href="http://www.pingwest.com/amazon-bypass-in-app-purchase/"&gt;绕过苹果的“应用内购买”政策，亚马逊最积极&lt;/a&gt;&lt;/p&gt;
 &lt;p&gt;      &lt;a href="http://shift.pingwest.com/volvo-prefer-apple-carplay/"&gt;相比较奔驰、宝马，沃尔沃正在聪明的使用CarPlay&lt;/a&gt;&lt;/p&gt;
 &lt;p&gt;      &lt;a href="http://www.pingwest.com/pingraphic-green-internet/"&gt;【Pingraphic】互联网公司的能源竞赛&lt;/a&gt;&lt;/p&gt;
&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>前沿 OS X 苹果</category>
      <guid isPermaLink="true">https://itindex.net/detail/49412-%E4%B8%8B%E4%B8%80%E4%BB%A3-os-%E8%AE%BE%E8%AE%A1</guid>
      <pubDate>Fri, 02 May 2014 16:37:15 CST</pubDate>
    </item>
    <item>
      <title>苹果发布iOS 9 、watchOS 2.0和升级OS X系统</title>
      <link>https://itindex.net/detail/53614-%E8%8B%B9%E6%9E%9C-ios-watchos</link>
      <description>&lt;p&gt;北京时间今日凌晨 1 点，苹果一年一度的开发者大会（WWDC 2015）在旧金山举行。它的与会者来自全球 70 多个国家，80% 是首次参加该会议。和每年的公司宣传片开场不同，苹果用喜剧演员和主持人 Bill Hader 的一段恶搞视频启动了今年的大会。&lt;/p&gt;
 &lt;p&gt;不过数字依然是重要的，这一次，苹果不再谈卖了多少 iOS 产品，而是专注于庞大的 App Store 应用商店：从 2008 年推出至今，苹果应用商店内应用下载次数已经突破 1000 亿、平均每个用户下载 119 个应用。在这个过程中，苹果为开发者支付了 300 亿美元。&lt;/p&gt;
 &lt;p&gt;在最重要的新产品方面，此次 WWDC 和往常一样聚焦于新的操作系统。不过在 iPhone 和 Mac 上，你不会看到太多新的功能，更多是贴心的细节升级。&lt;/p&gt;
 &lt;p&gt;新系统改变最大的将是 iPad 和 Apple Watch。没错，刚发售没到两个月的 Apple Watch 也迎来了新的操作系统。今年秋天，所有新系统都会免费送到你的苹果设备上。&lt;/p&gt;
 &lt;p&gt;  &lt;img alt=""&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;现在我们一起看看发布会上值得一提的新东西具体都是些什么：&lt;/p&gt;
 &lt;h2&gt;Apple Watch 有了新系统，watchOS 2.0&lt;/h2&gt;
 &lt;p&gt;发售一个多月来，Apple Watch 收到的评价褒贬不一。智能手表是不是有存在意义、苹果是否能在个人电脑、智能手机以外再带来一个不同形态的计算设备，目前还看不到头绪。&lt;/p&gt;
 &lt;p&gt;在这样的不确定下，苹果推出了新的手表操作系统 watchOS 2.0。iPhone 发售后等了一年才看到新系统的身影，而 Apple Watch 只等了不到两个月。&lt;/p&gt;
 &lt;p&gt;新系统带来一系列新功能，让你的手表更有用一些：&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;新表盘&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="" src="http://www.alibuybuy.com/wp-content/uploads/2015/06/9bfdccc473aab3c712c59f9d52f540bf.jpg"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;用户可以将照片或者整个相册作为表盘；此外苹果还拍摄了伦敦、上海在内的数个城市的缩时视频，同样可以让你用作表盘。&lt;/p&gt;
 &lt;p&gt;第三方应用的信息现在可以被加入在表盘的小空档里，比如显示汽车的充电情况或者下一个航班的时间。终于不再用月相和日出时间凑数了。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;时间旅行&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="" src="http://www.alibuybuy.com/wp-content/uploads/2015/06/ecb5242d3b56b2de63917b41e26f4a7b.jpg"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;Apple Watch 的小屏幕显示不了太多信息。比如 iPhone 同时显示未来的三项日程，手表就只能显示一项。苹果在新系统中给出的解决方法是让你调时间。&lt;/p&gt;
 &lt;p&gt;在表盘下，拨动数字表冠便能快进到未来的某个时间点。此时你的日程、天气，甚至第三方应用中的功能，比如汽车充电进度，都会根据时间做出相应调整。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;更独立&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;目前 Apple Watch 只有连着手机才能联网获取信息。新版本到来后，Apple Watch 将会自动连接你手表连过的 Wi-Fi 网络，当手机不在身边时，手表也能让你获取基本信息。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;其它小变化&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;变成钟，你不能带着 Apple Watch 睡觉，因为它总会需要充电。苹果做了一个有用的新功能——Night Stand Mode，Apple Watch 被变成了一个钟，在充电时显示时间。&lt;/p&gt;
 &lt;p&gt;Digital Touch 开始支持更多颜色。你发给其它 Apple Watch 用户的图案有了更多色彩，不过真的有人用这功能么？&lt;/p&gt;
 &lt;p&gt;Siri 可以直接语音启动锻炼记录，原先需要在手表上进入健身应用再手动选择。在小屏幕上，Siri 变得更实用了。&lt;/p&gt;
 &lt;p&gt;手表上可以回复邮件了——输入的方式还是用语音转文字。&lt;/p&gt;
 &lt;h2&gt;新开发工具，真正有用的手表应用终于来了？&lt;/h2&gt;
 &lt;p&gt;  &lt;img alt="" src="http://www.alibuybuy.com/wp-content/uploads/2015/06/fdfbe02dd1344f89585a3b15a8af9694.jpg"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;Apple Watch 已经有数千款应用，但当中好用的却不多。其原因除了应用开发者只有很短的时间可以熟悉手表以外，另一个问题这些应用也没法在手表上直接运行。&lt;/p&gt;
 &lt;p&gt;目前非苹果自家的 Apple Watch 应用都非常慢。因为应用的所有计算都在 iPhone 上完成，然后通过蓝牙传输到手表上，效率可想而知。苹果今天发布的新开发工具 Native watchSDK 将允许第三方应用直接在手表上运行。&lt;/p&gt;
 &lt;p&gt;除了更快以外，新的开发工具将允许应用在手表上录音、控制震动、播放音乐和视频、读取用户的心跳等体征信息。基本上，原先苹果自己应用能做的事，第三方应用基本也能做了。&lt;/p&gt;
 &lt;p&gt;一个例子是新的微信。原先微信在回复对方时，如果你说话，就会语音识别为文字，准确度不高。现在可以直接将语音发送给对方，就像手机微信一样。&lt;/p&gt;
 &lt;p&gt;新系统 watchOS 2 和原生 Apple Watch 应用将在今年秋天开放给普通用户。&lt;/p&gt;
 &lt;h2&gt;iOS 9：一次全面内部翻修&lt;/h2&gt;
 &lt;p&gt;苹果将新系统的重点放在优化基础之上。据称新系统更加省电，可以将 iPhone 6 的续航时间延长 1 小时，新增的省电模式甚至可以在此基础上再多用 3 小时，这意味着带 iPhone 6 出门一天可以基本忽略掉续航不足的问题。&lt;/p&gt;
 &lt;p&gt;此前饱受诟病的升级所需空间也由 4.6GB 下降到 1.3GB，对于只能买的起 16GB iPhone 的朋友绝对是一个好消息。除了这些基础性能的增强外，iOS 9 最引人瞩目的功能莫过于更聪明的 Siri 和 Spotlight。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;更主动的智能助手“Apple Now”&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;在刚刚过去的 Google I/O 大会上，新版 Android M 带来最振奋人心的功能应该就是“Now on tap”。它为 Google 的智能助手 Google Now 提供了回答问题的场景，你可以在需要的时候呼唤它，它省去了麻烦的语音搜索步骤。&lt;/p&gt;
 &lt;p&gt;然而，在 Google Now 越来越主动，与用户的交互越来越简单的同时。曾经第一个来到普通消费者身边的智能语音助手 Siri 的性格却依然是那么保守被动，现在，苹果希望它变得开放一点。&lt;/p&gt;
 &lt;p&gt;就像之前透露的 Proactive 功能那样，iOS 9 上的新 Siri 可以根据用户目前的时间、地点、正在使用的应用进行个性化辅助，例如当你工作日早上出家门时，Siri 就能够分析交通为你规划好上班路线。&lt;/p&gt;
 &lt;p&gt;很明显，现在所谓的智能助手都不够智能，新版 Siri 限制了助手所需要考虑的问题范围，无疑会带来更有准确的答案。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;回归最左位置的 Spotlight&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;在之前的版本更新中，Spotlight 的地盘曾经一度被清除，不过现在它回来了，而且变得更加强大。现在用户可以在主界面向右滑动屏幕来到 Spotlight 搜索界面，它由上至下分为三大部分，Siri 建议、附近和新闻三栏。&lt;/p&gt;
 &lt;p&gt;“Siri 建议”里是用户常用的联系人和应用；“附近”栏为用户提供吃饭、消费、玩乐等基于位置的推荐信息；“新闻”栏则涉及苹果新推出的应用程序。&lt;/p&gt;
 &lt;p&gt;新 Spotlight 同时也是第三方应用的入口，比如你搜索一个餐厅，可以直接显示来自大众点评的信息，点一下就会直接在应用里打开那间餐厅的详细信息。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;新应用“News”（新闻）&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="" src="http://www.alibuybuy.com/wp-content/uploads/2015/06/9cf3a21d31d98ccaaa1b7633b6c61a17.jpg"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;Newsstand 失败后，现在苹果推出了 News（新闻）应用取而代之。&lt;/p&gt;
 &lt;p&gt;News 类似于 Flipboard、Zaker 或是 Facebook 新推出的 Instant Articles。通过该应用，用户可以按照刊物、类别和关键字订阅自己感兴趣的内容。&lt;/p&gt;
 &lt;p&gt;目前加入进来的杂志和网站有《纽约时报》、《连线》、Quatz、ESPN、康泰纳仕下属的 17 本杂志、《经济学人》等等，它们的文章会重新排版，并加入更多的图片和视频来增强可读性。可以看到，苹果等科技公司正在努力将文字媒体“新闻”纳入到自己的生态圈中。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;Home 智能家居中心&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="" src="http://www.alibuybuy.com/wp-content/uploads/2015/06/e2a9628619616eab65fdaaa122d7dfe3.jpg"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;在去年的 WWDC 上苹果推出了 HomeKit 套件供第三方开发者将智能硬件接入苹果的智能家居平台。经过一年的运营后，苹果的智能家居应用终于面世了。&lt;/p&gt;
 &lt;p&gt;这个叫做 Home 的应用可以通过 iCloud 统一操控你家里所有的智能设备，并且在不同设备间建立连接，形成协同工作的效果。例如当你晚上回家后，你的空调、热水器都已经准备好，你就可以舒舒服服的洗澡上床睡觉了。&lt;/p&gt;
 &lt;p&gt;不过，对于没有购买智能家居设备的人来说，不过是 iPhone 上有多了一个删不掉的应用罢了。&lt;/p&gt;
 &lt;p&gt;除了这些重点更新外，还有一些小进步。&lt;/p&gt;
 &lt;ul&gt;
  &lt;li&gt;Apple Pay，苹果支付的影响力越来越大，Square、Pinterest 等应用开始支持 Apple Pay。下个月该服务也将进入英国。此前的 Passbook 卡单管理应用开始支持储值卡，也同时改成了更贴切的名字 Wallet（钱包）。&lt;/li&gt;
  &lt;li&gt;记事本开始支持画图功能，以及图片，超链接等格式的插入，向 Evernote 等笔记类应用演进。&lt;/li&gt;
  &lt;li&gt;地图应用开始支持公共交通换乘，其中包括绝大部分中国城市。&lt;/li&gt;
&lt;/ul&gt;
 &lt;h2&gt;一屏两个应用，你准备好用 iPad 干点正事了吗？&lt;/h2&gt;
 &lt;p&gt;苹果去年推出的大屏幕 iPhone 6 一骑当千，它强劲的销售势头不仅仅将原来的智能手机霸主三星挑下马，扫过的锋芒甚至还对自己的友军 iPad 造成了不小伤害。&lt;/p&gt;
 &lt;p&gt;大屏幕 iPhone 的出现直接让小屏幕的 iPad mini 显得可有可无，消费者发现平板最重要的看视频、上网的功能在大屏手机上也能得到很好的体验。乔布斯之前为 iPad 设定的使用场景——休闲——被 iPhone 取代，库克需要为 iPad 寻找下一个使用场景，不是为了休闲，而是为了工作。&lt;/p&gt;
 &lt;p&gt;于是，苹果在今天为 iPad 带来了尤为重要的两个功能，增强版 QuickType 和多任务处理分屏功能，iPad 终于有点生产了工具的样子了。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;QuickType&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;去年随 iOS 8 推出的 QuickType 还很简单，它能够在用户输入英文时根据上下文进行联想与补全，这个功能对于中文用户来说相当鸡肋。但是新 QuickType 的用法一定会让你大跌眼镜。&lt;/p&gt;
 &lt;p&gt;它让用户把虚拟键盘当作触控板，实现文字的剪切、移动、粘贴等等功能，能够方便用户快速进行文字输入与整理。此外，在该功能支持下，iPad 的外接键盘可以对 iOS 9 进行快捷键操作，键位与传统 OS X 相同。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;多任务处理与分屏&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="" src="http://www.alibuybuy.com/wp-content/uploads/2015/06/b6bc3744161897201a355cae4f0edccd.jpg"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;谣传已久的 iPad 分屏处理功能终于见分晓，新的任务切换界面更加优美。在使用某个应用 A 时，用户随时可以侧滑呼叫出另一个应用 B，应用 B 此时处于临时使用的状态，浮在应用 A 的表面。如果需要同时操作，只需要再点击应用 A 就可以将 A、B 进行同屏操作。&lt;/p&gt;
 &lt;p&gt;除此以外，所有应用中的视频都可以单独提取出来，作为一个小视频框在全局进行观看。&lt;/p&gt;
 &lt;p&gt;这两个功能从根本上改变了 iPad 的使用习惯，前者从输入、后者从输出分别对 iPad 进行了生产力级别的改造。虽然还不及桌面电脑，但是在进行简单文字处理上，已经绰绰有余。&lt;/p&gt;
 &lt;p&gt;遗憾的是，这么多代 iPad 中，只有去年推出的 iPad Air 2 这一款产品能用上最新的分屏功能。不过别着急，分屏更适合大屏幕。此前流传已久的大屏幕 iPad 说不定也会在今年晚些时候到来。&lt;/p&gt;
 &lt;h2&gt;OS X EI Captian 稳中有变&lt;/h2&gt;
 &lt;p&gt;苹果软件高级副总裁 Craig Federighi 首先庆贺了上一代 OS X 操作系统 Yosemite 的接受率，在推出 8 个月内达到了惊人的 55%，这也是历史上普及最迅速的桌面系统。当然他也顺道黑了一下微软的 Windows 8.1，在推出 8 个月后仅有 7% 的用户更新到该版本。&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="" src="http://www.alibuybuy.com/wp-content/uploads/2015/06/fef959138b906f6df57129b52716a58a.jpg"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;新一代苹果桌面系统 OS X 的名字依然沿袭了以加州风景命名的习惯，叫做 EI Captian（伊尔酋长岩），属于 Yosemite（优胜美）国家公园的重要景观之一，或许也在暗示该版本是对上一版本的内核稳定性的提升。&lt;/p&gt;
 &lt;p&gt;数据上看，在该版本系统中，应用的启动速度、切换速度、PDF 等文件的预览速度都得到了一定增强。苹果跟新了上一次 WWDC 大会上推出的 Metal 图形 API 工具，它能够提升 Mac 上大型 3D 游戏的运行效果。&lt;/p&gt;
 &lt;p&gt;除此以外，新一代桌面系统还有以下几个小升级：&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;Safari&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;终于，Safari 再次向 Google Chrome 看齐。新一代的浏览栏添加了固定标签页以及页面快速静音，两个在 Chrome 上早已有之的供能。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;Spotlight&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;苹果将更多小工具加入苹果全局搜索的功能里，例如股票、天气、比赛等。这类似于很早就在 Google、百度等搜索引擎中应用的特殊搜索技巧。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;邮件&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;苹果为邮件应用纂写新邮件的页面也添加了标签功能，同时搜索框也变得智能了一点，知道“没回的邮件”是什么意思。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;窗口管理&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;这一次 OS X 最值得一提的就是多窗口、多屏幕管理功能。用户在一个屏幕内的窗口可以做到自动对齐，并且更方便的通过上方的多屏栏进行管理。该功能早在 Windows 8 中就已经出现，不过从现场演示看，苹果对于窗口边界的识别能力更好。&lt;/p&gt;
 &lt;h2&gt;不那么令人惊喜的“One more thing”&lt;/h2&gt;
 &lt;p&gt;在苹果眼里，这一次 WWDC 的重头戏既不是迈向生产力工具的 iPad，也不是迎来重要突破的 watchOS，而是谣传已久的，曾经帮助苹果白手起家的重要功臣——音乐服务。&lt;/p&gt;
 &lt;p&gt;然而之所以说这是一个并不有趣的服务，一方面是由于它至今没有进入中国，可以说与我没什么关系，另一方面则是因为它不够酷，这个音乐应用太胖了。你可以把这个 Apple Music 音乐想像成几个不同服务的结合体，就好像苹果把一个 iPod、一个 Spotify、一个 Pandora 以及半个专为歌手准备的公众号塞到了一个应用中。&lt;/p&gt;
 &lt;p&gt;当你可以用它下载专辑、进行点播、收听真人电台以及与歌星互动，当一切与音乐相关的服务都可以在这个应用里实现时，人们反而可能会丧失对音乐的兴趣，你会喜欢这个大而全的音乐应用吗？&lt;/p&gt;
 &lt;p&gt;经过 8 年的发展，iPhone 和 Mac 都已经到达一个相对成熟的状态，我们在这两个产品上看到的越来越多的是完善而非创新。从此次 WWDC 公布的新软件来看，苹果的重点变成了刚刚迈出第一步的手表和销量下滑的 iPad。而它们能不能取得类似 iPhone 的辉煌，将取决于苹果未来两年能通过软件带来多少新的可能。&lt;/p&gt;
 &lt;p&gt;来源：http://www.qdaily.com/display/articles/10562.html&lt;/p&gt;
 &lt;hr&gt;&lt;/hr&gt;
 &lt;p&gt;  &lt;small&gt;© 推荐 for    &lt;a href="http://www.alibuybuy.com"&gt;互联网的那点事&lt;/a&gt;. |
猛击下载：   &lt;a href="https://itunes.apple.com/cn/app/hu-lian-wang-de-na-dian-shi/id670210055?mt=8"&gt;    &lt;strong&gt;iPhone客户端&lt;/strong&gt;&lt;/a&gt;  猛击下载：   &lt;a href="http://www.alibuybuy.com/alibuybuy.apk"&gt;    &lt;strong&gt;Android客户端&lt;/strong&gt;&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;
&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>IT的那些事</category>
      <guid isPermaLink="true">https://itindex.net/detail/53614-%E8%8B%B9%E6%9E%9C-ios-watchos</guid>
      <pubDate>Tue, 09 Jun 2015 08:21:04 CST</pubDate>
    </item>
    <item>
      <title>如何让你的安卓手机瞬间变Firefox os 畅玩firefox os 应用</title>
      <link>https://itindex.net/detail/51263-%E5%AE%89%E5%8D%93-%E6%89%8B%E6%9C%BA-%E7%9E%AC%E9%97%B4</link>
      <description>&lt;p&gt;  Firefox os 手机迟迟不能在国内大面积上市，现在能买到的Firefox os手机国内就一款Firefox os ZET OPEN C ,但这款手机配置确实还不如人意，价格方面也不实惠，对于我们火狐os爱好者来说真的是一种煎熬的等待与选择，但今天我想告诉你其Firefox os 离我们并不远了，今天我就以图文的方式教大家如何在我们已有的android 手机设备上玩firefox os应用！！！  &lt;br /&gt;
  &lt;br /&gt;
    首先我们去手机里的任意安卓应用市场上下载Firefox os浏览器并安装！  &lt;br /&gt;
  &lt;img alt="" height="800" src="http://i5fox.com/data/attachment/forum/201409/29/093719ojp08955o0mmj51p.jpg" width="450"&gt;&lt;/img&gt;  &lt;br /&gt;
                                                 下载  &lt;br /&gt;
  &lt;img alt="" height="800" src="http://i5fox.com/data/attachment/forum/201409/29/093720t0k2xxze99rzk07k.jpg" width="450"&gt;&lt;/img&gt;  &lt;br /&gt;
                                          安装并打开  &lt;br /&gt;
  &lt;img alt="" height="800" src="http://i5fox.com/data/attachment/forum/201409/29/093721rsdtlz5v8jrv2qkk.jpg" width="450"&gt;&lt;/img&gt;  &lt;br /&gt;
点击Menu键出现以上情况，点击工具  &lt;br /&gt;
  &lt;img alt="" height="800" src="http://i5fox.com/data/attachment/forum/201409/29/093722d8b2f1b2xn1j0ynr.jpg" width="450"&gt;&lt;/img&gt;  &lt;br /&gt;
                                       点击应用.  &lt;br /&gt;
  &lt;br /&gt;
  &lt;img alt="" height="800" src="http://i5fox.com/data/attachment/forum/201409/29/093731v66a8xcox3d5uvue.jpg" width="450"&gt;&lt;/img&gt;  &lt;br /&gt;
点击浏览火狐应用市场  &lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  &lt;img alt="" height="800" src="http://i5fox.com/data/attachment/forum/201409/29/093732ngn58fi28g484gta.jpg" width="450"&gt;&lt;/img&gt;  &lt;br /&gt;
好了，基本上我们可以看到Firefox os 应用市场的雏型了  &lt;br /&gt;
  &lt;br /&gt;
  &lt;img alt="" height="800" src="http://i5fox.com/data/attachment/forum/201409/29/093733xn380nayr2yqga02.jpg" width="450"&gt;&lt;/img&gt;  &lt;br /&gt;
点击任意游戏免费版;   &lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  &lt;img alt="" height="800" src="http://i5fox.com/data/attachment/forum/201409/29/0937344umd54451yfyc4yc.jpg" width="450"&gt;&lt;/img&gt;  &lt;br /&gt;
下载过后会弹出安装对话  &lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  &lt;img alt="" height="800" src="http://i5fox.com/data/attachment/forum/201409/29/093736dwzpcnjhqdrrdopp.jpg" width="450"&gt;&lt;/img&gt;  &lt;br /&gt;
安装应用并打开  &lt;br /&gt;
  &lt;br /&gt;
  &lt;img alt="" height="800" src="http://i5fox.com/data/attachment/forum/201409/29/0937379nzn2q2wccn2ossp.jpg" width="450"&gt;&lt;/img&gt;  &lt;br /&gt;
桌面上我们也可以看到应用的快捷启动图标!   &lt;br /&gt;
ok,现在我们就可以尽情的畅玩Firefox os 游戏及应用了，是不是觉得android 手机秒变Firefox os 呢！大家可以去试试吧！！&lt;/p&gt;
 &lt;p&gt;原文链接:http://i5fox.com/forum.php?mod=viewthread&amp;amp;tid=8835&lt;/p&gt;
 &lt;p&gt;喜欢Firefox os 手机的朋友还可以关注Firefox os5狐网微信公众平台！&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="" height="182" src="http://i5fox.com/data/attachment/forum/201409/04/093456vxqgiuvujqcagavk.jpg" width="211"&gt;&lt;/img&gt;&lt;/p&gt;

 &lt;div&gt;
    作者：GameLife_lch 发表于2014-9-29 17:05:19   &lt;a href="http://blog.csdn.net/gamelife_lch/article/details/39672587"&gt;原文链接&lt;/a&gt;
&lt;/div&gt;
 &lt;div&gt;
    阅读：83 评论：0   &lt;a href="http://blog.csdn.net/gamelife_lch/article/details/39672587#comments" target="_blank"&gt;查看评论&lt;/a&gt;
&lt;/div&gt;

&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/51263-%E5%AE%89%E5%8D%93-%E6%89%8B%E6%9C%BA-%E7%9E%AC%E9%97%B4</guid>
      <pubDate>Tue, 30 Sep 2014 01:05:19 CST</pubDate>
    </item>
    <item>
      <title>苹果OS X Yosemite正式版上手体验</title>
      <link>https://itindex.net/detail/51447-%E8%8B%B9%E6%9E%9C-os-yosemite</link>
      <description>&lt;p&gt;在前天的新一代 iPad 及 iMac 发布会之后，苹果公司向用户提供了 OS X Yosemite 正式版，依然是免费政策，目前用户通过 Mac App Store 已经可以下载安装。&lt;/p&gt;
 &lt;p&gt;在经过简单体验后，向大家介绍一下最新版本的 OS X 的新特性。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;1. 外观：扁平化，更简洁&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;相对于之前的各个 OS X 版本，OS X Yosemite 最大的改变就是外观上，相当于从 iOS 6 到 iOS7 的扁平化设计巨变。视觉效果全面提升的同时，和 iOS 版本也更加统一，这也符合之前大家猜测的融合趋势，从全新的 Dock 图标上就可以一眼看出。&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="&amp;#33529;&amp;#26524; OS X Yosemite &amp;#27491;&amp;#24335;&amp;#29256;&amp;#19978;&amp;#25163;&amp;#20307;&amp;#39564;" src="http://images.cnitblog.com/news/66372/201410/182034031859592.png"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;扁平化 Dock 图标&lt;/p&gt;
 &lt;p&gt;在 OS X Yosemite 里，苹果把窗口的半透明化做的非常精致，如果有窗口部分层叠，你能透过最表层的窗口看到下面应用程序或者桌面的色彩内容。&lt;/p&gt;
 &lt;p&gt;苹果 OS X 的内置应用也都被全新设计了外观和部分细节，单击 Safari 的地址栏，下方就会弹出书签里的网址以便快速访问，标签视图可以快速的管理目前打开的网站页面，还有 12 个经常访问的网站推荐，在 iOS 设备上现在也是如此。&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="&amp;#33529;&amp;#26524; OS X Yosemite &amp;#27491;&amp;#24335;&amp;#29256;&amp;#19978;&amp;#25163;&amp;#20307;&amp;#39564;" src="http://images.cnitblog.com/news/66372/201410/182034033732536.png"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;新版的 Safari 浏览器新版的 Safari 浏览器&lt;/p&gt;
 &lt;p&gt;窗口的放大缩小和关闭按钮很像红黄绿三色的交通信号灯，并且放大按钮直接替代了原来位于右上角的全屏显示。不过退出全屏的时候，还是可以从右上角进行操作的。&lt;/p&gt;
 &lt;p&gt;双指向左轻扫触摸板可以打开新的通知中心，和 iOS 8 下拉显示的非常类似，新加入了今日摘要和各种 Widgets，并能通过 Mac App Store 更新。&lt;/p&gt;
 &lt;p&gt;新的 Spotlight 搜索甚至可以让你直接进行运算、汇率转换，还能在维基百科、Bing、新闻和地图等多个来源查找信息。查询结果还可以直接拨出电话、发送电子邮件等，当然，也可以像 iOS 一样通过搜索直接打开应用程序。&lt;/p&gt;
 &lt;p&gt;在邮件部分，苹果为其加入了基于 iCloud 的超大附件发送工具 Mail Drop，可以给对方发视频、演示文档甚至是文件夹，对方如果使用 Mac 的邮件应用，就和普通的附件完全类似，如果是其它应用或网页，就会收到一个链接来下载附件，每个附件最大可达 5GB。&lt;/p&gt;
 &lt;p&gt;另外，苹果还增加了对邮件附件如图片、表格和 PDF 功能进行批注修改的标记功能，可以使用手指签字，或者用 Mac 摄像头拍下签字用来添加签名。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;2. 连续互通：统一电脑手机平板&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;在 OS X Yosemite 上，如果你在拥有 Mac 的同时还有 iOS 设备例如 iPhone 或 iPad，那将会体验到一个全新的功能——苹果称之为“连续互通(Continuity)”。&lt;/p&gt;
 &lt;p&gt;在你的所有设备都连接 iCloud 后，Mac 和 iOS 设备会“默契合作”。&lt;/p&gt;
 &lt;p&gt;首先，当 iPhone 有新的来电时，你的 Mac 和 iPad 都会响起，这样即使 iPhone 在客厅充电，你也可以在卧室用 iPad 接听电话；当你的 iPhone 还放在包里，就可以用面前的 Mac 接听此次通话，当然拨出也是可以的。&lt;/p&gt;
 &lt;p&gt;对第一次体验这个功能的用户来说，开始会有点不习惯，尤其是来个电话的时候会手忙脚乱，但随后适应就好。&lt;/p&gt;
 &lt;p&gt;不只是 iMessage，你的所有短信息都会同步显示在安装了 OS X Yosemite Mac 和 iOS 8 的设备上。这样可以通过 Mac 和 iPad 直接回复信息。&lt;/p&gt;
 &lt;p&gt;然后，两个设备之间有苹果称之为“Handoff”的功能，即可以用 Mac 和 iOS 设备延续性工作：假如在 iPhone 上创建了邮件，Mac 的左下角会出现一个图标，点击后即可接着在 Mac 上继续完成这个邮件，反之亦然。&lt;/p&gt;
 &lt;p&gt;根据苹果官网的描述，Handoff 可以和邮件、Safari、Pages、Numbers、Keynote、地图、信息、提醒事项、日历和通讯录配合使用。而且，开发者还可将 Handoff 加入到他们的 Apps 中。&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="&amp;#33529;&amp;#26524; OS X Yosemite &amp;#27491;&amp;#24335;&amp;#29256;&amp;#19978;&amp;#25163;&amp;#20307;&amp;#39564;" src="http://images.cnitblog.com/news/66372/201410/182034033266550.png"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;可以直接链接 iPhone 做热点并显示电量何信号&lt;/p&gt;
 &lt;p&gt;最后，连续互通还包括方便的个人热点连接功能，当 iPhone 在 Mac 附近(通过蓝牙判断，所以必须打卡蓝牙)，点击 Mac 的 Wi-Fi 图标，你的 Mac 就能发现可以做热点的 iPhone 并直接连接，还能显示 iPhone 的信号强度和电池情况。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;总结：&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;从近几代尤其是 Mountain Lion 开始，OS X 与 iOS 设计风格和功能上融合的趋势更加明显，在今年的版本上已经加入了扁平化元素。未来两者会不会合二为一，或者有像传闻中的中等屏幕尺寸的 Mac 或 iPad 同时使用两个系统由用户切换呢？我们拭目以待。&lt;/p&gt;
 &lt;p&gt;苹果在 OS X Yosemite 上大幅增强了 Mac 和 iOS 设备上的协同工作和连接功能，对于 iOS 用户的吸引力很大，旨在互相推动双方的保有量尤其是 iPhone 用户向潜在 Mac 用户的转化。&lt;/p&gt;
 &lt;p&gt;对那些正在用 Mac 却搭配非 iPhone 的用户来说，OS X Yosemite 是他们购买 iPhone 的一大推动力；反之，正在用 iPhone 的用户，若想在电脑之间获取更有趣也更有用的体验，一台 Mac 电脑也是必备之选。&lt;/p&gt; &lt;p&gt;  &lt;a href="http://news.cnblogs.com/n/506271/" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt; &lt;img alt="" height="1" src="http://news.cnblogs.com/news/rssclick.aspx?id=506271" width="1"&gt;&lt;/img&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/51447-%E8%8B%B9%E6%9E%9C-os-yosemite</guid>
      <pubDate>Sat, 18 Oct 2014 20:34:28 CST</pubDate>
    </item>
    <item>
      <title>苹果WWDC 2014汇总：iOS 8、OS X和新的编程语言</title>
      <link>https://itindex.net/detail/49868-%E8%8B%B9%E6%9E%9C-wwdc-ios</link>
      <description>&lt;div&gt;
  &lt;br /&gt;  &lt;img src="http://dl2.iteye.com/upload/attachment/0097/7278/15c5214b-565f-3ebe-bc1d-95e429ac5cd7.jpg"&gt;&lt;/img&gt;&lt;/div&gt;
 &lt;br /&gt;
 &lt;br /&gt;北京时间6月3日凌晨1点，苹果在美国旧金山Moscone中心举行了一年一度的WWDC开发者大会。传闻中的iPhone 6、Retina版本的MacBook Air、4K分辨率的iMac均爽约，这是一场只有软件没有硬件的发布会。
 &lt;br /&gt;
 &lt;br /&gt; &lt;strong&gt;1.  全新的Mac OS X 10.10 Yosemite&lt;/strong&gt;
 &lt;br /&gt;
 &lt;br /&gt; &lt;div&gt;  &lt;img src="http://dl2.iteye.com/upload/attachment/0097/7281/dcd6aaf1-b842-328f-a5c6-3fed234d70e3.jpg"&gt;&lt;/img&gt;&lt;/div&gt;
 &lt;br /&gt;
 &lt;br /&gt;没有任何悬念，今年的 WWDC 如期发布了全新的OS X Yosemite。和当初的 iOS 7 一样， &lt;strong&gt;OS X Yosemite 来了一个超级大变脸，整体采用了扁平化的设计风格&lt;/strong&gt;：和 iOS 一样的 Dock 栏、全部重新绘制的应用图标，以及随处可见的毛玻璃效果，OS X 的整体设计和 iOS 如出一辙。
 &lt;br /&gt;
 &lt;br /&gt;当然不仅仅是设计上的变化， &lt;strong&gt;在整个功能上 OS X Yosemite 都借鉴了不少 iOS 的元素，并且进一步同 iOS 进行无缝的整合&lt;/strong&gt;。例如：
 &lt;br /&gt;
 &lt;br /&gt; &lt;ul&gt;
  &lt;li&gt;完全重新设计的通知中心，新加入了日历提醒、天气、股票等 iOS 常见的通知栏内容；
&lt;/li&gt;  &lt;li&gt;首次实现了 OS X 和 iOS 的 AirDrop 连接功能；
&lt;/li&gt;  &lt;li&gt;通过 Handoff 功能，苹果在 OS X 上整合了 iPhone 的短信和通话功能，可以直接通过 Mac 接打电话......&lt;/li&gt;&lt;/ul&gt;
 &lt;strong&gt;另外 OS X Yosemite 还带了不少功能上的强化&lt;/strong&gt;，例如：
 &lt;br /&gt;
 &lt;br /&gt; &lt;ul&gt;
  &lt;li&gt;重新设计的邮件客户端，支持超大附件的云端中专功能；
&lt;/li&gt;  &lt;li&gt;全新升级的 Safari 浏览器，据苹果官方给出的数据，几乎在任何测试环节都完胜 Chrome，带来全新的浏览体验；
&lt;/li&gt;  &lt;li&gt;全新的 iCloud Drive 客户端，用户可以在 Mac、iPhone、iPad 甚至是 PC 之间同步数据。&lt;/li&gt;&lt;/ul&gt;
 &lt;strong&gt;OS X Yosemite 将在秋季向所有用户免费开放更新，开发者们今天就可以下载测试版本。&lt;/strong&gt;不是开发者又想提前体验最新 OS X 的朋友则可以通过OS X Beta Seed Program申请。
 &lt;br /&gt;
 &lt;br /&gt; &lt;strong&gt;2.  万众期待的iOS 8，更多的是功能上的改进&lt;/strong&gt;
 &lt;br /&gt;
 &lt;br /&gt; &lt;div&gt;  &lt;img src="http://dl2.iteye.com/upload/attachment/0097/7283/32073e30-71e8-3fd5-bb99-10c6bbd18766.jpg"&gt;&lt;/img&gt;&lt;/div&gt;
 &lt;br /&gt;
 &lt;br /&gt;刚刚经历过 iOS 7 的重大升级，iOS 8 在界面设计上并没有带给我们太多的惊喜， &lt;strong&gt;依旧延续了 iOS 7 扁平化的风格，但在功能上 iOS 8 还是带来了不少惊喜&lt;/strong&gt;，比较简单粗暴的总结就是 iOS 越发的 Android 化了。
 &lt;br /&gt;
 &lt;br /&gt; &lt;strong&gt;iOS 8 进一步强化了通知栏的功能，不仅仅是功能上的改动，而是开放了接口&lt;/strong&gt;，第三方应用可以利用 iOS 8 的接口，直接在通知中心创建 Widget；iOS 8 在收到消息提醒后，可以直接在消息通知栏中回复信息；在多任务界面中整合了常用联系人，点击头像就可以打电话、发短信、或者进行 Facetime；Family Sharing，可以建立一个属于家庭成员之间的“私有云”等等。
 &lt;br /&gt;
 &lt;br /&gt; &lt;strong&gt;iOS 8 还专门针对中国地区进行了优化&lt;/strong&gt;，例如新增加了矢量地图、点对点导航功能、增加对中国农历的支持，iOS 8 中的 QuickType 功能同样支持中文输入。
 &lt;br /&gt;
 &lt;br /&gt;尤其值得一提的是新版的 iMessage，iOS 8 中的 iMessage 新增多人群组聊天，支持发送语音消息，支持发送视频，支持发送地理位置，聊天记录中的图片可以归档查看等等，简单的说就是  &lt;strong&gt;iMessage 已经全面微信化，引用网友的评论就是，iMessage和微信就只差了一个朋友圈......&lt;/strong&gt;
 &lt;br /&gt;
 &lt;br /&gt;  &lt;strong&gt;3.  对开发者而言，iOS 8正前所未有的开放&lt;/strong&gt;
 &lt;br /&gt; &lt;div&gt;
  &lt;br /&gt;  &lt;img src="http://dl2.iteye.com/upload/attachment/0097/7285/aa48a3d1-ba24-3634-a33a-b53300b0bdcd.jpg"&gt;&lt;/img&gt;
  &lt;br /&gt;&lt;/div&gt;
 &lt;br /&gt;相信对于大多数用户来说，他们对于 iOS 8 的感受远不如开发者们来的震撼，这一次的 WWDC 苹果确实给了开发者不少惊喜，而但中很大一部分的惊喜都来自 iOS 8 的开放，不仅仅是开放，而且是前所未有的开放。
 &lt;br /&gt;
 &lt;br /&gt;就像上面在介绍 iOS 8 功能时提到的那样， &lt;strong&gt;iOS 8 强化了通知中心的功能，开发者可以根据苹果提供的接口自行在通知中心创建 Widget&lt;/strong&gt;，这只是 iOS 8 众多开放接口中的一个而已。例如在 iOS 8 中，苹果向所有开发者开放了社交分享和自定义动作接口，第三方应用也可以像现在 Facebook、Twitter 那样，将分享组件整合进 iOS 中。
 &lt;br /&gt;
 &lt;br /&gt;大家普遍关心的苹果健康管理和智能家居系统，同样是通过开放系统 API 来实现的。 &lt;strong&gt;Healthkit 为可穿戴设备和 App 提供了数据接口&lt;/strong&gt;，而自带应用 Health 则取代传闻中的 Healthbook，成为苹果对健康类硬件和 App 搭建的信息窗口 + 控制中心 + 数据池。
 &lt;br /&gt;
 &lt;br /&gt; &lt;strong&gt;在智能家居方面，苹果推出的 Homekit 可以对家庭中的灯光、门锁、摄像头、插座开关等各种联网设备进行控制&lt;/strong&gt;。场景模式与 Siri 的结合十分有趣，你可以睡觉前跟 Siri 说声“晚安”，然后你家大门将自动上锁，灯光则自动关闭。
 &lt;br /&gt;
 &lt;br /&gt;不仅如此， &lt;strong&gt;有着严格安全红线的 Touch ID 现在也可以被第三方应用所使用&lt;/strong&gt;，但为了确保安全性，用户指纹数据将被隔离保护，iOS 和第三方应用均无法获取。
 &lt;br /&gt;
 &lt;br /&gt;相信还有个开放的地方尤其受到中国用户的喜欢，那就是苹果开放了输入法。 &lt;strong&gt;在 iOS 8 中，开发者可以向用户提供全系统使用的输入法&lt;/strong&gt;，输入模式和布局都可以自由定制，WWDC 现场就显示了一款 Swype 式的滑动输入。第三方输入法的记录和词库将可以与 iOS 默认输入法同步。
 &lt;br /&gt;
 &lt;br /&gt;  &lt;strong&gt;4.  全新的开发语言Swift，苹果想要再次定义开发规则&lt;/strong&gt;
 &lt;br /&gt; &lt;div&gt;
  &lt;br /&gt;  &lt;img src="http://dl2.iteye.com/upload/attachment/0097/7287/bca2c73c-04cd-3e24-9905-1fd9a5b4b59a.jpg"&gt;&lt;/img&gt;
  &lt;br /&gt;&lt;/div&gt;
 &lt;br /&gt;在我看来， &lt;strong&gt;整场 WWDC 最大的惊喜就是苹果新推出的全新开发语言——Swift&lt;/strong&gt;，无论实在编程的难度还是执行效率上，都要甩出 Object-C 好几条街的全新语言， &lt;strong&gt;用苹果自己的话说就是，编程从未如此简单。&lt;/strong&gt;
 &lt;br /&gt;
 &lt;br /&gt;Swift 被外国不少技术大牛认为是苹果接下来最具影响力的产品，因为 Swift 会影响整个 OS X 和 iOS 的开发环境。 &lt;strong&gt;Swift 比较牛的地方在于，可以兼容 Object-C 和 C 语言，开发者可以在 Object-C 和 C 语言的基础上，继续用 Swift 进行开发&lt;/strong&gt;。
 &lt;br /&gt;
 &lt;br /&gt;Swift 比起之前的 Object-C 要精简不少，去掉了很多繁琐的代码符号，执行效率要高出不少，而且难度也相应的开发难度也要降低不少；并且 Swift 全部采用可视化编程设计，用户可以一遍写代码，一遍查看代码的实际运行效果，可以进行实时预览，大大提到编程的效率。
 &lt;br /&gt;
 &lt;br /&gt; &lt;strong&gt;为了帮助开发者熟悉 Swift 语言，苹果官方还推出了《The Swift Programming Language》开发指南&lt;/strong&gt;。
 &lt;br /&gt;
 &lt;br /&gt;其实整场发布会看下来，一个比较强烈的感觉是苹果正在进一步整合 OS X 和 iOS 这两大操作系统，无论是在设计风格上，还是功能设置上，都在相互借鉴融合。
 &lt;br /&gt;
 &lt;br /&gt;虽然没有发布任何硬件，但足可见苹果在软件生态上下的功夫。尤其是 iOS 8 开放的各种接口，以及推出更加高效的开放工具，苹果对于软件的重视程度可见一斑。
 &lt;br /&gt;
 &lt;br /&gt;最后，如果错过了苹果的发布会，但又觉得图文直播看得不过瘾的同学，苹果官方已经放出了发布会的视频，点击直接观看。
 &lt;br /&gt;
 &lt;br /&gt;Via  &lt;a href="http://www.36kr.com/p/212511.html" target="_blank"&gt;36氪&lt;/a&gt; / 作者：WANGJINGYU
           &lt;br /&gt; &lt;br /&gt;
          感谢  &lt;a href="http://wnoum.iteye.com"&gt;WnouM&lt;/a&gt; 投递这篇资讯
                     &lt;br /&gt; &lt;br /&gt;资讯来源： &lt;a href="http://www.36kr.com/p/212511.html" target="_blank"&gt;36氪&lt;/a&gt;
          
           &lt;br /&gt; &lt;br /&gt;
          
             &lt;a href="http://www.iteye.com/news/29079#comments"&gt;已有   &lt;strong&gt;2&lt;/strong&gt; 人发表留言，猛击-&amp;gt;&amp;gt;  &lt;strong&gt;这里&lt;/strong&gt;&amp;lt;&amp;lt;-参与讨论&lt;/a&gt;
          
           &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;
ITeye推荐
 &lt;br /&gt;
 &lt;ul&gt;  &lt;li&gt;   &lt;a href="http://www.iteye.com/clicks/433" target="_blank"&gt;—软件人才免语言低担保 赴美带薪读研！— &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
 &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;
          
        &lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/49868-%E8%8B%B9%E6%9E%9C-wwdc-ios</guid>
      <pubDate>Tue, 03 Jun 2014 10:16:08 CST</pubDate>
    </item>
    <item>
      <title>苹果 WWDC 2014 新品发布会 iOS 8、OS X Yosemite 系统 5 分钟无废话版介绍</title>
      <link>https://itindex.net/detail/49863-%E8%8B%B9%E6%9E%9C-wwdc-ios</link>
      <description>今天凌晨，苹果在 WWDC 2014 的新品发布会环节展示了新一代的 iOS 8 和 OS X Yosemite 操作系统，还有新的编程语言 Swift 等一堆硬货。今天一上网被铺天盖地的媒体报道和专家分析烦得不得了是吧？苹果fans 博客照例只写一篇 5 分钟无废话版简介。 &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;h2&gt;OS X Yosemite&lt;/h2&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;新一代的苹果电脑操作系统继续以风景区命名，而且这次的进化幅度要比去年 OS X Maverick 大得多（iOS 8 也是）：&lt;/p&gt; &lt;ul&gt;  &lt;li&gt;扁平化+毛玻璃特效，这个不意外对吧。而且从演示效果来看，比去年 iOS 7 刚拍扁时顺眼多了。&lt;/li&gt;  &lt;li&gt;Spotlight 搜索功能大升级，除了文件搜索还能直接找餐馆、看地图、查维基百科什么的了。搜索框和结果也从右上角搬到了屏幕中心（Alfred 哭死）&lt;/li&gt;  &lt;li&gt;通知中心支持 Widget 扩展，是不是把 Dashboard 挪那去了？&lt;/li&gt;  &lt;li&gt;内置 iCloud Drive 网盘功能（也有 Windows 版），这个太方便了。邮件也可以发送超大附件了。&lt;/li&gt;  &lt;li&gt;MarkUp 标注识别功能，简单说就是你在图片上用鼠标简单画个箭头或文字气泡什么的，Mac 会识别过来并转换成正规的箭头和气泡。给图片或 PDF 文档添加标注时超方便。&lt;/li&gt;  &lt;li&gt;Mac 和 iPhone 蓝牙连接后，直接在电脑上接打电话和收发短信。打个比方，iPhone 变成 Mac 的手机卡插槽。而且还有更多的同步融合功能，比如电脑上打开邮件应用，可以自动显示手机上写到一半的邮件接着写；Mac 上文档做到一半，出门打开 iPad 继续做 …… 苹果的平台整合大法发力后真是太方便了。&lt;/li&gt;  &lt;li&gt;Safari 浏览器做了很多改进，比如选中地址栏但还没输入网址时，自动弹出书签；还有标签滚动显示等等。&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;更多介绍，看苹果官网吧   &lt;u&gt;   &lt;a href="http://www.apple.com/osx/preview/" rel="nofollow" target="_blank" title="http://www.apple.com/osx/preview/"&gt;http://www.apple.com/osx/preview/&lt;/a&gt;&lt;/u&gt;。强烈建议大家看发布会的演示视频，尤其是 Mac 和 iPhone 协同那一段。&lt;/p&gt; &lt;p&gt;OS X Yosemite 系统今年秋天出正式版，免费。心急的话现在就可以下载 Beta 版试用，面向全体用户开放的，不是开发者也没问题。&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;h2&gt;iOS 8&lt;/h2&gt; &lt;p&gt;&lt;/p&gt; &lt;ul&gt;  &lt;li&gt;可以从通知中心和锁屏界面直接回复短信或社交应用推送来的信息了。通知中心里还能安装 Widget 扩展功能。&lt;/li&gt;  &lt;li&gt;短信应用大升级，支持群聊，支持按下直接录微信那样的语音 iMessage，甚至可以发视频和地理位置。&lt;/li&gt;  &lt;li&gt;输入法增加 QuickType 功能，自动推测你下面要输入什么内容，显示在候选栏里，点一下就行不用打字了（支持中文）。&lt;/li&gt;  &lt;li&gt;可以有第三方输入法了（这恐怕是越狱的最大动力了吧），指纹识别也可以让第三方应用调用了（支付宝什么的刷指纹而不是输密码）&lt;/li&gt;  &lt;li&gt;AirDrop 终于支持 Mac 和 iOS 设备之间传输&lt;/li&gt;  &lt;li&gt;一家人可以共享照片、日历等项目，熊孩子乱按乱买 App 的话，家长的手机上会提示输入密码。&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;还有 支持应用之间数据互通，Spotlight 搜索增强（见上一段 Mac 那部分），Siri 支持听声音识别歌名，更多的照片美化功能，更强的游戏画面渲染功能，HomeKit 智能家居方案+CloudKit 云存储方案+Health 健康与运动数据方案（都是面向开发者的）…… 等等等等功能。看苹果官网介绍吧   &lt;u&gt;   &lt;a href="http://www.apple.com/ios/ios8/" rel="nofollow" target="_blank" title="http://www.apple.com/ios/ios8/"&gt;http://www.apple.com/ios/ios8/&lt;/a&gt;&lt;/u&gt;&lt;/p&gt; &lt;p&gt;iOS 8 系统也是今年秋天正式发布，现在的 Beta 版只有苹果开发者可以下载。坏消息是：iPhone 4 被踢出可升级机型列表了。&lt;/p&gt; &lt;p&gt;最后，苹果还发布了新的编程语言：Swift。看起来比 Objective-C 简单得多。&lt;/p&gt; &lt;hr&gt;&lt;/hr&gt; &lt;p&gt;苹果中国官网还没更新，所以放的是美国官网的英文页面地址。发布会视频也没贴出来。过几小时发布会视频和中文版网页上线，我会更新本文。&lt;/p&gt; &lt;br /&gt;Tags -  &lt;a href="http://www.mac52ipod.cn/tag.php?tag=%25E4%25BA%2594%25E5%2588%2586%25E9%2592%259F" rel="tag"&gt;五分钟&lt;/a&gt; ,  &lt;a href="http://www.mac52ipod.cn/tag.php?tag=wwdc" rel="tag"&gt;wwdc&lt;/a&gt; &lt;img border="0" height="0" src="http://www1.feedsky.com/t1/728767063/applefan/feedsky/s.gif?r=http://www.mac52ipod.cn/post/apple-wwdc-2014-ios-8-os-x-yosemite-event.php" width="0"&gt;&lt;/img&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>苹果杂谈</category>
      <guid isPermaLink="true">https://itindex.net/detail/49863-%E8%8B%B9%E6%9E%9C-wwdc-ios</guid>
      <pubDate>Tue, 03 Jun 2014 04:05:35 CST</pubDate>
    </item>
    <item>
      <title>升级到 Mac OS X 10.10 Yosemite (Beta)</title>
      <link>https://itindex.net/detail/50534-%E5%8D%87%E7%BA%A7-mac-os</link>
      <description>&lt;p&gt;上周四苹果发布了 Mac OS X 10.10 Yosemite Beta 公开测试版，如果你提前加入了 OS X Beta Program 的话会收到邮件，按照提示提取或手动输入 Redemption Code 后就可以下载安装了。和  &lt;a href="http://www.vpsee.com/2013/10/upgrade-my-mac-to-os-x-mavericks/"&gt;升级 Mac OS X 10.9 Mavericks&lt;/a&gt; 时候一样，升级 Mac OS X 10.10 Yosemite 直接通过 App Store 就可以完成。&lt;/p&gt;
 &lt;p&gt;目测改变最大的是界面，继续向扁平化、iOS 7 风格靠拢，菜单字体也变了。自己用得最多、最在意的两个程序是 Safari 和 Terminal.&lt;/p&gt;
 &lt;p&gt;Safari.app 改进挺大，终于加上了 Google Chrome 几年前就有的 “直接在地址栏搜索”，因为从来不关机，所以浏览器经常会有 n 个 tab 页放在那里，时间长了这些 tab 不容易找，单从 tab 上面的 title 没法快速识别自己要找哪个 tab，Safari 菜单上的 show all tabs 能快速预览所有 tabs，正是我想要的。&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="Mac OS X 10.10 Yosemite" src="http://www.vpsee.com/wp-content/uploads/2014/07/mac-os-x-yosemite1.png"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;
&lt;/p&gt; &lt;p&gt;Terminal.app 没有多大变化，依然没有 iTerm2.app 那种多窗口切分功能，只能依靠 tmux 做窗口、会话切分。&lt;/p&gt;
 &lt;p&gt;Calendar.app 也是常用的 app，这年头记不住事，全靠 Calendar/Reminder/Notes/Timer 之类的工具。不知道大脑退化是否和这些 app 有关，反正自从可以用电脑打字以后，很少碰过笔，现在拿笔写出来的字惨不忍睹～，不知道大家还记不记得曾经有 “书法” 这个词～&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="Mac OS X 10.10 Yosemite" src="http://www.vpsee.com/wp-content/uploads/2014/07/mac-os-x-yosemite2.png"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;
&lt;/p&gt; &lt;p&gt;Spotlight 功能大大加强，而且搜索的速度大大提高，也可能是因为我的硬盘是 SSD 的缘故，搜索结果基本上是实时显示。&lt;/p&gt;
 &lt;p&gt;Notifications 增加了 “Today” 标签页，用户可以在 “Today” 里看日历、提醒、天气、股票、计算器等常用信息，据说苹果开放了 API，第三方程序也可以将信息显示到 “Today” 里，貌似苹果打算这个新的信息展示页面替代老的 Dashboard.&lt;/p&gt;
 &lt;p&gt;iCloud Drive 可以到 System Preferences -&amp;gt; iCloud 开启，5GB 免费，和 Dropbox 用法一样。&lt;/p&gt;
 &lt;p&gt;可能因为我的使用习惯是保持系统最简，不怎么用第三方软件，不会出现乱七八糟的软件兼容、干扰等问题，Mac OS X 10.10 Yosemite 公开测试版在  &lt;a href="http://www.vpsee.com/2013/09/my-new-macbook-pro/"&gt;我的 Mac&lt;/a&gt; 上运行很稳定，完全可以当作正式版用～&lt;/p&gt;
&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>Mac mac os x</category>
      <guid isPermaLink="true">https://itindex.net/detail/50534-%E5%8D%87%E7%BA%A7-mac-os</guid>
      <pubDate>Mon, 28 Jul 2014 18:52:51 CST</pubDate>
    </item>
    <item>
      <title>Mozilla开发基于Firefox OS的流媒体电视棒</title>
      <link>https://itindex.net/detail/50126-mozilla-%E5%BC%80%E5%8F%91-firefox</link>
      <description>在踏入智能手机领域之后，Mozilla正在研发另一个秘密项目：类似Chromecast的流媒体电视棒，运行Firefox OS操作系统。和Firefox OS智能手机一样，Mozilla的电视棒也将没有任何限制，将会开放启动引动程序。Chromecast限制了成人内容，而Mozilla的电视棒将不会有此类的内容限制。Mozilla不参合硬件制造，不限制厂商修改操作系统，不像Google那样严密控制Chromecast的开发和制造。 &lt;img border="0" height="1" src="http://solidot.org.feedsportal.com/c/33236/f/556826/s/3bc110eb/sc/21/mf.gif" width="1"&gt;&lt;/img&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;a href="http://da.feedsportal.com/r/199120209691/u/49/f/556826/c/33236/s/3bc110eb/sc/21/rc/1/rc.htm" rel="nofollow"&gt;  &lt;img border="0" src="http://da.feedsportal.com/r/199120209691/u/49/f/556826/c/33236/s/3bc110eb/sc/21/rc/1/rc.img"&gt;&lt;/img&gt;&lt;/a&gt; &lt;br /&gt; &lt;a href="http://da.feedsportal.com/r/199120209691/u/49/f/556826/c/33236/s/3bc110eb/sc/21/rc/2/rc.htm" rel="nofollow"&gt;  &lt;img border="0" src="http://da.feedsportal.com/r/199120209691/u/49/f/556826/c/33236/s/3bc110eb/sc/21/rc/2/rc.img"&gt;&lt;/img&gt;&lt;/a&gt; &lt;br /&gt; &lt;a href="http://da.feedsportal.com/r/199120209691/u/49/f/556826/c/33236/s/3bc110eb/sc/21/rc/3/rc.htm" rel="nofollow"&gt;  &lt;img border="0" src="http://da.feedsportal.com/r/199120209691/u/49/f/556826/c/33236/s/3bc110eb/sc/21/rc/3/rc.img"&gt;&lt;/img&gt;&lt;/a&gt; &lt;br /&gt; &lt;br /&gt; &lt;a href="http://da.feedsportal.com/r/199120209691/u/49/f/556826/c/33236/s/3bc110eb/sc/21/a2.htm"&gt;  &lt;img border="0" src="http://da.feedsportal.com/r/199120209691/u/49/f/556826/c/33236/s/3bc110eb/sc/21/a2.img"&gt;&lt;/img&gt;&lt;/a&gt; &lt;img border="0" height="1" src="http://pi.feedsportal.com/r/199120209691/u/49/f/556826/c/33236/s/3bc110eb/sc/21/a2t.img" width="1"&gt;&lt;/img&gt; &lt;div&gt;
  &lt;a href="http://feeds.feedburner.com/~ff/solidot?a=DFY2xZmfo5c:gKS33vNdR7Q:yIl2AUoC8zA"&gt;   &lt;img border="0" src="http://feeds.feedburner.com/~ff/solidot?d=yIl2AUoC8zA"&gt;&lt;/img&gt;&lt;/a&gt;   &lt;a href="http://feeds.feedburner.com/~ff/solidot?a=DFY2xZmfo5c:gKS33vNdR7Q:7Q72WNTAKBA"&gt;   &lt;img border="0" src="http://feeds.feedburner.com/~ff/solidot?d=7Q72WNTAKBA"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/50126-mozilla-%E5%BC%80%E5%8F%91-firefox</guid>
      <pubDate>Sun, 22 Jun 2014 21:51:13 CST</pubDate>
    </item>
    <item>
      <title>OS X下Android开发环境搭建 - Wei丶Haijun</title>
      <link>https://itindex.net/detail/51346-os-android-%E5%BC%80%E5%8F%91</link>
      <description>&lt;p&gt;准备工具&lt;/p&gt; &lt;p&gt;Java 1.6 For Mac OS X — 在Mac上运行Eclipse会提醒需要Java 6运行时支持库&lt;/p&gt; &lt;p&gt;  &lt;a href="http://download.oracle.com/otn-pub/java/jdk/8u20-b26/jdk-8u20-macosx-x64.dmg?AuthParam=1412929802_4b2e62c5dd5de8061271111bc4e5eeb0"&gt;Java 1.8 For Mac OS X&lt;/a&gt; — 本人开发时所用的jdk版本&lt;/p&gt; &lt;p&gt;  &lt;a href="http://www.eclipse.org/downloads/"&gt;Eclipse&lt;/a&gt; — 本人开发时所用版本为Eclipse Luna Release (4.4.0)&lt;/p&gt; &lt;p&gt;Android Development Tools（ADT）— 安卓开发工具插件&lt;/p&gt; &lt;p&gt;  &lt;a href="http://developer.android.com"&gt;Android SDK&lt;/a&gt; — 必须的...&lt;/p&gt; &lt;p&gt;ADT安装方法&lt;/p&gt; &lt;p&gt;安装其他工具都是傻瓜式的安装，很简单。安装ADT有多种方式：&lt;/p&gt; &lt;p&gt;  &lt;strong&gt;第一种：&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;1、打开Eclipse — Hlpe — Install New Software...&lt;/p&gt; &lt;p&gt;2、在Work with项输入https://dl-ssl.google.com/android/eclipse/  回车&lt;/p&gt; &lt;p&gt;3、等待Pending完毕，勾选Development Tools，点击Next。&lt;/p&gt; &lt;p&gt;  &lt;strong&gt;第二种（第一种网络不行就很考验耐心，第二种为手动安装）：&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;1、使用搜索引擎搜索出ADT安装包，可以去这个网址看看  &lt;a href="http://www.cnblogs.com/bjzhanghao/archive/2012/11/14/android-platform-sdk-download-mirror.html"&gt;http://www.cnblogs.com/bjzhanghao/archive/2012/11/14/android-platform-sdk-download-mirror.html&lt;/a&gt;。&lt;/p&gt; &lt;p&gt;2、解压出来放到Eclipse目录下的dropins文件夹下，重启Eclipse。&lt;/p&gt; &lt;p&gt;  &lt;strong&gt; 第三种：&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;1、使用搜索引擎找到ADT安装包，下载、解压。&lt;/p&gt; &lt;p&gt;2、打开Eclipse — Hlpe — Install New Software...&lt;/p&gt; &lt;p&gt;3、单击Add — Local... — ADT目录 — OK。&lt;/p&gt; &lt;p&gt;4、一路Next加等待，重启Eclipse。&lt;/p&gt; &lt;p&gt;安装完ADT之后，在Eclipse的File — New 里面直接找不到Android Application Project，在Other里面能找到。想要在File — New 里面直接显示出Android Application Project也是有方法如下：&lt;/p&gt; &lt;p&gt;1、成功新建一个Android项目。&lt;/p&gt; &lt;p&gt;2、打开菜单Window — New Window，然后出现了一个新窗口，现在看File — New 菜单里面是不是有Android Application Project了，重启Eclipse以后依然是存在的。&lt;/p&gt; &lt;p&gt;配置Android SDK&lt;/p&gt; &lt;p&gt;1、下载Android SDK，可以去官网下载（官网打开速度很慢），也可以去  &lt;a href="http://www.cnblogs.com/bjzhanghao/archive/2012/11/14/android-platform-sdk-download-mirror.html"&gt;http://www.cnblogs.com/bjzhanghao/archive/2012/11/14/android-platform-sdk-download-mirror.html&lt;/a&gt;&lt;/p&gt; &lt;p&gt;2、解压下载好的Android SDK，打开Eclipse — Preferences对话框，找到Android那一项，单击Browse，选取SDK目录即可。&lt;/p&gt; &lt;p&gt;  &lt;img alt="" src="http://images.cnitblog.com/blog/661949/201410/101808256876959.png"&gt;&lt;/img&gt;&lt;/p&gt; &lt;p&gt;图1 Android SDK目录选取&lt;/p&gt; &lt;p&gt; 3、Android SDK目录配置好以后，可以通过Android SDK Manager管理各种版本的SDK和Tools。&lt;/p&gt; &lt;p&gt;  &lt;img alt="" src="http://images.cnitblog.com/blog/661949/201410/101818094687207.png"&gt;&lt;/img&gt;&lt;/p&gt; &lt;p&gt;图2 Android SDK Manager&lt;/p&gt; &lt;p&gt;4、SDK安装完毕之后，就应该配置Android虚拟机，没有Android虚拟机是调试不了程序的。&lt;/p&gt; &lt;p&gt;  &lt;img alt="" src="http://images.cnitblog.com/blog/661949/201410/101820459373909.png"&gt;&lt;/img&gt;&lt;/p&gt; &lt;p&gt;图3 Android Virtual Device Manager&lt;/p&gt; &lt;p&gt;总结&lt;/p&gt; &lt;p&gt;搭建Android开发环境在Windows下还需要配置环境变量，OS X下就不需要此操作了。安装方式都是大同小异，可能由于系统的差异，搭建过程中会出现各种各样的问题。遇到问题时，不要急，要有耐心，相信搜索引擎还是很强大的。&lt;/p&gt; &lt;img alt="" height="1" src="http://counter.cnblogs.com/blog/rss/4016310" width="1"&gt;&lt;/img&gt; &lt;br /&gt; &lt;p&gt;本文链接：  &lt;a href="http://www.cnblogs.com/wei-haijun/p/4016310.html" target="_blank"&gt;OS X下Android开发环境搭建&lt;/a&gt;，转载请注明。&lt;/p&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/51346-os-android-%E5%BC%80%E5%8F%91</guid>
      <pubDate>Fri, 10 Oct 2014 18:28:00 CST</pubDate>
    </item>
    <item>
      <title>Chrome OS 的破坏性创新</title>
      <link>https://itindex.net/detail/48013-chrome-os-%E7%A0%B4%E5%9D%8F</link>
      <description>&lt;p&gt;  &lt;div&gt;
                   &lt;a href="http://www.geekpark.net/user/home/index/197148" target="_blank"&gt;    &lt;img alt="&amp;#20316;&amp;#32773;&amp;#22836;&amp;#20687;" src="http://geekpark-img.qiniudn.com/uploads/anonymous_avatar/5_30.jpg"&gt;&lt;/img&gt;&lt;/a&gt;
                   &lt;div&gt;
                        &lt;div&gt;
                        作者：     &lt;a href="http://www.geekpark.net/user/home/index/197148" target="_blank"&gt;百事可乐&lt;/a&gt;      &lt;em&gt;/&lt;/em&gt; 产品观察家
                    &lt;/div&gt;
                        &lt;div&gt;科学工作者。感兴趣于IT技术的未来及其对社会的影响。&lt;/div&gt;
                &lt;/div&gt;
            &lt;/div&gt;
              &lt;div&gt;
                   &lt;strong&gt;[核心提示]&lt;/strong&gt;目前而言，Chrome OS 并非一个完美的系统，但是它却能够胜任你百分之九十的工作与娱乐，另外随着云端软件的越来越丰富，这种趋势会将 Chrome OS 送上巅峰。那么它是如何做到的？
            &lt;/div&gt;&lt;/p&gt; &lt;h2&gt;Chrome OS 是什么&lt;/h2&gt;
 &lt;p&gt;Chrome OS 是 Google 近几年开发的基于 Linux 内核的云端操作系统，该系统内的所有操作都基于以 Chrome 浏览器为核心的 WEB 应用。它有自己的 webstore，用户可以从中选择安装各种 WEB 应用。这些应用绝大部分是基于网络的，但也有一部分允许离线使用。总的来说，Chrome OS 是轻量级的、本地应用受限的、极端依赖网络的，从而在本质上异于传统桌面操作系统如 Windows、Linux 和 MAC OS X。&lt;/p&gt;
 &lt;p&gt;依托该操作系统，Goolge 联合硬件厂商开发了若干搭载该系统的硬件产品，包括一体机、小主机、用于连接外部显示设备的 Chromecast 和广受关注的笔记本产品（称之为 Chromebook)。其中三星的一款   &lt;a href="http://www.geekpark.net/read/view/173389"&gt;Chromebook&lt;/a&gt; 在很长的时间里高居美国 Amazon 低价笔记本销售冠军位置。&lt;/p&gt;
 &lt;p&gt;假设你现在正在使用这台三星 Chromebook（正是我现在使用的那一款）。因为 Chrome OS 核心就是 Chrome 浏览器，所以所有基于浏览器的工作都可以在 Chromebook 上完成。这包括所有基于浏览器的在线视频，基于浏览器的  &lt;a href="http://www.geekpark.net/read/view/121943"&gt;在线音乐&lt;/a&gt;，基于浏览器的在线图片；和   &lt;a href="http://www.geekpark.net/read/view/157167"&gt;Google Drive&lt;/a&gt; 所能完成的可以满足绝大多数人需要的文字、图表、绘图等任务（这些功能离线可用），当然还有很多专为 Chrome OS 开发的各种应用。总的来说，所有轻量级的在线应用使用 Chromebook 都可以完成；而它所受限的地方是专业、大型的本地软件。&lt;/p&gt;
 &lt;h2&gt;桌面操作系统和办公软件的破坏性创新&lt;/h2&gt;
 &lt;p&gt;缺少对专业、大型软件的本地支持使得 Chromebook 并不能满足所有需求。如果你需要使用 Photoshop 或者 Matlab，那还是找传统的桌面操作系统吧。但假如你并没有任何的专业需求，一台 Chromebook 可以以很低的价格很好的满足你。&lt;/p&gt;
 &lt;p&gt;这应该也是微软需要担心的地方。Chrome OS 跟 Windows 在功能上没有可比性，前者的所有功能在后者上都可以轻松完成（只要安装 Chrome 浏览器就好了）。然而 Chrome OS 有它的优势：它是免费的、在线即时更新的、没有病毒的、免维护的、运行速度非常快的。更重要的一点是，它可以完成大多数人在 Windows 上面 90% 以上的工作，而且有免费的 Google Drive 的工作套件可用（云端的 Office）。&lt;/p&gt;
 &lt;p&gt;自然，因为缺少了这 10%，Chrome OS 和 Chromebook 现在很难成为我们的唯一的电脑，但它可能是家庭第二台电脑、孩子所用的教育电脑、老人所用的娱乐电脑等很多情境下的完美选择。我买了这台三星 Chromebook 差不多一年了，在这一年里我使用这台电脑的时间远远超过了我的那台 Thinkpad，因为大多数时候我不过只是要看个视频，或者写点东西，这些在 Chromebook 上完成起来毫无困难。&lt;/p&gt;
 &lt;p&gt;而且还有另外一个趋势，就是很多软件的  &lt;a href="http://www.geekpark.net/read/view/178731"&gt;云端&lt;/a&gt;化，事实上是所有计算的云端化。这是一个很大的话题，很难说将来一定会怎么发展，但一个明显的事实是越来越多的软件开始有了云端版本。软件的云端化对于软件公司来讲似乎不是坏事，因为云端软件按照使用时间或次数付费的商业模式基本上可以杜绝盗版，所以看起来软件公司应该有动力去推动这个过程。假如这是真的，那么对于微软来说，大祸就该临头了。&lt;/p&gt;
 &lt;p&gt;原因在于，如果未来所有软件都会走云计算的路，那么庞大的 Windows 对云时代来说就是过度满足的－－我们根本就不需要这样一个臃肿的桌面操作系统，轻便好用还免费的 Chrome OS 是更好的选择。&lt;/p&gt;
 &lt;p&gt;Linux 努力了好多年，想要在桌面操作系统领域挑战 Windows。然而对于一个在这个领域占有绝对优势的对手来讲，正面的挑战往往是极为困难，甚至是根本不可能的。按照克里斯坦森的看法，对于这样的对手，真正有威胁的是低端的非正面的然而又是革命性的创新，所谓“破坏性创新”，这种创新直接毁掉了原来占优势的对手的产品存在的基础，用完全不同的思路开创一种全新的商业模式。&lt;/p&gt;
 &lt;p&gt;谁也说不好 Chrome OS 是不是那个破坏性创新者，这更多的依赖于云计算的发展；然而后者的发展似乎也是不争的事实，所以至少是存在这种可能性，将来“云”的发展把 Chrome OS 送上巅峰。&lt;/p&gt;
 &lt;h2&gt;中国失掉了什么&lt;/h2&gt;
 &lt;p&gt;当然，在中国，我们不需要（或者说，不能够）担心这个可能性。所有这些，都是西方大公司的游戏，跟我们并不相关（也不能相关）。我们有时间自娱自乐，可以搞一个 COS 玩玩。这一点说起来其实很有趣：我们封掉了 Google, 却避免不了   &lt;a href="http://www.geekpark.net/read/view/193134?uc_param_str=cpdnvefrpfssntbi"&gt;Andriod&lt;/a&gt; 在中国的发展；要是真有这么个未来，Chrome OS 成了主流，我们自然也不妨拿过来用（虽然这个拿过来会有很多困难）。这里的问题只不过是，好像这一切只是我们自己在自娱自乐，而且原因并不是在于我们多么强悍，不带他们玩；恰恰相反，是我们内心的虚弱不敢让我们一起做点公平的赌赛。&lt;/p&gt; &lt;p&gt;极客观察均为极客公园原创报道，转载请注明原文链接。&lt;/p&gt; &lt;p&gt;原文地址：  &lt;a href="http://www.geekpark.net/read/view/197774"&gt;http://www.geekpark.net/read/view/197774&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;关注极客公园，即时获得最新内容：  &lt;a href="https://twitter.com/geekparknet"&gt;Twitter&lt;/a&gt; |   &lt;strong&gt;微信：极客公园&lt;/strong&gt; |   &lt;a href="http://weibo.com/geekpark"&gt;新浪微博&lt;/a&gt; |   &lt;a href="http://huaban.com/geekpark"&gt;花瓣网&lt;/a&gt; |   &lt;a href="http://zhan.renren.com/geekpark"&gt;人人小站&lt;/a&gt; |   &lt;a href="https://plus.google.com/117900237066383009895"&gt;Google+&lt;/a&gt; |   &lt;a href="http://geekparknet.diandian.com"&gt;点点&lt;/a&gt;&lt;/p&gt; &lt;img src="http://img.tongji.linezing.com/2980686/tongji.gif"&gt;&lt;/img&gt;
        &lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/48013-chrome-os-%E7%A0%B4%E5%9D%8F</guid>
      <pubDate>Mon, 10 Feb 2014 13:02:41 CST</pubDate>
    </item>
    <item>
      <title>Windows系统份额首次跌破90% Mac OS X拿下8%</title>
      <link>https://itindex.net/detail/48599-windows-%E7%B3%BB%E7%BB%9F-mac</link>
      <description>&lt;p&gt;毫无疑问，Windows依然是目前头号操作系统，传闻台式机电脑和笔记本电脑大多数搭载了 Windows 平台。但是据全球最大的财经博客 SeekingAlpha 最新于2014年3月发布的数据表明，按照目前的趋势发展，未来几年可能将发生改变。&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="50_1394950788.jpg_w600" border="0" src="http://upload.techweb.com.cn/2014/0316/1394957412325.jpg"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="47_1394950788.jpg_w600" border="0" src="http://upload.techweb.com.cn/2014/0316/1394957455448.jpg"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;20年来Windows桌面份额首次跌破90%&lt;/p&gt;
 &lt;p&gt;SeekingAlpha 给予的数据图显示，微软最重要的软件平台Windows全球市场份额已经下滑至 90% 以下，这是从20世纪90年代中期Windows95系统开始接管全球桌面平台至今首次跌破 90%，反之 Mac OS X 终于成功的拿下了8%的市场份额。&lt;/p&gt;
 &lt;p&gt;全球著名的两家调研机构的数据均对此进行了证实。首先是 NetMarketShare的数据，Windows的全球市场份额为89.96％，再者StatCounter的数据显示Windows市场份额为更少的89.22％。&lt;/p&gt;
 &lt;p&gt;SeekingAlpha表示，Windows在桌面平台的霸主地位持续了20年之久，不过不幸的是，桌面平台竞争现在变得更加激烈了。Windows整体下滑一切都在意料之中，从如今Windows XP的份额不难发现 ，微软并没有拿出一个可以说服用户升级的全新操作系统。&lt;/p&gt;
 &lt;p&gt;微软目前面向市场主打力推的最新Windows平台为Windows 8/8.1。该平台一经推出便饱受争议，不仅因为微软决定去除传统的开始按键和开始菜单，而且整个系统设计更针对触摸设备优化，桌面用户倍感不适。也有声音指出，Windows XP用户正在等待Windows 9，无论如何首选平台都不会是Windows 8。&lt;/p&gt;
 &lt;p&gt;由于 Windows 8/8.1未获得用户芳心，再加上PC市场份额持续下滑，更多用户坚守Windows 8之前的版本，或者在条件允许的情况下尝试转移至其他平台，比如Linux和Mac OS X。这正是微软最担心的问题，尽管公司开始侧重触摸设备，比如平板电脑，但维持传统桌面平台的市场份额显然更为重要。&lt;/p&gt;
 &lt;p&gt;前段时间，微软内部高管发生变动，Satya Nadella上任微软CEO，Bill Gates重回微软担任技术顾问，消费者对微软下一代Windows操作系统表示期待。&lt;/p&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>TechWeb</category>
      <guid isPermaLink="true">https://itindex.net/detail/48599-windows-%E7%B3%BB%E7%BB%9F-mac</guid>
      <pubDate>Sun, 16 Mar 2014 16:07:00 CST</pubDate>
    </item>
    <item>
      <title>oradebug.sh os信息收集脚本</title>
      <link>https://itindex.net/detail/47369-oradebug-sh-os</link>
      <description>&lt;div&gt;﻿﻿&lt;/div&gt;
 &lt;p&gt; oradebug.sh 这里发一个os信息收集脚本，放电脑了怕下次找不到，这里记录下&lt;/p&gt;
 &lt;p&gt;  &lt;br /&gt;
#!/usr/bin/ksh  &lt;br /&gt;
######################################################################  &lt;br /&gt;
# osdebug.sh  &lt;br /&gt;
#  &lt;br /&gt;
# VARIABLES  &lt;br /&gt;
LOG=&amp;quot;$HOME/osdebug_`date -u +&amp;apos;%h_%d_%Y_%H.out&amp;apos;`&amp;quot;  &lt;br /&gt;
INTERVAL=60  &lt;br /&gt;
NETSTAT=&amp;quot;/bin/netstat -ais&amp;quot;  &lt;br /&gt;
IOSTAT=&amp;quot;/usr/bin/iostat -x&amp;quot;  &lt;br /&gt;
VMSTAT=&amp;quot;/usr/bin/vmstat&amp;quot;  &lt;br /&gt;
PING=&amp;quot;/bin/ping -I 10 -s int-opcbsol2&amp;quot;  &lt;br /&gt;
######################################################################  &lt;br /&gt;
until test 0 -eq 1  &lt;br /&gt;
do  &lt;br /&gt;
echo &amp;quot; &amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot;------------------------------------------------------&amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot; &amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot;$NETSTAT Output:&amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
date &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot; &amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
$NETSTAT &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot; &amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot;$IOSTAT Output:&amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
date &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot; &amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
$IOSTAT &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot; &amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot;$VMSTAT Output:&amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
date &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot; &amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
$VMSTAT &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot; &amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot;$PING Output:&amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
date &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
echo &amp;quot; &amp;quot; &amp;gt;&amp;gt; $LOG  &lt;br /&gt;
$PING &amp;gt;&amp;gt; $LOG &amp;amp;  &lt;br /&gt;
sleep $INTERVAL  &lt;br /&gt;
done&lt;/p&gt;

 &lt;div&gt;
    作者：royjj 发表于2014-1-1 9:05:22   &lt;a href="http://blog.csdn.net/lixora/article/details/17731977"&gt;原文链接&lt;/a&gt;
&lt;/div&gt;
 &lt;div&gt;
    阅读：0 评论：0   &lt;a href="http://blog.csdn.net/lixora/article/details/17731977#comments" target="_blank"&gt;查看评论&lt;/a&gt;
&lt;/div&gt;

&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/47369-oradebug-sh-os</guid>
      <pubDate>Wed, 01 Jan 2014 17:05:22 CST</pubDate>
    </item>
    <item>
      <title>苹果：OS X操作系统将一直免费更新</title>
      <link>https://itindex.net/detail/46254-%E8%8B%B9%E6%9E%9C-os-%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F</link>
      <description>&lt;p&gt;在昨日举行的第四季度财报会议上，苹果不仅宣布了该公司本季度的优异成绩，还宣布了不少重大消息，其中 CFO 彼得·奥本海默（Peter Oppenheimer）对外证实，苹果公司已经决定在未来继续向用户免费提供 iWork、iLife 以及 OS X。&lt;/p&gt;
 &lt;p&gt;上周，OS X Mavericks 与新版 MacBook Pro 一同问世，新版本的操作系统包含了众多新特性，苹果表示它将会是第一个让用户免费更新的 OS X 操作系统。此前，苹果也已经宣布购买新款 Mac 或 iOS 设备的用户也可以免费获得 iWork 和 iLife 套件，而且苹果未来也会继续免费提供这些软件。&lt;/p&gt;
 &lt;p&gt;“我们希望我们所有的客户都能够使用最新的软件，这样他们才能使用最好的功能，我们希望这能成为体验的一部分。”&lt;/p&gt;
 &lt;p&gt;根据苹果的估算，Mac OS X 系统以及 iWork、iLife 等应用程序的免费预计将在 12 月份为苹果公司带来 9 亿美元的递延收入，并且大幅提高公司预期的利润率。&lt;/p&gt;
 &lt;p&gt;其实，向 Mac 用户免费提供最新的 OS X Mavericks 操作系统并非新招，很早以前，苹果的 OS X 一直都是免费的，直至 1997 年推出 Mac OS 8 苹果才停止这么做。如今时隔 16 年，苹果再度拥抱这一做法，理由很简单，就是想要它所有的 Mac 用户都使用最新的操作系统，这样就可以让用户把消费力都集中到内容和应用上，而 iTunes 同时也是一个巨大的内同分销平台。此外，免费 OS X 也能激发新用户购买苹果设备。&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="&amp;#33529;&amp;#26524;&amp;#65306;OS X &amp;#25805;&amp;#20316;&amp;#31995;&amp;#32479;&amp;#23558;&amp;#19968;&amp;#30452;&amp;#20813;&amp;#36153;&amp;#26356;&amp;#26032;" src="http://images.cnitblog.com/news/157064/201310/29224714-fb1479ac244d432cb2e6748cd82a4afd.jpg"&gt;&lt;/img&gt;&lt;/p&gt; &lt;p&gt;  &lt;a href="http://news.cnblogs.com/n/191750/" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt; &lt;img alt="" height="1" src="http://news.cnblogs.com/news/rssclick.aspx?id=191750" width="1"&gt;&lt;/img&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/46254-%E8%8B%B9%E6%9E%9C-os-%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F</guid>
      <pubDate>Tue, 29 Oct 2013 22:47:39 CST</pubDate>
    </item>
    <item>
      <title>hadoop集群调优－OS和文件系统部分</title>
      <link>https://itindex.net/detail/50415-hadoop-%E9%9B%86%E7%BE%A4-os</link>
      <description>&lt;div&gt;
  &lt;h1&gt;OS and File System&lt;/h1&gt;
  &lt;p&gt;根据Dell（因为我们的硬件采用dell的方案）关于hadoop调优的相关说明，改变几个Linux的默认设置，Hadoop的性能能够增长大概15%。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;h2&gt;open file descriptors and files&lt;/h2&gt;
  &lt;p&gt;文件描述符是一个索引值，指向内核为每一个进程所维护的该进程打开文件的记录表。当程序打开一个现有文件或者创建一个新文件时，内核向进程返回一个文件描述符。在程序设计中，一些涉及底层的程序编写往往会围绕着文件描述符展开，文件描述符这一概念往往只适用于UNIX、Linux这样的操作系统。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;在Linux系列的操作系统上，由于Linux的设计思想便是把一切设备都视作文件。因此，文件描述符为在该系列平台上进行设备相关的编程实际上提供了一个统一的方法。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;在CentOS中通过下面的命令查看：&lt;/p&gt;
  &lt;pre&gt;cat /proc/sys/fs/file-max
800000&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;也可以通过查看文件中的内容来查看，其中的fs.file-max定义了最大的打开文件描述符数量：&lt;/p&gt;
  &lt;pre&gt;cat /etc/sysctl.conf
 
fs.file-max = 800000
net.core.rmem_default = 12697600
net.core.wmem_default = 12697600
net.core.rmem_max = 873800000
net.core.wmem_max = 655360000
net.ipv4.tcp_rmem = 8192 262144 4096000
net.ipv4.tcp_wmem = 4096 262144 4096000
net.ipv4.tcp_max_orphans = 300000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.ip_local_port_range = 1025 65535
net.ipv4.tcp_max_syn_backlog = 100000
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp.keepalive_time = 1200
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 1500
net.core.somaxconn=32768
vm.swappiness=0&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;CentOS下可以通过下面的命令来增加最大打开文件描述符数量，在集群中的每台机器上执行：&lt;/p&gt;
  &lt;pre&gt;# su – (hdfs &amp;amp; Hadoop users)
# ulimit –S 4096
# ulimit –H 32832&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;也可以通过修改/etc/sysctl.conf文件中的fs.file-max来达到目的。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;由于这部分的数值远远大于文档中所列出的数字，此部分没有做优化。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;h2&gt;File System&lt;/h2&gt;
  &lt;p&gt;Linux的发行版本对于文件系统有着不同的初始设置。经过测试不同的Linux File Systems，发现EXT4格式要比EXT3更好。EXT4中的新特性，比如多块延迟分配，相比于EXT3要提高很大一部分的性能。在EXT3中，当一个文件被创建或数据被添加到一个已经存在的文件时，会直接调用文件block allocator，每个block一次；而EXT4则不同，它会做一个缓冲，以便以后能够最优化地将数据连续地放入硬盘。连续的文件能够很容易地被机械硬盘读写以能够提高存储IO的整体性能。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;默认情况下，Linux会把文件访问的时间atime作记录，这在绝大多数场合下都是没有必要的，尤其是IO负载比较高的Hadoop集群下，可以尝试使用noatime和nodiratime。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;在Hadoop中，很多中间文件（比如map输出的中间文件）都只会在Hadoop job运行过程中存活，job执行完成就会被删除了，根本没有必要存在访问时间戳。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;通过命令cat /etc/fstab来查看当前的设置：&lt;/p&gt;
  &lt;pre&gt;UUID=5d75c681-1101-46c2-9428-3e48310765ce                 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=SWAP-sda3         swap                    swap    defaults        0 0&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;可以看到当前并没有使用EXT4格式以及noatime。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;注意，修改完设置后需要重新挂载文件系统，不需要重启。&lt;/p&gt;
  &lt;pre&gt;mount -o remount /&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;另外一个对于dataNodes的优化点就是通过改变文件系统的保留块大小。Linux文件系统中为了保证root能够登录到操作系统中，需要保留一定的磁盘空间，默认这个值设置为5%。但是当前磁盘空间都是TB级别的，因此保留5%就会造成一大部分空间的浪费，对于1TB来说就是50G。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;通过下面的命令来列出当前的保留磁盘空间。&lt;/p&gt;
  &lt;pre&gt;tune2fs –l /dev/sdaX&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;下面的命令可以将保留磁盘空间的容量设置成1%:&lt;/p&gt;
  &lt;pre&gt;tune2fs –m 1 /dev/sdaX&lt;/pre&gt;
  &lt;p&gt;  &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;h2&gt;Network&lt;/h2&gt;
  &lt;p&gt;两个网络相关的参数可以影响Hadoop的性能。net.core.somaxconn Linux内核设置能够支持NameNode和JobTracker的大量爆发性的HTTP请求。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;net.core.somaxconn是listen()的默认参数,挂起请求的最大数量.默认是128.对繁忙的服务器,增加该值有助于网络性能，当前已经被调整到32768。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;这个参数同样可以通过编辑/etc/sysctl.conf文件来改变，其中有一行：&lt;/p&gt;
  &lt;pre&gt;net.core.somaxconn=32768&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;设置txqueuelen到4096及以上能够更好地适应在Hadoop集群中的突发流量， txqueuelen代表用来传输数据的缓冲区的储存长度，通过下面的命令可以对该参数进行设置为4096：&lt;/p&gt;
  &lt;pre&gt;sudo ifconfig eth# txqueuelen 4096&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;其他的一系列在/etc/sysctl.conf中的配置，可以对网络产生影响：&lt;/p&gt;
  &lt;pre&gt;net.core.rmem_default = 12697600
net.core.wmem_default = 12697600
net.core.rmem_max = 873800000
net.core.wmem_max = 655360000
net.ipv4.tcp_rmem = 8192 262144 4096000
net.ipv4.tcp_wmem = 4096 262144 4096000
net.ipv4.tcp_max_orphans = 300000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.ip_local_port_range = 1025 65535
net.ipv4.tcp_max_syn_backlog = 100000
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp.keepalive_time = 1200
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 1500&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;  &lt;/p&gt;
  &lt;p&gt;上述设置需要重新启动整个集群系统。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;h2&gt;Transparent Huge Page&lt;/h2&gt;
  &lt;p&gt;Linux的特性Transparent HugePages在大部分的应用中都提高了整体性能，包括Hadoop的工作负载。但是，其中的一项被称为Compaction的子特性会导致Hadoop工作负载的问题，在设置了Compaction的Hadoop benchmark测试中，结果会存在25%的浮动，而关闭Compaction后浮动消失。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;当进行内存碎片整理时，Compaction会提高CPU资源利用率，这能够帮助优化Transparent HugePages，但是偷取了CPU资源，却影响了hadoop中正在运行的task性能。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;通过以下命令可以查看是否启用compaction：&lt;/p&gt;
  &lt;pre&gt;cat /sys/kernel/mm/redhat_transparent_hugepages/defrag&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;以及以下命令来禁用Compaction：&lt;/p&gt;
  &lt;pre&gt;echo never &amp;gt; /sys/kernel/mm/redhat_transparent_hugepages/defrag&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;这个特定暂时没有进行修改，因为CentOS中没找到在哪儿设置。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;h2&gt;Linux kernal swappiness parameter&lt;/h2&gt;
  &lt;p&gt;任何进程只要涉及到换页向磁盘写文件都会降低hadoop的性能，Linux内核进程vm.swappiness会检查无用的内存分页并将它们交换到磁盘上。默认的值是60，可以设置为0——100。对于Hadoop来说，设置成0是一个好主意，这并没有将这个特性关闭，Linux仍然进行换页操作，但是由于这个进程在仍然还有一大部分空闲内存时仍然会进行换页，将它设置成0可以尽可能地减少内存和磁盘的延迟。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;这个参数仍然可以通过编辑/etc/sysctl.conf来进行修改。&lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt;当前集群已经设置：&lt;/p&gt;
  &lt;pre&gt;vm.swappiness=0&lt;/pre&gt;
  &lt;p&gt; &lt;/p&gt;
  &lt;p&gt; &lt;/p&gt;
&lt;/div&gt;
          
           &lt;br /&gt; &lt;br /&gt;
          
             &lt;a href="http://brandnewuser.iteye.com/blog/2093982#comments"&gt;已有   &lt;strong&gt;0&lt;/strong&gt; 人发表留言，猛击-&amp;gt;&amp;gt;  &lt;strong&gt;这里&lt;/strong&gt;&amp;lt;&amp;lt;-参与讨论&lt;/a&gt;
          
           &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;
ITeye推荐
 &lt;br /&gt;
 &lt;ul&gt;  &lt;li&gt;   &lt;a href="http://www.iteye.com/clicks/433" target="_blank"&gt;—软件人才免语言低担保 赴美带薪读研！— &lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
 &lt;br /&gt; &lt;br /&gt; &lt;br /&gt;
          
        &lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/50415-hadoop-%E9%9B%86%E7%BE%A4-os</guid>
      <pubDate>Sat, 19 Jul 2014 15:23:53 CST</pubDate>
    </item>
    <item>
      <title>从 Windows 转到 OS X 几天后的一些感想</title>
      <link>https://itindex.net/detail/45460-windows-os-%E5%A4%A9%E5%90%8E</link>
      <description>&lt;p&gt;  &lt;a href="http://img.guomii.com/2013/09/my-macbook-and-kindle.jpg"&gt;   &lt;img alt="my-macbook-and-kindle" height="336" src="http://img.guomii.com/2013/09/my-macbook-and-kindle-600x336.jpg" width="600"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;
 &lt;p&gt;旧本子的速度和性能已经远跟不上人的速度了，受够了它的最终高烧不退和蓝屏死机不止，果断决定换一台新伙伴。前几天还在纠结是选择win8超级本还是Macbook，逛淘宝，查知乎，性能外观装逼实用⋯⋯ 最终还是收了这台Macbook Pro。&lt;/p&gt;
 &lt;p&gt;买的这台Macbook Pro属于Pro中配置不算高的一款。4G的内存，i5处理器。不过考虑到Pro的可升级空间，可以升级最高16G内存和SSD。这样看，性能上完全够我用了。&lt;/p&gt;
 &lt;p&gt;现在想想，选择PC超级本还是Macbook，其实不是笔记本之间的选择，而是平台之间的选择。一项喜欢尝试新事物的我对于适应和融入这个全新的OS还是充满信心和期待的。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;说一说这三四天来使用Macbook或者说OS X的一些小体会。&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;并没有装双系统（OS X＋Win），虽然苹果自己提供了支持（比MS厚道），但是还是不太喜欢不伦不类，况且win OS在Mac下的表现性能并不好。Mac的键盘设计也是针对OS X的。所以我建议买Macbook的伙伴们，如果真的离不开Win（其实更多的是离不开那些破解版游戏），那还是干脆买小黑吧。&lt;/p&gt;
 &lt;p&gt;OS X上的软件（应用）普遍很贵。貌似Mac用户普遍比PC用户付费意识好多了。但是很多软件还是值得花钱的。一是有些软件的确很优秀，开发者也需要成本，所以作为我这样的（web）开发者当然应该支持下了。二是没有这些软件你真的干不了什么事，所以该买就要买。其实不管是PC还是Mac，我们真正用的是上面一个个的软件。有一点要说的是，OS X真的很便宜（相对正版windows），最新的OS X Mountain Lion只要128RMB。总之，Mac是用来创造的，PC是用来享受的。&lt;/p&gt;
 &lt;p&gt;OS X比较吃内存。这要是放在PS机上（尤其是XP）绝对是会被鄙视的。想想在PC上不停的用360杀进程、清理内存，看着红色的指标瞬间降为绿色，心里那个爽啊。然而OS的内存管理机制跟PC不太一样。让我理解的话，Mac上秉承的是“有就要用掉”。所有用到的软件都时刻待命（in内存）着，所以在Mac上你能体验到一些软件的“瞬启”。较高的内存使用率换来的是流畅、有效率的使用体验。我正准备给我的Macbook升级8G内存，今后可能还会升级SSD。这对我来说完全够用了。&lt;/p&gt;
 &lt;p&gt;OS X上不需要杀毒，清理。安装和卸载软件都超爽！谁用谁知道。系统自带了防火墙。没有了IE，上网更安全。Safari在安全上做得不错。不过IE10＋的上网体验、外观和安全上已经做得很不错了。但是在PC上，IE8还是主流，甚至IE6都还没死（真是恨透了）。&lt;/p&gt;
 &lt;p&gt;最后要重点说的是OS X上强大的快捷键和触摸板手势，在几天的熟悉之后，现在用OS X感觉真爽。command、点击、拖动、缩放、一指、两指、三指、四指⋯⋯现在基本上脱离鼠标了，妈妈再也不用担心我的鼠标手。我也形容不好，反正还是谁用谁知道。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;再分享一些我目前安装使用的软件（不分排序）&lt;/strong&gt;&lt;/p&gt;
 &lt;ul&gt;
  &lt;li&gt;Chrome，这个必须的。强大的开发（option＋command＋i）和同步功能。苹果自家的safari也很不错。火狐狸也很不错不过对我来说有前两个足已。&lt;/li&gt;
  &lt;li&gt;QQ，阿里旺旺，不解释。虽然小企鹅有时会崩你溃没商量。&lt;/li&gt;
  &lt;li&gt;skyDrive，微软云存储。只因手机是WP8。最近百度又送存储空间啦（2T），可能要换百度网盘了。&lt;/li&gt;
  &lt;li&gt;Evernote，同步，况且它支持全平台（我的Lumia620啊）。&lt;/li&gt;
  &lt;li&gt;Github，感觉比PC上的简单好用太多了（虽然也很喜欢for windows的metro界面）。&lt;/li&gt;
  &lt;li&gt;openoffice，用的比较少，还不太习惯。苹果自家的套装要收费。&lt;/li&gt;
  &lt;li&gt;Sublime Text 2，码字专情于她。&lt;/li&gt;
  &lt;li&gt;Cyberduck小黄鸭，FTP管理的，比windows上的啥啥都好用。&lt;/li&gt;
  &lt;li&gt;迅雷，顺便说一点我的感受，感觉在同样的带宽上，Mac上网速比PC上快。&lt;/li&gt;
  &lt;li&gt;MplayerX &amp;amp; Voxa，OS X上音视频神器（支持无损格式，多格式）。&lt;/li&gt;
&lt;/ul&gt;
 &lt;p&gt;  &lt;a href="http://img.guomii.com/2013/09/my-Macbook-desk.jpg"&gt;   &lt;img alt="my-Macbook-desk" height="375" src="http://img.guomii.com/2013/09/my-Macbook-desk.jpg" width="600"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;
 &lt;p&gt;非系统自带的就这些，今后肯定还会装其他的。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;最后的最后。&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;我算不上果粉，前面也说了，手机用的是WP8，自己也很喜欢win8。OS X也不是就是完美的。比如快播在Mac上只是一款播放器，只是。自带输入法还在适应，符合PC习惯的搜狗不错，不过由于系统原因需要要不停的切换，故卸载了。Macbook高负荷会很热（其实是散热好而不是散热差的表现）。cmd＋c、cmd＋v总觉得太进（也许是PC的太远了）。&lt;/p&gt;
 &lt;p&gt;  &lt;strong&gt;这还没最后。&lt;/strong&gt;&lt;/p&gt;
 &lt;p&gt;由于入Mac才几天，肯定很多东西还不知道不了解不专业。今后肯定会再改正，扩充。说到底，电脑对我来说（也对所有人来说）都只是个工具。希望自己能用好这个好工具创造出的东西来。&lt;/p&gt;
 &lt;p&gt;原文链接：  &lt;a href="http://huangyang.me/to-mac-os-x.html"&gt;http://huangyang.me/to-mac-os-x.html&lt;/a&gt;&lt;/p&gt;
&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>投稿 MacBook Pro</category>
      <guid isPermaLink="true">https://itindex.net/detail/45460-windows-os-%E5%A4%A9%E5%90%8E</guid>
      <pubDate>Mon, 02 Sep 2013 10:06:28 CST</pubDate>
    </item>
    <item>
      <title>Google 推出 Web Designer，帮助你做 HTML 5 设计的免费本地应用，支持 Windows 和 OS X</title>
      <link>https://itindex.net/detail/45876-google-%E6%8E%A8%E5%87%BA-web</link>
      <description>&lt;p&gt;感谢读者   &lt;a href="https://twitter.com/SamRaper19815" target="_blank"&gt;SamRaper&lt;/a&gt; 的提醒。&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="google-web-designer" height="249" src="http://www.guao.hk/wp-content/uploads/2013/10/google-web-designer-550x249.png" width="550"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;Google发布  &lt;a href="http://www.google.com/webdesigner/" target="_blank"&gt;Web Designer beta&lt;/a&gt;，这个Windows和OS X下的免费应用可帮助你制作互动广告和其它HTML 5内容，很显然基于HTML 5的广告将在数年后代替现在满天飞的Flash。&lt;/p&gt;
 &lt;p&gt;Google Web Designer主要特性：&lt;/p&gt;
 &lt;ol&gt;
  &lt;li&gt;创造HTML 5动画，内置具备完整而直观的设计工具&lt;/li&gt;
  &lt;li&gt;查看并编辑代码&lt;/li&gt;
  &lt;li&gt;可为DoubleClick何AdMob制作无缝互动广告，并直接发布&lt;/li&gt;
  &lt;li&gt;可自动获得更新而不必重新下载应用&lt;/li&gt;
&lt;/ol&gt;
 &lt;p&gt;继续观看宣传视频（  &lt;a href="http://www.youtube.com/watch?feature=player_embedded&amp;v=kHj7fqbNaQw" target="_blank"&gt;原始视频地址&lt;/a&gt;）：&lt;/p&gt;
 &lt;p&gt;&lt;/p&gt;
 &lt;p&gt;&lt;/p&gt;
 &lt;p&gt;Via   &lt;a href="http://9to5google.com/2013/09/30/google-launches-beta-of-web-designer-html5-design-tool/" target="_blank"&gt;9to5google&lt;/a&gt;&lt;/p&gt;
 &lt;hr&gt;&lt;/hr&gt;
 &lt;p&gt;  &lt;small&gt;© musiXboy 发表于    &lt;a href="http://www.guao.hk" target="_blank"&gt;谷奥——探寻谷歌的奥秘 ( http://www.guao.hk )&lt;/a&gt;, 2013.  |
   &lt;a href="http://www.guao.hk/posts/google-launches-beta-of-web-designer-html5-design-tool.html#comments" target="_blank"&gt;1 条评论&lt;/a&gt; |
   &lt;a href="http://www.guao.hk/posts/google-launches-beta-of-web-designer-html5-design-tool.html" target="_blank"&gt;永久链接&lt;/a&gt; |
   &lt;a href="http://www.guao.hk/about/" target="_blank"&gt;关于谷奥&lt;/a&gt; |
   &lt;a href="http://www.guao.hk/submit/" target="_blank"&gt;投稿/爆料&lt;/a&gt;   &lt;br /&gt;
Post tags:    &lt;a href="http://www.guao.hk/tag/google-web-designer" rel="tag"&gt;Google Web Designer&lt;/a&gt;,    &lt;a href="http://www.guao.hk/tag/html-5" rel="tag"&gt;HTML 5&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>Google新闻 Google Web Designer HTML 5</category>
      <guid isPermaLink="true">https://itindex.net/detail/45876-google-%E6%8E%A8%E5%87%BA-web</guid>
      <pubDate>Tue, 01 Oct 2013 16:57:40 CST</pubDate>
    </item>
    <item>
      <title>[组图]谷歌在Windows基础上发展Chrome OS</title>
      <link>https://itindex.net/detail/45912-%E8%B0%B7%E6%AD%8C-windows-%E5%9F%BA%E7%A1%80</link>
      <description>&lt;div&gt;
                                                
                                                  &lt;p&gt;   &lt;strong&gt;谷歌近期启动了Chrome Apps项目，使Chrome应用突破浏览器的限制，逐渐发展成一个平台。过去几周中，谷歌又对开发版Chrome浏览器进行了升级，在Windows 8的Metro模式下实现Chrome OS系统的功能。&lt;/strong&gt;Chrome以往可以在Windows 8桌面模式下运行，不过用户也可以在Windows 8的开始屏幕上进行设置，使其进入特殊的“Metro风格”模式。&lt;/p&gt;                    &lt;/div&gt; &lt;div&gt;  &lt;p&gt;   &lt;img src="http://static.cnbetacdn.com/newsimg/2013/1006/59_1381019079.jpg" title="U5081P2DT20131006081130.jpg"&gt;&lt;/img&gt;&lt;/p&gt;  &lt;p&gt;   &lt;img src="http://static.cnbetacdn.com/newsimg/2013/1006/12_1381019283.jpg_w600.jpg" title="1.jpg"&gt;&lt;/img&gt;&lt;/p&gt;  &lt;p&gt;在Windows 8中，最新的开发版Chrome与公开发布的版本有很大不同，并非简单的全屏浏览器，而是包含了Chrome OS的用户界面和功能。界面上有一列Chrome、Gmail、Google、Docs和YouTube的图标，用户可以将图标放置在屏幕左侧、右侧和底部。与Chrome OS类似，用户可以创建多个浏览器窗口，而屏幕左下角还有一个应用启动器。&lt;/p&gt;  &lt;p&gt;   &lt;img src="http://static.cnbetacdn.com/newsimg/2013/1006/6_1381019299.jpg_w600.jpg" title="2.jpg"&gt;&lt;/img&gt;&lt;/p&gt;  &lt;p&gt;   &lt;img src="http://static.cnbetacdn.com/newsimg/2013/1006/35_1381019299.jpg_w600.jpg" title="3.jpg"&gt;&lt;/img&gt;&lt;/p&gt;  &lt;p&gt;尽管这一版本的Chrome浏览器只是Windows 8的一个应用，但利用了微软为浏览器准备的特殊模式。微软允许Windows 8中的浏览器在“Metro风格”环境中启动。尽管这些浏览器作为桌面应用出现在Windows Store应用商店中，但一些特殊规则允许浏览器模仿Windows 8应用，并利用Windows 8的一些特别功能。不过只有Windows 8支持这样的模式，Windows RT并不支持。&lt;/p&gt;  &lt;p&gt;   &lt;img src="http://static.cnbetacdn.com/newsimg/2013/1006/68_1381019311.jpg_w600.jpg" title="4.jpg"&gt;&lt;/img&gt;&lt;/p&gt;  &lt;p&gt;   &lt;img src="http://static.cnbetacdn.com/newsimg/2013/1006/36_1381019311.jpg_w600.jpg" title="5.jpg"&gt;&lt;/img&gt;&lt;/p&gt;  &lt;p&gt;目前，Chrome浏览器在Windows 8中的这一新模式仍存在软件漏洞，可能导致浏览器崩溃。不过这反映了谷歌的未来发展方向。尽管Chrome Apps可能成为谷歌的“特洛伊木马”，但在Windows 8中运行的Chrome OS系统将帮助谷歌在Windows的基础上建立自己的应用生态系统。此外谷歌也在改进Chrome浏览器的触摸控制功能，使得在Windows 8和Chrome OS中的导航更方便。&lt;/p&gt;  &lt;p&gt;   &lt;img src="http://static.cnbetacdn.com/newsimg/2013/1006/66_1381019327.jpg_w600.jpg" title="6.jpg"&gt;&lt;/img&gt;&lt;/p&gt;  &lt;p&gt;   &lt;img src="http://static.cnbetacdn.com/newsimg/2013/1006/63_1381019327.jpg_w600.jpg" title="7.jpg"&gt;&lt;/img&gt;&lt;/p&gt;  &lt;p&gt;目前尚不清楚，类似Chrome OS的模式是否将成为Windows 8版Chrome的一个稳定功能。不过，谷歌正在微软Windows平台的基础上发展自己的生态系统，这将成为控制桌面计算的另一个战场。&lt;/p&gt;  &lt;p&gt;   &lt;img src="http://static.cnbetacdn.com/newsimg/2013/1006/29_1381019342.jpg_w600.jpg" title="8.jpg"&gt;&lt;/img&gt;&lt;/p&gt;  &lt;p&gt;   &lt;img src="http://static.cnbetacdn.com/newsimg/2013/1006/14_1381019342.jpg_w600.jpg" title="9.jpg"&gt;&lt;/img&gt;&lt;/p&gt;  &lt;p&gt;[来源：   &lt;a href="http://www.theverge.com/2013/10/5/4806560/chrome-os-on-windows-8-screenshots" target="_self" title=""&gt;The Verge&lt;/a&gt;]   &lt;br /&gt;&lt;/p&gt;&lt;/div&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/45912-%E8%B0%B7%E6%AD%8C-windows-%E5%9F%BA%E7%A1%80</guid>
      <pubDate>Sun, 06 Oct 2013 08:29:22 CST</pubDate>
    </item>
    <item>
      <title>【独家】Firefox OS 应用开发独家访谈</title>
      <link>https://itindex.net/detail/45794-firefox-os-%E5%BA%94%E7%94%A8</link>
      <description>&lt;p&gt;如早先所述，在下前往参加了   &lt;a href="http://linuxtoy.org/archives/firefox-os-app-workshop-xian.html"&gt;Firefox OS 应用开发课堂西安站&lt;/a&gt;的活动，并利用活动间隙针对 Firefox OS 相关问题采访了 Mozilla 的社区经理和工程师。&lt;/p&gt;

 &lt;p&gt;下文中   &lt;code&gt;Q&lt;/code&gt; 即黑日白月，  &lt;code&gt;A&lt;/code&gt; 则为 Mozilla 社区经理 Rachel Zhang 或工程师 Wei Deng。&lt;/p&gt;

 &lt;p&gt;  &lt;em&gt;Q: 现在搭载 Firefox OS 的手机已经在部分地区上市了，消费者/运营商/合作伙伴的反响如何？&lt;/em&gt;&lt;/p&gt;

 &lt;p&gt;  &lt;strong&gt;A: &lt;/strong&gt;现在搭载 Firefox OS 手机的确已经在南美和欧洲国家上市了，同时ZTE也在eBay开始向全球多个国家和地区销售ZTE OPEN，具体发售国家请前往eBay网站查询。但是主要面向对象还是开发者和手机发烧友，普通消费者购买还相对较少，但是从今年6月在上海举办的亚洲移动通信展的表现来看，消费者对于Firefox OS手机的兴趣也非常浓厚&lt;/p&gt;

 &lt;p&gt;  &lt;em&gt;Q: 我们知道 Firefox OS 目标是人均收入较低的国家和地区，走平价亲民路线。按照这个定义，中国也属于此范畴。但似乎中国也已成为高端智能手机的主要消费国。Mozilla 对于中国市场怎么看待？有进入的计划呢？&lt;/em&gt;&lt;/p&gt;

 &lt;p&gt;  &lt;strong&gt;A:&lt;/strong&gt; 的确中国市场的情况比较特殊，市场中存在着大量低端智能手机和山寨机。Mozilla 对于中国地区的计划现在还不便透露。&lt;/p&gt;

 &lt;p&gt;  &lt;em&gt;Q: 全球各地的像这种形式的 Firefox OS 应用开发工作室已经举办了不少。相比 Mozilla 也得到了不少开发者的反馈。开发者最常问及的问题是什么？对于 Firefox OS 最大的期望又是什么呢？&lt;/em&gt;&lt;/p&gt;

 &lt;p&gt;  &lt;strong&gt;A:&lt;/strong&gt; 开发者通常首先会问到什么时候手机能上市。（大笑&lt;/p&gt;

 &lt;p&gt;对于开发者特别是 Web 开发者来说，Firefox OS 对于他们最大的吸引力就是能运用现有的 Web 开发知识构建移动平台的应用软件，而无需再重新学习，并且所开发的应用可以跨平台使用。&lt;/p&gt;

 &lt;p&gt;  &lt;em&gt;Q: 对于和 Firefox OS 一样被视为移动操作系统领域变更性力量的 Ubuntu for Mobile 在前段时间通过 Edge 的 Crowd Funding 活动获得了媒体的大量关注，Mozilla 对此怎么看？&lt;/em&gt;&lt;/p&gt;

 &lt;p&gt;  &lt;strong&gt;A:&lt;/strong&gt; Mozilla 秉承 Openness, Innovation, Opportunity 的理念，欢迎任何进入移动操作系统领域的选手，因此我们并不把 Canonical 当作竞争对手。同时我们相信我们前卫的理念对于开发者也是有相当吸引力的。&lt;/p&gt;

 &lt;p&gt;  &lt;em&gt;Q: 相比 Android 初期，Firefox OS 现在在传统渠道诸如书籍方面的材料还比较少，似乎 MDN 是唯一的开发参考资料。Mozilla 有没有计划发展更多的培训或参考资料方面的合作，比如 Thought Works？&lt;/em&gt;&lt;/p&gt;

 &lt;p&gt;  &lt;strong&gt;A: &lt;/strong&gt;Firefox OS 或者说 Boot 2 Gecko 计划对于 Mozilla 的工程师团队是一个巨大的挑战，在过去的两年里以及未来的一段时间内，我们将主要集中精力在架构设计和代码的编写上，文档还在不断的更新和完善当中。 MDN 上的文档资料一直是及时更新的，可以反映 Firefox OS 的最新发展状况，是开发者们的第一选择。&lt;/p&gt;

 &lt;p&gt;此外 Firefox OS 还处于早期阶段，部分内容可能变化的比较快。而传统渠道诸如书籍出版周期比较长，很有可能到最终读者拿到手的时候，其中某个章节的内容已经和撰写时大为不同了。所以当前我们依然推荐以 MDN 的资料为准。
顺便提一下，MDN 是一个开放的社区，欢迎有中文地区的贡献者加入进来帮助我们完成其中内容的本地化工作。&lt;/p&gt;

 &lt;p&gt;  &lt;em&gt;Q: 当下 Emscripten 的配置搭建还是比较复杂的，特别是对于 Win 平台来说。 Mozilla 有没有打算针对出品相应的 Toolkit 解决这个问题呢？&lt;/em&gt;&lt;/p&gt;

 &lt;p&gt;  &lt;strong&gt;A:&lt;/strong&gt; 的确如此，不过 Emscripten 当前面向的群体还是具有相当技术水平的 Geek，一般开发者暂时还没有使用 Emscripten 构建 Firefox OS 应用的需求。对于这些人来说，搭建 Emscripten 并不是很难的事情。&lt;/p&gt;

 &lt;p&gt;当然，Emscripten 是一个开放的项目，有这样的需求完全可以前往其站点提交 Feature Request。相信有能力的社区贡献者会响应此需求或者提供更简便的解决方案。&lt;/p&gt;

 &lt;p&gt;  &lt;em&gt;Q:得到三星/英特尔支持 Tizen 系统也宣称是使用了 Web 技术移动操作系统，相比 Tizen， Firefox OS 有什么不同和优势呢？&lt;/em&gt;&lt;/p&gt;

 &lt;p&gt;  &lt;strong&gt;A:&lt;/strong&gt; 在 Firefox OS 平台上基于 HTML5 的 Web 应用开发是一等公民，我们从一开始就没有考虑像 Tizen 那样亦支持使用 Qt 开发的本地原生应用。因为我们深信通过在相关项目诸如 Web API 方面的努力，纯粹的 Web 应用可以实现达到甚至超过本地原生应用的性能。&lt;/p&gt;

 &lt;p&gt;  &lt;em&gt;Q: 当下 Firefox OS 在 Gonk 层大量应用了来自 Android 的技术，其中有些部分并不怎么开放，比如闭源 GPU 驱动。在未来有没有考虑使用开源显卡驱动以及 Wayland？&lt;/em&gt;&lt;/p&gt;

 &lt;p&gt;  &lt;strong&gt;A: &lt;/strong&gt;这个问题要分开看。对于 Mozilla 来说，其实完全不介意将这部分代码开放，主要是硬件厂商在这一点上比较坚持。它们担心在开放了驱动源码后竞争对手从中可以窥视出其硬件设计，对其形成威胁。&lt;/p&gt;

 &lt;p&gt;当下 Mozilla 的精力还是主要集中在完善 Firefox OS 平台的实现，暂时没有大力推进开源显卡驱动及 Wayland 计划。&lt;/p&gt;

 &lt;p&gt;  &lt;em&gt;Q: 多问一下，最近 Intel 推出了适用于手机的 Bay Trails 芯片，其中 GPU 驱动部分是开源的。有没有考虑过相比 ARM 平台更为开放的 X86 微型化平台？&lt;/em&gt;&lt;/p&gt;

 &lt;p&gt;  &lt;strong&gt;A:&lt;/strong&gt; 实际上最近 Firefox OS 底层 Gonk 部分对于 X86 的支持已经开始了，不过究竟未来会不会推出基于 X86 的 Firefox OS 手机现在说还为时过早。&lt;/p&gt;

 &lt;p&gt;  &lt;em&gt;Q: 最后一个问题，什么时候能在国内买到 Firefox OS 开发机？&lt;/em&gt;&lt;/p&gt;

 &lt;p&gt;  &lt;strong&gt;A: &lt;/strong&gt;一般人都第一个问。（大笑&lt;/p&gt;

 &lt;p&gt;当下 Firefox OS 开发机已经在其他国家和地区上市了，你也可以在今天活动现场看到，机子本身已经没有什么问题了。由于我们特殊的国情，完成一系列审批手续需要较为复杂的过程。不过想要尝鲜的朋友可以先从 eBay 中预定，已经可以寄往中国。&lt;/p&gt;

 &lt;p&gt;  &lt;a href="https://plus.google.com/photos/117914792059519512651/albums/5927072382672140129"&gt;部分现场活动照片&lt;/a&gt;(  &lt;a href="http://photo.weibo.com/1139341480/albums/detail/album_id/3626050444762986"&gt;朝内镜像&lt;/a&gt;)&lt;/p&gt;
	 &lt;p&gt;&lt;/p&gt;
	 &lt;p&gt;分类:   &lt;a href="http://linuxtoy.org/category/featured-post" rel="category tag" title="&amp;#26597;&amp;#30475; Featured &amp;#20013;&amp;#30340;&amp;#20840;&amp;#37096;&amp;#25991;&amp;#31456;"&gt;Featured&lt;/a&gt;,   &lt;a href="http://linuxtoy.org/category/offline" rel="category tag" title="&amp;#26597;&amp;#30475; Offline &amp;#20013;&amp;#30340;&amp;#20840;&amp;#37096;&amp;#25991;&amp;#31456;"&gt;Offline&lt;/a&gt; | 
	  &lt;a href="http://linuxtoy.org/archives/exclusive-firefox-os-development-related-interview.html"&gt;永久链接&lt;/a&gt; |
	  &lt;a href="http://delicious.com/save?url=http://linuxtoy.org/archives/exclusive-firefox-os-development-related-interview.html&amp;title=&amp;#12304;&amp;#29420;&amp;#23478;&amp;#12305;Firefox OS &amp;#24212;&amp;#29992;&amp;#24320;&amp;#21457;&amp;#29420;&amp;#23478;&amp;#35775;&amp;#35848;"&gt;收藏到 del.icio.us&lt;/a&gt; | 
	  &lt;a href="mailto:?Subject=Check This Out&amp;body=I think you'll like this: http://linuxtoy.org/archives/exclusive-firefox-os-development-related-interview.html"&gt;Email 给好友&lt;/a&gt; | 
      &lt;a href="http://linuxtoy.org/archives/exclusive-firefox-os-development-related-interview.html#comments"&gt;1 评论&lt;/a&gt; |
      &lt;a href="http://linuxtoy.org/faq/donate"&gt;捐助本站&lt;/a&gt;&lt;/p&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>Featured Offline firefoxos</category>
      <guid isPermaLink="true">https://itindex.net/detail/45794-firefox-os-%E5%BA%94%E7%94%A8</guid>
      <pubDate>Tue, 24 Sep 2013 13:50:28 CST</pubDate>
    </item>
    <item>
      <title>Jolla 宣布 Sailfish OS 已原生支持 Android app，其还可以在一般 Android 设备运行</title>
      <link>https://itindex.net/detail/45690-jolla-sailfish-os</link>
      <description>&lt;p&gt;分类:   &lt;a href="http://cn.engadget.com/category/smartphones/" rel="tag"&gt;智能手机&lt;/a&gt;&lt;/p&gt; &lt;div&gt;  &lt;img src="http://www.blogcdn.com/cn.engadget.com/media/2013/09/jolla-1379324002.jpg"&gt;&lt;/img&gt;&lt;/div&gt;

 &lt;div&gt;  &lt;br /&gt;
如果大家有留意   &lt;a href="http://cn.engadget.com/tag/Jolla/"&gt;Jolla&lt;/a&gt;   &lt;a href="http://cn.engadget.com/tag/SailfishOS/"&gt;Sailfish OS&lt;/a&gt; 的初次公布的话，都应该知道它将会支持执行 Android 程序，但当时所知的就只如此，其详情终于在今天发布了。Jolla 宣布，现在 Sailfish OS 已经可以在完全无改动系统的情况下运行 Android 的 app，更指出用户可以像用 Android 手机那样，「无缝地」从全球几个热门的 app store 下载程序。该公司的 CEO Tomi Pienimäki 举例说，如 Instagram、WhatsApp 和 Spotify 等热门 app 都可以直接在他们 OS 上运行。  &lt;br /&gt;
  &lt;br /&gt;
另一项让人感兴趣的宣布是，Sailfish OS 已经为调校至可以在一般为 Android 而设的硬件上运行，特别是手机和平板；此举有助 Sailfish 的普及化。最后 Jolla 首批手机已在前早被预订光，而他们指出第二生产批次将会在今个星期内开放预订。有兴趣的话就要多加留意我们的报导啦。  &lt;br /&gt;
  &lt;br /&gt;
[图片来源：  &lt;a href="http://HELSINKI - September 16, 2013. Sailfish OS has achieved a major milestone whereby the OS is now compatible with the AndroidTM ecosystem, in terms of application and hardware compatibility.      Android applications run directly on Sailfish OS without any modifications   Users enjoying the unique gesture-based and modern Sailfish OS user experience will be able to take full advantage of the Android application ecosystem available through various app stores globally. Jolla will co-operate with leading global app stores to ensure users can seamlessly download Android apps just as they would do on any Android device."&gt;Jolla（Facebook）&lt;/a&gt;]&lt;/div&gt; &lt;p&gt;&lt;/p&gt; &lt;h6&gt;&lt;/h6&gt; &lt;a href="http://cn.engadget.com/2013/09/16/sailfish-os-with-android-app/" rel="bookmark" title="Permanent link to this entry"&gt;此文章网址&lt;/a&gt; |  &lt;a href="http://cn.engadget.com/forward/20721455/" title="Send this entry to a friend via email"&gt;转寄此文章&lt;/a&gt; |  &lt;a href="http://cn.engadget.com/2013/09/16/sailfish-os-with-android-app/#comments" title="View reader comments on this entry"&gt;回应&lt;/a&gt; &lt;hr&gt;&lt;/hr&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>finland jolla meego sailfish sailfish os</category>
      <guid isPermaLink="true">https://itindex.net/detail/45690-jolla-sailfish-os</guid>
      <pubDate>Mon, 16 Sep 2013 21:31:00 CST</pubDate>
    </item>
    <item>
      <title>Chrome OS 将增加公众帐户和售货亭模式，方便商户使用</title>
      <link>https://itindex.net/detail/40451-chrome-os-%E5%85%AC%E4%BC%97</link>
      <description>&lt;p&gt;  &lt;img alt="" height="286" src="http://www.guao.hk/wp-content/uploads/2012/11/430x286xchromeos_public_account1.jpg.pagespeed.ic_._C5UZdlLtw.jpg" title="430x286xchromeos_public_account1.jpg.pagespeed.ic._C5UZdlLtw" width="430"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;先说公开帐户功能，它可以让用户在特定的一段时间里使用Chrome OS，不需要用邮件和密码登录，也不必担心被保存了浏览历史、搜索历史和cookies。使用公开帐户的时候，你可以进入到三种售货亭模式下：全屏模式、单应用模式和dashborad模式。&lt;/p&gt;
 &lt;p&gt;  &lt;img alt="" height="286" src="http://www.guao.hk/wp-content/uploads/2012/11/430x286xchromeos_public_account2.jpg.pagespeed.ic_.5I-cT0pG-h.jpg" title="430x286xchromeos_public_account2.jpg.pagespeed.ic.5I-cT0pG-h" width="430"&gt;&lt;/img&gt;&lt;/p&gt;
 &lt;p&gt;这样即可方便商户使用Chrome OS来展示自己的官方网站、登录到某个用户信息系统里或是进入到一个展示商户的网页应用里。&lt;/p&gt;
 &lt;p&gt;Via   &lt;a href="http://www.chromestory.com/2012/11/coming-soon-to-chrome-os-public-accounts-and-kiosk-mode" target="_blank"&gt;Chrome Story&lt;/a&gt;&lt;/p&gt;
 &lt;hr&gt;&lt;/hr&gt;
 &lt;p&gt;  &lt;small&gt;© musiXboy 发表于    &lt;a href="http://www.guao.hk" target="_blank"&gt;谷奥——探寻谷歌的奥秘 ( http://www.guao.hk )&lt;/a&gt;, 2012.  |
   &lt;a href="http://www.guao.hk/posts/coming-soon-to-chrome-os-public-accounts-and-kiosk-mode.html#comments" target="_blank"&gt;1 条评论&lt;/a&gt; |
   &lt;a href="http://www.guao.hk/posts/coming-soon-to-chrome-os-public-accounts-and-kiosk-mode.html" target="_blank"&gt;永久链接&lt;/a&gt; |
   &lt;a href="http://google.org.cn/about/" target="_blank"&gt;关于谷奥&lt;/a&gt; |
   &lt;a href="http://google.org.cn/submit/" target="_blank"&gt;投稿/爆料&lt;/a&gt;   &lt;br /&gt;
Post tags:    &lt;a href="http://www.guao.hk/tag/chrome-os" rel="tag"&gt;Chrome OS&lt;/a&gt;,    &lt;a href="http://www.guao.hk/tag/chromium-os" rel="tag"&gt;Chromium OS&lt;/a&gt;
&lt;/small&gt;&lt;/p&gt;
 &lt;img border="0" height="0" src="http://img.tongji.linezing.com/1105192/tongji.php" width="0"&gt;&lt;/img&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>Google新闻 Chrome OS Chromium OS</category>
      <guid isPermaLink="true">https://itindex.net/detail/40451-chrome-os-%E5%85%AC%E4%BC%97</guid>
      <pubDate>Wed, 07 Nov 2012 13:49:16 CST</pubDate>
    </item>
    <item>
      <title>Firefox OS Developer Preview Phone 簡介</title>
      <link>https://itindex.net/detail/41995-firefox-os-developer</link>
      <description>&lt;div&gt;  &lt;a href="http://www.flickr.com/photos/appleboy/8304883463/" title="firefox-phone by appleboy46, on Flickr"&gt;   &lt;img alt="firefox-phone" height="312" src="http://farm9.staticflickr.com/8351/8304883463_f8139ea7ee.jpg" width="384"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/div&gt;
 &lt;p&gt;上次提到今年   &lt;a href="http://moztw.org/firefox/" target="_blank"&gt;Firefox&lt;/a&gt; 將會舉辦   &lt;a href="http://blog.wu-boy.com/2012/12/httpwww-apple-comtw2013-firefox-os-app-days/" target="_blank"&gt;2013 Firefox OS App Days&lt;/a&gt;，這次看到   &lt;a href="https://hacks.mozilla.org/" target="_blank"&gt;mozilla hacks&lt;/a&gt; 提到一篇:   &lt;a href="https://hacks.mozilla.org/2013/01/announcing-the-firefox-os-developer-preview-phone/" target="_blank"&gt;Announcing the Firefox OS Developer Preview Phone!&lt;/a&gt;，Firefox OS 是新一代的作業系統，跟 Android 或 IOS 比較不同的地方就是，你可以用   &lt;a href="http://firefoxosappday-taipei.eventbrite.com/" target="_blank"&gt;HTML5&lt;/a&gt; 可以做到手機的任何事情，包括讓手機振動，傳簡訊，或者是撥打電話，我想這是 iOS 或者是 Android 是無法做到的，該篇還提到 Firefox Phone 硬體規格:&lt;/p&gt;
 &lt;blockquote&gt;  &lt;p&gt;    CPU Qualcomm Snapdragon S1 1Ghz   &lt;br /&gt;
    UMTS 2100/1900/900 (3G HSPA)   &lt;br /&gt;
    GSM 850/900/1800/1900 (2G EDGE)   &lt;br /&gt;
    Screen 3.5″ HVGA Multitouch   &lt;br /&gt;
    3 MP Camera   &lt;br /&gt;
    4GB ROM, 512 MB RAM   &lt;br /&gt;
    MicroSD, Wifi N, Light and proxmity Sensor, G-Sensor, GPS, MicroUSB   &lt;br /&gt;
    1580 mAh battery   &lt;br /&gt;
    Over the air updates   &lt;br /&gt;
    Unlocked, add your own SIM card&lt;/p&gt;&lt;/blockquote&gt;
 &lt;p&gt;如果想開始設計 App for Firefox OS 可以參考  &lt;a href="https://developer.mozilla.org/en-US/docs/Apps/Getting_Started" target="_blank"&gt;這篇&lt;/a&gt;，另外文章有提到如果你要試試看 Firefox OS + 自己開發的 App，可以透過底下方式:&lt;/p&gt;
 &lt;p&gt;1. 安裝   &lt;a href="https://hacks.mozilla.org/2012/10/firefox-marketplace-aurora/" target="_blank"&gt;Marketplace for Android&lt;/a&gt; 在您的 Android 手機上。  &lt;br /&gt;
2. 安裝  &lt;a href="https://hacks.mozilla.org/2012/12/firefox-os-simulator-1-0-is-here/" target="_blank"&gt;瀏覽器版本 Firefox OS 模擬器&lt;/a&gt;  &lt;br /&gt;
3. 安裝   &lt;a href="https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/Building_and_installing_Firefox_OS" target="_blank"&gt;Firefox OS 到各家硬體上&lt;/a&gt;。  &lt;br /&gt;
4. 最後一種方法：那就是買支   &lt;a href="http://www.geeksphone.com/" target="_blank"&gt;Firefox OS Developer Preview device&lt;/a&gt;。&lt;/p&gt;
 &lt;p&gt;如果想更了解 Firefox OS 的話或有興趣的可以自行報名參加  &lt;a href="http://firefoxosappday-taipei.eventbrite.com/" target="_blank"&gt;台北 Mozilla 1/26 場次&lt;/a&gt;。&lt;/p&gt;

 &lt;h3&gt;Related View&lt;/h3&gt; &lt;ul&gt;  &lt;li&gt;   &lt;a href="http://blog.wu-boy.com/2012/12/httpwww-apple-comtw2013-firefox-os-app-days/"&gt;2013 Firefox OS App Days &lt;/a&gt; (1)&lt;/li&gt;  &lt;li&gt;   &lt;a href="http://blog.wu-boy.com/2012/02/web-developer-tools-in-firefox-10/"&gt;Web Developer Tools in FireFox 10&lt;/a&gt; (0)&lt;/li&gt;  &lt;li&gt;   &lt;a href="http://blog.wu-boy.com/2011/03/%e5%a6%82%e4%bd%95%e4%bd%bf%e7%94%a8-ppa-%e5%8d%87%e7%b4%9a-ubunut-firefox-%e7%80%8f%e8%a6%bd%e5%99%a8%e5%88%b0-4-0/"&gt;如何使用 PPA 升級 Ubunut Firefox 瀏覽器到 4.0&lt;/a&gt; (0)&lt;/li&gt;  &lt;li&gt;   &lt;a href="http://blog.wu-boy.com/2009/02/firefox-%e5%ae%89%e8%a3%9d-google-toolbar-%e4%bd%bf%e7%94%a8-chrome-start-page/"&gt;[FireFox] 安裝 google toolbar 使用 chrome Start page&lt;/a&gt; (0)&lt;/li&gt;  &lt;li&gt;   &lt;a href="http://blog.wu-boy.com/2008/02/www-firefox-and-ie-%e7%9a%84-greasemonkey/"&gt;[WWW] firefox and IE 的 greasemonkey&lt;/a&gt; (0)&lt;/li&gt;  &lt;li&gt;   &lt;a href="http://blog.wu-boy.com/2009/03/%e4%bd%bf%e7%94%a8-css-%e6%8e%92%e7%89%88%e8%a3%bd%e4%bd%9c%e7%b6%b2%e7%ab%99/"&gt;使用 CSS 排版製作網站&lt;/a&gt; (2)&lt;/li&gt;  &lt;li&gt;   &lt;a href="http://blog.wu-boy.com/2010/06/php-%e5%a5%bd%e7%94%a8-debug-php-%e5%b7%a5%e5%85%b7-firephp-for-firefox-on-codeigniter/"&gt;[PHP] 好用 Debug PHP 工具 FirePHP for FireFox on CodeIgniter&lt;/a&gt; (1)&lt;/li&gt;  &lt;li&gt;   &lt;a href="http://blog.wu-boy.com/2011/08/%e6%8e%a8%e8%96%a6%e4%b8%80%e6%9c%ac%e6%9b%b8%e7%b1%8d-master-mobile-web-apps-with-jquery-mobile/"&gt;推薦一本書籍 Master Mobile Web Apps with jQuery Mobile&lt;/a&gt; (5)&lt;/li&gt;  &lt;li&gt;   &lt;a href="http://blog.wu-boy.com/2011/03/%e7%94%a8-js-%e6%88%96-php-%e5%88%a4%e6%96%b7-android-%e6%89%8b%e6%a9%9f%e4%b8%8a%e7%b6%b2/"&gt;用 js 或 php 判斷 Android 手機上網&lt;/a&gt; (4)&lt;/li&gt;  &lt;li&gt;   &lt;a href="http://blog.wu-boy.com/2010/01/google-chrome-%e6%8e%a8%e5%87%ba-4-0-%e7%a9%a9%e5%ae%9a%e7%89%88-mozilla-%e6%8e%a8%e5%87%ba-firefox-3-6/"&gt;Google Chrome 推出 4.0 穩定版 &amp;amp; Mozilla 推出 FireFox 3.6&lt;/a&gt; (0)&lt;/li&gt;&lt;/ul&gt;
&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>www Firefox Firefox OS</category>
      <guid isPermaLink="true">https://itindex.net/detail/41995-firefox-os-developer</guid>
      <pubDate>Tue, 22 Jan 2013 23:25:52 CST</pubDate>
    </item>
    <item>
      <title>Firefox OS 开发预览机</title>
      <link>https://itindex.net/detail/42008-firefox-os-%E5%BC%80%E5%8F%91</link>
      <description>&lt;p&gt;Mozilla 宣布了两款与 Geeksphone 合作的 Firefox OS 开发预览机，适用于准备投入 Firefox OS 开发的人员使用，  &lt;strong&gt;预期上市时间为今年二月&lt;/strong&gt;，售价未知。&lt;/p&gt;

 &lt;p&gt;  &lt;a href="http://lt-file.b0.upaiyun.com/files/2013/01/geeksphone.jpg"&gt;   &lt;img alt="" height="324" src="http://lt-file.b0.upaiyun.com/files/2013/01/geeksphone.jpg" title="geeksphone" width="500"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;

 &lt;p&gt;代号为   &lt;strong&gt;Keon 的低端版本&lt;/strong&gt;，关键配置有：
  &lt;ul&gt;
       &lt;li&gt;Snapdragon S1 1Ghz SoC 设计。&lt;/li&gt;
       &lt;li&gt;三频 UMTS 3G HSPA 及四频 GSM 2G EDGE 支持。&lt;/li&gt;
       &lt;li&gt;3.5 寸 HVGA 屏幕。&lt;/li&gt;
       &lt;li&gt;3MP 后置相机。&lt;/li&gt;
       &lt;li&gt;4GB ROM，512 MB RAM。&lt;/li&gt;
       &lt;li&gt;支持 microSD 扩展。&lt;/li&gt;
       &lt;li&gt;具备其他智能手机常见功能，如 802.11n 无线网络、光线感应、重力感应、GPS 等。&lt;/li&gt;
       &lt;li&gt;1580 mAh 电池。&lt;/li&gt;
       &lt;li&gt;完全解锁。&lt;/li&gt;
&lt;/ul&gt;&lt;/p&gt;

 &lt;p&gt;代号为   &lt;strong&gt;Peak 的中端版本&lt;/strong&gt;，关键配置有：
  &lt;ul&gt;
       &lt;li&gt;Snapdragon S4 1.2Ghz SoC 设计。&lt;/li&gt;
       &lt;li&gt;三频 UMTS 3G HSPA 及四频 GSM 2G EDGE 支持。&lt;/li&gt;
       &lt;li&gt;4.3 寸 qHD IPS 屏幕。&lt;/li&gt;
       &lt;li&gt;8MP 后置相机（带闪光灯） + 2MP 前置摄像头。&lt;/li&gt;
       &lt;li&gt;4GB ROM，512 MB RAM。&lt;/li&gt;
       &lt;li&gt;支持 microSD 扩展。&lt;/li&gt;
       &lt;li&gt;具备其他智能手机常见功能，如 802.11n 无线网络、光线感应、重力感应、GPS 等。&lt;/li&gt;
       &lt;li&gt;1800 mAh 电池&lt;/li&gt;
       &lt;li&gt;完全解锁。&lt;/li&gt;
&lt;/ul&gt;&lt;/p&gt;

 &lt;p&gt;本站目前已经完整介绍过测试 Firefox OS 应用程序的四种方式了：
  &lt;ul&gt;
       &lt;li&gt;安装 Firefox for Android     &lt;a href="http://linuxtoy.org/archives/firefox-marketplace-for-android-preview.html"&gt;体验 Mozilla Marketplace&lt;/a&gt;。&lt;/li&gt;
       &lt;li&gt;使用桌面浏览器中的     &lt;a href="http://linuxtoy.org/archives/firefox-os-simulator.html"&gt;Firefox OS 模拟器&lt;/a&gt;。&lt;/li&gt;
       &lt;li&gt;这款即将上市的 Firefox OS 开发预览机。&lt;/li&gt;
       &lt;li&gt;    &lt;a href="http://linuxtoy.org/archives/firefox-os-developement-screencasts.html"&gt;自行编译并刷制 Firefox OS&lt;/a&gt; 至现有 Android 手机。&lt;/li&gt;
&lt;/ul&gt;&lt;/p&gt;

 &lt;p&gt;Firefox OS 的程序开发基于现有的  &lt;strong&gt;标准网页开发技术&lt;/strong&gt; HTML5/CSS3/JavaScript 以及正在标准审核的   &lt;a href="http://linuxtoy.org/archives/mozilla-webapi.html"&gt;WebAPI&lt;/a&gt; ，对于现有网页开发人员来讲，无需额外学习即可实现单一程序的在桌面版 Firefox 和 Firefox OS 之间的兼容。&lt;/p&gt;

 &lt;p&gt;  &lt;a href="https://hacks.mozilla.org/2013/01/announcing-the-firefox-os-developer-preview-phone/"&gt;官方发布公告&lt;/a&gt;&lt;/p&gt;

 &lt;p&gt;  &lt;em&gt;消息来源：&lt;/em&gt;   &lt;a href="http://arstechnica.com/gadgets/2013/01/firefox-os-gets-dedicated-developer-hardware/"&gt;Ars Technica&lt;/a&gt;&lt;/p&gt;
	 &lt;p&gt;&lt;/p&gt;
	 &lt;p&gt;分类:   &lt;a href="http://linuxtoy.org/category/apps/development" rel="category tag" title="View all posts in Development"&gt;Development&lt;/a&gt;,   &lt;a href="http://linuxtoy.org/category/gadget" rel="category tag" title="View all posts in Gadget"&gt;Gadget&lt;/a&gt; | 
	  &lt;a href="http://linuxtoy.org/archives/firefox-os-developer-preview-phone.html"&gt;永久链接&lt;/a&gt; |
	  &lt;a href="http://delicious.com/save?url=http://linuxtoy.org/archives/firefox-os-developer-preview-phone.html&amp;title=Firefox OS &amp;#24320;&amp;#21457;&amp;#39044;&amp;#35272;&amp;#26426;"&gt;收藏到 del.icio.us&lt;/a&gt; | 
	  &lt;a href="mailto:?Subject=Check This Out&amp;body=I think you'll like this: http://linuxtoy.org/archives/firefox-os-developer-preview-phone.html"&gt;Email 给好友&lt;/a&gt; | 
      &lt;a href="http://linuxtoy.org/archives/firefox-os-developer-preview-phone.html#comments"&gt;无评论&lt;/a&gt; |
      &lt;a href="http://linuxtoy.org/faq/donate"&gt;捐助本站&lt;/a&gt;&lt;/p&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>Development Gadget firefoxos Mozilla</category>
      <guid isPermaLink="true">https://itindex.net/detail/42008-firefox-os-%E5%BC%80%E5%8F%91</guid>
      <pubDate>Wed, 23 Jan 2013 14:31:34 CST</pubDate>
    </item>
    <item>
      <title>运行 Firefox OS 的神秘手机现身 CES 2013 展场，主站动手玩（视频）</title>
      <link>https://itindex.net/detail/41665-firefox-os-%E6%89%8B%E6%9C%BA</link>
      <description>&lt;p&gt;分类:   &lt;a href="http://cn.engadget.com/category/smartphones/" rel="tag"&gt;智能手机&lt;/a&gt;&lt;/p&gt; &lt;div&gt;
	  &lt;a href="http://cn.engadget.com/2013/01/08/firefox-os-mystery-phone/"&gt;   &lt;img src="http://www.blogcdn.com/cn.engadget.com/media/2013/01/firefoxmobos619pxhedimg.jpg"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/div&gt;
 &lt;div&gt;
	  &lt;br /&gt;
	今天主站编辑在   &lt;a href="http://cn.engadget.com/tag/ces%202013"&gt;CES 2013&lt;/a&gt; 现场发现了一台运行   &lt;a href="http://cn.engadget.com/tag/FirefoxOS"&gt;Firefox OS&lt;/a&gt; 的神秘手机，这款手机没有品牌，看上去功能也不算很强，而且由于现场 Wi-Fi 不给力的关系我们也无法尽情地将其把玩一番。不过据悉它采用的至少是一颗 ARMv6 的 CPU，RAM 方面则不会低于 256MB（实际规格很可能更高）。Mozilla 计划在 2013 年中正式发表 Firefox OS，在其「长长的合作伙伴名单」中我们看到了 Telefonica、Qualcomm 等名字。  &lt;br /&gt;
	  &lt;br /&gt;
	我们动手玩到的这台手机给人的感觉很像一款低端 Android 产品，它使用的是基于 HTML5 的开源 OS，应用间的切换很快，反应也很灵敏，但除此之外暂时就没有什么其它特点值得说道了。Mozilla 希望将旗下的 OS 用于针对新兴市场推出的低端产品，但目前来看基本上它还处在筹备阶段，虽说和去年 MWC 上  &lt;a href="http://cn.engadget.com/2012/02/29/mozilla-boot-to-gecko-hands-on-video/"&gt;初次亮相&lt;/a&gt;时相比已经进步了不少，但前面应该还有很长的路要走呢。跳转后可以看到动手玩视频。  &lt;br /&gt;
	  &lt;div&gt;   &lt;p&gt;    &lt;strong&gt;Gallery:      &lt;a href="http://cn.engadget.com/photos/firefox-os-ces-2013-0/"&gt;Firefox OS @ CES 2013&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;   &lt;a href="http://cn.engadget.com/photos/firefox-os-ces-2013-0/5547077/"&gt;    &lt;img alt="" src="http://www.blogcdn.com/cn.engadget.com/media/2013/01/dsc05632_thumbnail.jpg" title=""&gt;&lt;/img&gt;&lt;/a&gt;   &lt;a href="http://cn.engadget.com/photos/firefox-os-ces-2013-0/5547078/"&gt;    &lt;img alt="" src="http://www.blogcdn.com/cn.engadget.com/media/2013/01/dsc05637_thumbnail.jpg" title=""&gt;&lt;/img&gt;&lt;/a&gt;   &lt;a href="http://cn.engadget.com/photos/firefox-os-ces-2013-0/5547079/"&gt;    &lt;img alt="" src="http://www.blogcdn.com/cn.engadget.com/media/2013/01/dsc05644_thumbnail.jpg" title=""&gt;&lt;/img&gt;&lt;/a&gt;   &lt;a href="http://cn.engadget.com/photos/firefox-os-ces-2013-0/5547080/"&gt;    &lt;img alt="" src="http://www.blogcdn.com/cn.engadget.com/media/2013/01/dsc05645_thumbnail.jpg" title=""&gt;&lt;/img&gt;&lt;/a&gt;   &lt;a href="http://cn.engadget.com/photos/firefox-os-ces-2013-0/5547081/"&gt;    &lt;img alt="" src="http://www.blogcdn.com/cn.engadget.com/media/2013/01/dsc05648_thumbnail.jpg" title=""&gt;&lt;/img&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt; &lt;p&gt;  &lt;br /&gt;&lt;/p&gt; &lt;p&gt;  &lt;a href="http://cn.engadget.com/2013/01/08/firefox-os-mystery-phone/" rel="bookmark"&gt;继续阅读全文    &lt;em&gt;运行 Firefox OS 的神秘手机现身 CES 2013 展场，主站动手玩（视频）&lt;/em&gt;&lt;/a&gt;&lt;/p&gt; &lt;h6&gt;&lt;/h6&gt; &lt;a href="http://www.engadget.com/2013/01/07/firefox-os-mystery-phone/"&gt;引用来源&lt;/a&gt; |  &lt;a href="http://cn.engadget.com/2013/01/08/firefox-os-mystery-phone/" rel="bookmark" title="Permanent link to this entry"&gt;此文章网址&lt;/a&gt; |  &lt;a href="http://cn.engadget.com/forward/20420960/" title="Send this entry to a friend via email"&gt;转寄此文章&lt;/a&gt; |  &lt;a href="http://cn.engadget.com/2013/01/08/firefox-os-mystery-phone/#comments" title="View reader comments on this entry"&gt;回应&lt;/a&gt; &lt;hr&gt;&lt;/hr&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category>ces 2013 ces2013 ces2013-highlight firefoxos mobilepostcross</category>
      <guid isPermaLink="true">https://itindex.net/detail/41665-firefox-os-%E6%89%8B%E6%9C%BA</guid>
      <pubDate>Tue, 08 Jan 2013 17:10:00 CST</pubDate>
    </item>
    <item>
      <title>MAC OS上解决终端显示中文乱码的问题</title>
      <link>https://itindex.net/detail/44282-mac-os-%E7%BB%88%E7%AB%AF</link>
      <description>&lt;p&gt;
问题描述：&lt;/p&gt;
 &lt;p&gt;
在终端上运行命令javac，查看结果中文会显示乱码，如下：&lt;/p&gt;
 &lt;p&gt;
&lt;/p&gt;
 &lt;p&gt;
  &lt;a href="http://www.wirelessqa.com/"&gt;   &lt;img alt="abcd" height="441" src="http://www.wirelessqa.com/wp-content/uploads/2013/05/abcd.jpg" width="590"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;
 &lt;p&gt;
其实大家都知道，中文乱码的主要原因就是编码方式的不支持，那我们怎么样设置编码方式呢？这里推荐您使用一个特别好的终端iTerm，默认编码方式是utf-8,需要设置为Chinese (GB 18030)&lt;/p&gt;
 &lt;p&gt;
&lt;/p&gt;
 &lt;p&gt;
  &lt;a href="http://www.wirelessqa.com/"&gt;   &lt;img alt="abc2" height="511" src="http://www.wirelessqa.com/wp-content/uploads/2013/05/abc2.jpg" width="809"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;
 &lt;p&gt;
之后重新打开iTerm，输入javac，查看结果&lt;/p&gt;
 &lt;p&gt;
&lt;/p&gt;
 &lt;p&gt;
  &lt;a href="http://www.wirelessqa.com/"&gt;   &lt;img alt="abc3" height="551" src="http://www.wirelessqa.com/wp-content/uploads/2013/05/abc3.jpg" width="692"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;
 &lt;p&gt;
&lt;/p&gt;
 &lt;p&gt;
作者：毕小朋  出处: http://www.wirelessqa.com 欢迎转载或分享，但请务必声明文章出处。如果文章对您有帮助，希望您能推荐或关注。&lt;/p&gt;

 &lt;div&gt;
    作者：wirelessqa 发表于2013-5-30 23:09:53   &lt;a href="http://blog.csdn.net/wirelessqa/article/details/8997190"&gt;原文链接&lt;/a&gt;
&lt;/div&gt;
 &lt;div&gt;
    阅读：94 评论：0   &lt;a href="http://blog.csdn.net/wirelessqa/article/details/8997190#comments" target="_blank"&gt;查看评论&lt;/a&gt;
&lt;/div&gt;

&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/44282-mac-os-%E7%BB%88%E7%AB%AF</guid>
      <pubDate>Thu, 30 May 2013 23:09:53 CST</pubDate>
    </item>
    <item>
      <title>Firefox OS要做Android替代品</title>
      <link>https://itindex.net/detail/44624-firefox-os-android</link>
      <description>&lt;p&gt;Mozilla移动设备高级副总裁兼亚洲业务总裁宫力（GongLi）在接受媒体采访时表示，  &lt;strong&gt;该公司计划在开放的手机操作系统领域将FirefoxOS打造成Android的完美替代品。&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;  &lt;img align="middle" src="http://static.cnbetacdn.com/newsimg/2013/0623/01371955792.jpg"&gt;&lt;/img&gt;&lt;/p&gt; &lt;p&gt;下面是这次采访摘要：&lt;/p&gt; &lt;p&gt;问：FirefoxOS智能手机能够被认为是Mozilla的自有品牌产品吗，或者它们是同销售商的联合品牌产品？&lt;/p&gt; &lt;p&gt;答：不是。Mozilla只是提供了一个操作系统和基于FirefoxOS应用的在线商店。中国的中兴、TCL和华为，还有韩国的LG电子和日本的索尼移动通信，通过与移动运营商合作以他们自己的品牌将推出待售的FirefoxOS智能手机。&lt;/p&gt; &lt;p&gt;问：为了迅速地在全球市场促销FirefoxOS智能手机，Mozilla可能同代工厂商合作推出Mozilla品牌产品吗？&lt;/p&gt; &lt;p&gt;答：不会。Mozilla希望吸引智能手机销售商和代工厂商加入到FirefoxOS生态系统。如果我们提供自有品牌智能手机，我们将成为我们销售商的竞争者，这种利益冲突将会阻碍他们进入FirefoxOS生态系统。即使我们提供自有品牌FirefoxOS智能手机，这些产品将主要用于参考性样品而非大规模销售的产品。&lt;/p&gt; &lt;p&gt;问：三星电子公司和宏达电这两家在亚洲领先的智能手机销售商，还没有同Mozilla合作。这是因为他们对云端操作系统态度不很积极还是这种网络环境还没有发展到成熟水平？&lt;/p&gt; &lt;p&gt;答：FirefoxOS是一个新操作系统。对于销售商来说，是否采用和何时采用则有他们自己的考虑。一部分销售商将会坚持Android，暂时不会选择FirefoxOS。而其它的销售商希望选择非Android平台，但是也可能不会采用FirefoxOS。&lt;/p&gt; &lt;p&gt;问：对于开发同样是基于云端及网络技术的ChromeOS的设备的销售商来说，他们必定会开发FirefoxOS智能手机吗？&lt;/p&gt; &lt;p&gt;答：未必。多数销售商不会将自己的产品集中于唯一的操作系统，他们会考虑第二个或第三个平台，其中包括FirefoxOS。对于采用Android的销售商来说，他们将会选择替代平台来寻求平衡。一些销售商担心谷歌可能改变Android战略或者在未来支持摩托罗拉移动（MotorolaMobility）。&lt;/p&gt; &lt;p&gt;问：在2013年，为什么已经采用Android的销售商更加愿意寻求替代平台呢？&lt;/p&gt; &lt;p&gt;答：Mozilla发布FirefoxOS之后不久，谷歌收购了摩托罗拉移动。自谷歌收购摩托罗拉移动以来，Mozilla获得来自销售商关于采用FirefoxOS的请求增多。越来越多的销售商感觉谷歌对采用Android施加了严格的限制，例如谷歌去年就禁止宏基在中国市场推出由阿里巴巴开发的操作系统智能手机。&lt;/p&gt; &lt;p&gt;问：FirefoxOS能够足以吸引开发者的注意力吗？&lt;/p&gt; &lt;p&gt;答：这要取决于市场中有多少FirefoxOS设备在销售。不过，FirefoxOS具有两大优势，第一，基于HTML5开发的应用同所有平台兼容；第二，利用HTML5技术的开发者数量远远多于利用iOS和Android技术的开发者数量，两者相差至少在100万。&lt;/p&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/44624-firefox-os-android</guid>
      <pubDate>Sun, 23 Jun 2013 10:53:11 CST</pubDate>
    </item>
    <item>
      <title>GitHub Boxen：自动化Mac OS X的配置与管理</title>
      <link>https://itindex.net/detail/42521-github-boxen-%E8%87%AA%E5%8A%A8%E5%8C%96</link>
      <description>&lt;div&gt;&lt;/div&gt;     
    
     &lt;div&gt;    	    
   		  &lt;p&gt;GitHub开源了   &lt;a href="https://github.com/blog/1345-introducing-boxen" rel="nofollow" target="_blank"&gt;Boxen&lt;/a&gt;，这是内部使用的Mac笔记本自动化配置工具，经过修改也可用于Linux或Windows机器。&lt;/p&gt;
  &lt;p&gt;   &lt;a href="https://github.com/blog/1345-introducing-boxen" rel="nofollow" target="_blank"&gt;Boxen&lt;/a&gt;是GitHub针对软件开发或其他类型的工作对Mac笔记本进行设置和配置的自动化工具，使用人群包括他们的开发者、律师、设计师和发货人员等。其思路是，以自动化和尽量无错的方式将人工干预最小化，在这种情况下为用户准备好系统。据GitHub介绍，一个新的开发者借助Boxen能在30分钟之内设置好Mac系统并为提交代码做好准备。&lt;/p&gt;
  &lt;p&gt;Boxen基于很多   &lt;a href="https://github.com/boxen" rel="nofollow" target="_blank"&gt;Puppet模块&lt;/a&gt;构建，这些模块支持各种软件的设置，如Cassandra、MongoDB、Java、Python、Ruby、Node,js、nginx、Skype，甚至Minecraft。尽管Boxen带了一个预配置设置，但每个用户都可以按需改进。&lt;/p&gt;
  &lt;p&gt;在使用Boxen设置好所需的配置后，系统管理员可以通过一个运行在Heroku之上并使用OAuth保护的Web应用程序   &lt;a href="https://github.com/boxen/boxen-web" rel="nofollow" target="_blank"&gt;将该配置部署给整个组织&lt;/a&gt;。&lt;/p&gt;
  &lt;p&gt;Boxen支持最新的Mac OS X 10.8，不过也可用于早期的版本。经过调整，还可用于Linux或Windows，因为大多数工作是通过Puppet完成的。Boxen基于   &lt;a href="http://opensource.org/licenses/MIT" rel="nofollow" target="_blank"&gt;MIT许可&lt;/a&gt;开源。&lt;/p&gt;
  &lt;p&gt;   &lt;strong&gt;查看英文原文&lt;/strong&gt;：   &lt;a href="http://www.infoq.com/news/2013/02/GitHub-Boxen" rel="nofollow" target="_blank"&gt;GitHub Boxen: Automating Mac OS X Configuration and Management&lt;/a&gt;&lt;/p&gt;
   		  &lt;p&gt;&lt;/p&gt;
   	&lt;/div&gt;   	
   	
   	
    
    
	
	 &lt;div&gt;&lt;/div&gt;
	
	









 &lt;div&gt;
	
	  &lt;h3&gt;相关厂商内容&lt;/h3&gt;
	
	
	
	
	
	
		
			
		
		  &lt;p&gt;
			   &lt;a href="http://www.infoq.com/cn/vendorcontent/show.action?vcr=2065&amp;utm_source=infoq&amp;utm_medium=VCR&amp;utm_campaign=vcr_news_click" rel="nofollow" target="_blank"&gt;
				国内最大的Python应用——Sohu邮箱之经验分享，尽在QCon北京企业开发专题
			&lt;/a&gt;
		&lt;/p&gt;
	
		
			
		
		  &lt;p&gt;
			   &lt;a href="http://www.infoq.com/cn/vendorcontent/show.action?vcr=2064&amp;utm_source=infoq&amp;utm_medium=VCR&amp;utm_campaign=vcr_news_click" rel="nofollow" target="_blank"&gt;
				JBoss研究员张建峰确认参加QCon北京，分享如何应用JBoss AS7构建企业私有云
			&lt;/a&gt;
		&lt;/p&gt;
	

	
	
		
		
	
	
	
	
	
&lt;/div&gt;

	
	
	
	
	
	
	






 

 &lt;div&gt;
      &lt;h3&gt;您可能也会喜欢&lt;/h3&gt;    
&lt;/div&gt;


	
	
	
	
	 &lt;div&gt;&lt;/div&gt;&lt;div&gt; &lt;a href="https://itindex.net/"  title="IT 资讯"&gt;&lt;img src="https://itindex.net/images/iconWarning.gif" title="IT 资讯" border="0"/&gt; &lt;/a&gt;</description>
      <category />
      <guid isPermaLink="true">https://itindex.net/detail/42521-github-boxen-%E8%87%AA%E5%8A%A8%E5%8C%96</guid>
      <pubDate>Wed, 20 Feb 2013 17:10:00 CST</pubDate>
    </item>
  </channel>
</rss>

