Archives

帖子位于 "多核技术博客征文专栏" 分类 RSS

本专栏用于展示英特尔软件网络的用户提交的“多核技术博客竞赛征文”作品。

历史记录 ›

安全性与可管理性的完美结合——英特尔博锐技术应用之旅

作者: qiuye402 (1 篇文章) 日期: 十一月 10, 2009 在 11:23 上午
评论 (1)

笔者一直认为英特尔博锐处理器技术是商用电脑领域的一项重大革新,其因有三:1、无论是安全性的突破还是可管理性的超越,博锐技术带来的无疑是更大范围的技术创新(而不仅于个人pc);2、其远程可管理性将大大降低企业的隐性成本;3、笔者坚定的认为这种创新是为众多大中(也许还有小)企业量身定做的。 当然,笔者并非企业IT管理人员,缺少切身体验的机会,一直以来,对博锐技术的了解仅处于“可远观,而不可亵玩焉”的水平。 其实早在两年前,笔者就耳闻博锐技术基于“软硬兼施”的安全与管理解决方案,碍于无缘体验,一直是扑朔迷离。 2009年4月17日,笔者有幸参与了2009英特尔博锐技术应用宣讲会,期间,英特尔解决方案部中国大区技术部经理梁岩分享了博锐技术的最新应用和成功经验,而来自联想公司的代表更是在现场演示了联想基于博锐平台的创新应用。终于,在了解博锐技术知识的同时,更使笔者享受到一次身心愉悦的博锐应用之旅。 博锐技术应用之旅——商用电脑新高峰 在会上,厂商为我们展示了基于英特尔迅驰2博锐处理器平台和英特尔酷睿2博锐处理器平台关于安全性与可管理性的宣讲和演示。这一基于硬件的技术在重大IT挑战面前,无疑是一个里程碑式的事件。过去,企业诸如系统在关机时难以管理、企业防火墙外的笔记本电脑之间的通信不安全、不断增加的昂贵的现场访问费用支出、未受保护或者难以发现的硬件资产损失、难以实现的配置一致性、耗时耗力的人工盘点等问题给企业造成了很多不便和经营障碍……透过联想基于博锐平台的创新应用的现场演示过程,笔者看到这些难题在博锐技术面前,已不再是难题。 博锐技术应用体验——一个典型的示例 我们知道,诸如Netman、Remote Administrator、PcAnywhere等远程控制软件,已经将远程控制技术发挥得淋漓尽致。随着技术的发展,远程控制从传统的使用NETBEUI、NETBIOS、IPX/SPX、TCP/IP等协议来实现操控,到通过Web页面以Java技术来控制远程电脑;从对等操作系统间到跨越平台的远程控制,技术的发展越见成熟。 但是,基于软件的远程控制技术,其局限性是很明显的。一、在某些情况下,如,当被控端处于关机或系统崩溃状态时,主控端发出的远程控制指令很难得到任何的反馈;二:主控端能够取得控制权的host数量一般都是很有限的,大多数情况下也是不安全的;三:大多数软件,主控端施予被控端的操作是一对一的,很难统一集群操作;四:主控端能够实现的远程操作类别受诸多因素影响,非常有限;五、基于软件的远程控制缺乏主动性。 下面,我们来看一个联想基于博锐平台的应用演示: 如上图,在博锐技术的支持下,演示人员通过图中的IT控制台(VPRO控制台),对一台无法启动系统的客户机进行系统检测和修复,并对其执行开机操作。 如果我们将这个演示过程简单理解成是基于硬件的远程控制,那么,这种远程控制的突破就在于,通过对虚拟技术的支持以及英特尔主动管理技术,它跨越了传统的基于软件的远程控制技术的局限:不受客户机系统因素影响导致操控失败、不受host数量限制、对客户机完整的集群操作、管理台能够完成几乎所有的等同于客户机本机操作的计算机操作、管理台主动操作、基于处理器的内建安全性等等。 这项技术的应用将是企业IT管理的革命。试想,在一个传统的企业办公网络内,一旦某一机子出现系统故障,IT管理人员面对的将是喋喋不休的电话问询,问询无法解决的更是只能亲临现场排查故障。企业规模越大,IT管理人员现场访问的次数也就越多,为此,企业不得不支付高昂的IT管理费用。而当企业部署了计算机群都处于博锐技术的控制之下后,上述问题将迎刃而解。 当然,以上的例子只是博锐技术展示中的一个典型示例。 整个会议过程中 ,笔者都有很深的感慨和体会。 毋庸置疑,博锐技术的应用将会成为企业商务化管理的一个重要体现和趋势性发展的必然结果。 当然这里也很荣幸的被邀请参与到体验的过程中,见证酷睿2博锐时代的发展和辉煌时刻的到来。 今后,我将以使用或体验者的身份,等待真正近距离接触博锐的机会。 拭目以待。

继续 ›

分类: 可管理性, 多核技术博客征文专栏

Python 里的多线程

作者: kevinfankai (1 篇文章) 日期: 十一月 10, 2009 在 11:23 上午
评论 (0)

今天随意逛水木的精华区,看大家在讨论什么GIL,搜了一下发现python的多线程原来与我想象的大不同。看了几篇不错的文章,觉得挺不错的,大致对问题有了个了解,先把文章的地址贴出来,有兴趣去读这些文章的朋友就不必再听我这样的半拉子扯淡了: Concurrency and Python http://www.ddj.com/linux-open-source/206103078 Python Threads and the Global Interpreter Lock http://jessenoller.com/2009/02/01/python-threads-and-the-global-interpreter-lock/   本来是应该从并行、多线程、竞争、锁这些东西谈起,不过我想一般大家都该挺熟的,不熟悉的话也很容易找到资料,这里就偷懒略过了。 Python的多线程模型基本上是Java多线程模型的简化版,提供了线程基类、锁、信号量,事件等待组件,虽然也少了一些功能,比如线程不能被销毁、中止、暂停、恢复等待,基本上可以让程序员比较方便的进行多线程编程。在CPython解释器中,存在一个叫Global Interpreter ...

继续 ›

分类: 多核技术博客征文专栏

浏览器的多线程技术

作者: chen_xizhang (1 篇文章) 日期: 十一月 10, 2009 在 11:22 上午
评论 (1)

  今天在测试一个东西时发现,谷歌浏览器与IE浏览器可能在多线程处理方面有根本差别。我是指,如果浏览器在等待一个请求的响应时,如果有一部分已经输出到了浏览器中,那么对于这一部分的展现是否可以并行处理? 例如,我需要等待一个很长时间的页面,为了减少用户的焦虑,我们可能会用一个进度条的方式。这个进度条可能是一个gif图片。我发现在谷歌浏览器中,gif图片可以正常工作(即便浏览器当前还在等待更多的响应),而IE却不行。傲游也不行(因为它也是IE内核) 可以看到那个进度条在动。 而同样的页面,如果用IE打开,则一动不动。 作者:陈希章 出处:http://blog.csdn.net/chen_xizhang

继续 ›

分类: 多核技术博客征文专栏

对多进程/单线程模型的理解

作者: tq02h2a01 (1 篇文章) 日期: 十一月 10, 2009 在 9:37 上午
评论 (11)

  最近在看北电代码的时候,发现,系统中大部分模块都采用的是一个进程/一个线程的设计方式,一个大的功能模块由多个进程构成。因为系统是运行在Linux平台上,一开始,我觉得这种设计是有问题,追溯根源,以为是北电之前使用的操作系统是vxworks,那帮北美的开发人员把vxworks中task的概念生搬硬套到linux中,在linux中提供了比进程性能更高的线程,他们并没有充分的利用起来。之后认真思考了一下,发现,他们这样设计是有道理的。分析如下,我们先来说说进程和线程的区别吧。 区别: 1. 进程是资源拥有的基本单位,线程是调度的基本单位,在CPU上调度的是线程,当任务切换的时候,需要将资源进行保存。 2. 在一个进程内部可以运行多个线程,线程切换不需要资源保存,这些线程共享进程的资源,地址空间。进程切换需要资源保存。 3. 进程之间的同步是可以通过各种IPC,各种进程锁,信号量,信号来实现,比如文件锁,自旋锁,RCU等。而线程之间的同步可以通过进程内部锁来实现,比如互斥锁,读写锁等。 在设计中为什么要使用多进程单线程的这种模式呢?我的理解如下: 1. 增加整个系统的健壮性,比如一个进程做两件事情,任何一件事情做失败都会导致另外一件事情不能做。如果将这个进程里的功能解耦,系统的健壮性自然也随之增强。单点故障的几率减小。 2. 从开发角度讲,这种解耦也便于系统升级,对其中的某一个模块升级变得更加容易而不会影响到其他功能模块。 3. 虽然性能不如多线程,但是多线程编程适用于高级程序员,对编程技巧要求高。使用多进程其实性能差别就在于进程切换资源保存部分,多线程模型会把进程间数据传递的开销转到锁开销上。 4. 减小整个会话阻塞在单个进程中,使得整个系统的吞吐量增大。 以上理解,是我对多进程/单线程模型的一点心得。

继续 ›

分类: 多核技术博客征文专栏

打造家庭大户室之路:起步篇I

作者: avensue (29 篇文章) 日期: 十月 27, 2009 在 11:26 上午
评论 (4)

先说下做这个的由来。 其实是家里旧电脑太多。正好公司里面又淘汰旧机。公司里面正好又有20寸的液晶淘汰。于是就掏了点米买了下来。最初想法仅仅是用公司的液晶换下家里的小15寸的液晶。顺便将家里的几台旧机卖掉。没想到收废品的好黑心阿。我2台才用了2年的机器(含硬盘内存CPU机箱)居然只肯出20块钱!。一怒下,不卖了。干脆利用这些旧机器内的物件,来打造一个炒股大户室吧。 扫了下存货 2台液晶,1X15, 1X24 HP彩色激光打印机1台,HP彩喷一体机1台 硬盘若干,内存若干。 底板若干。CPU若干-后两项可以忽略。卖废品的都不要。。。悲剧阿。。。 不过底板和CPU都不能用了。硬盘和内存倒是能利用起来。网上有不少双屏显的贴子。看着我也动心,打算这么干了。计算了下,如果利用旧机再加钱买点新配件。花费并不高。所以我正式决心开始干了,没想到这是折磨的开始 再放些图片。是为这次升级而购买的器材的一些箱子,大家可能注意到,那些箱子大部分是DELL的。其实最初不是的。前面到的一些货我没来得及在退货前拍下来。是一些散件。至于为什么会有退货的过程。也是一个故事了。这次我分包从新蛋和京东都定了货。也顺便比较了他们的服务。当然也包括退货的服务了。。 列出下面我会写的部分。看看大家是否有兴趣。有兴趣就继续写下去。咔咔 大户室构思篇和方案篇 寻找有缘分的配件之路 第一批货到了!折磨开始了 烤机失败!退货!灾难第一重 支架的DIY 各显示器,CPU和显卡的对比与选择 组装!起航! 打造家庭大户室之路系列专题: 打造家庭大户室之路:预告片 打造家庭大户室之路:起步篇I 打造家庭大户室之路:没有最贵,只有更贵的构思和方案

继续 ›

分类: 图形和视觉计算, 多核技术博客征文专栏, 并行计算, 英特尔® 软件网络 2.0, 软件技术学习及认证

中兴3G初号机之外观篇I

作者: avensue (29 篇文章) 日期: 九月 25, 2009 在 11:38 上午
评论 (5)

在前篇文章我卖了个关子,提到了中兴的3G机。但是由于当时没有拍好照片,所以用了WIBRAIN的照片来代替。导致很多人都有质疑。我之所以用WIBRAIN的照片。是因为这款机器其实就是WIBRAIN的中国版。让我们来对比下 这款3G机其实是中兴和广讯通的合作产品。广讯通的EKING I1大家应该知道吧。带BT+WIFI.但是唯独少了3G.实际硬件内是预留了SIM卡槽的。而现在,中兴和它的合作弥补了这个缺陷 先看看他的配置 INTEL ATOM芯片--INTEL啊INTEL. 我的最爱了。。我是INTEL的FANS.. 1G内存-偏小了 XP HOME-软件应用广了 摄像头130W像素-在某些评测里面将这个摄像头夸的花好稻好。。我就不说了。。我尝试了拍了几张。。拍的象鬼就不说了。。还都拍糊了。。 WIFI,BT EKING的外形,注意右侧那张白色小胶布,上面写着的就是中兴3G 测试机的字样 各位再看看韩国的WIBRAIN吧。是不是完全一样? EKING的接口。接口还是比较全的。但是做工真是很差。有点廉价的感觉。为什么不能用点金属质感强的塑料件呢?我甚至能感觉到表面的毛刺

继续 ›

分类: 其他, 多核技术博客征文专栏, 并行计算, 移动技术, 英特尔® 软件网络 2.0

多线程学习笔记

作者: byxdaz (2 篇文章) 日期: 九月 23, 2009 在 4:05 下午
评论 (6)

多线程概述   进程和线程都是操作系统的概念。进程是应用程序的执行实例,每个进程是由私有的虚拟地址空间、代码、数据和其它各种系统资源组成,进程在运行过程中创建的资源随着进程的终止而被销毁,所使用的系统资源在进程终止时被释放或关闭。   线程是进程内部的一个执行单元。系统创建好进程后,实际上就启动执行了该进程的主执行线程,主执行线程以函数地址形式,比如说main或WinMain函数,将程序的启动点提供给Windows系统。主执行线程终止了,进程也就随之终止。   每一个进程至少有一个主执行线程,它无需由用户去主动创建,是由系统自动创建的。用户根据需要在应用程序中创建其它线程,多个线程并发地运行于同一个进程中。一个进程中的所有线程都在该进程的虚拟地址空间中,共同使用这些虚拟地址空间、全局变量和系统资源,所以线程间的通讯非常方便,多线程技术的应用也较为广泛。   多线程可以实现并行处理,避免了某项任务长时间占用CPU时间。要说明的一点是,目前大多数的计算机都是单处理器(CPU)的,为了运行所有这些线程,操作系统为每个独立线程安排一些CPU时间,操作系统以轮换方式向线程提供时间片,这就给人一种假象,好象这些线程都在同时运行。由此可见,如果两个非常活跃的线程为了抢夺对CPU的控制权,在线程切换时会消耗很多的CPU资源,反而会降低系统的性能。这一点在多线程编程时应该注意。   Win32 SDK函数支持进行多线程的程序设计,并提供了操作系统原理中的各种同步、互斥和临界区等操作。Visual C++ 6.0中,使用MFC类库也实现了多线程的程序设计,使得多线程编程更加方便。 Win32 API对多线程编程的支持   Win32 提供了一系列的API函数来完成线程的创建、挂起、恢复、终结以及通信等工作。下面将选取其中的一些重要函数进行说明。 1、HANDLE CreateThread(LPSECURITY_ATTRIBUTES lpThreadAttributes, ...

继续 ›

分类: 多核技术博客征文专栏

多线程编程要点

作者: byxdaz (2 篇文章) 日期: 九月 23, 2009 在 4:02 下午
评论 (3)

线程是进程的一条执行路径,它包含独立的堆栈和CPU寄存器状态,每个线程共享所有的进程资源,包括打开的文件、信号标识及动态分配的内存等。一个进程内的所有线程使用同一个地址空间,而这些线程的执行由系统调度程序控制,调度程序决定哪个线程可执行以及什么时候执行线程。线程有优先级别,优先权较低的线程必须等到优先权较高的线程执行完后再执行。在多处理器的机器上,调度程序可将多个线程放到不同的处理器上去运行,这样可使处理器任务平衡,并提高系统的运行效率。 Windows是一种多任务的操作系统,在Windows的一个进程内包含一个或多个线程。32位Windows环境下的Win32 API提供了多线程应用程序开发所需要的接口函数,而利用VC中提供的标准C库也可以开发多线程应用程序,相应的MFC类库封装了多线程编程的类,用户在开发时可根据应用程序的需要和特点选择相应的工具。为了使大家能全面地了解Windows多线程编程技术,本文将重点介绍Win32 API和MFC两种方式下如何编制多线程程序。 多线程编程在Win32方式下和MFC类库支持下的原理是一致的,进程的主线程在任何需要的时候都可以创建新的线程。当线程执行完后,自动终止线程; 当进程结束后,所有的线程都终止。所有活动的线程共享进程的资源,因此,在编程时需要考虑在多个线程访问同一资源时产生冲突的问题。当一个线程正在访问某进程对象,而另一个线程要改变该对象,就可能会产生错误的结果,编程时要解决这个冲突。 Win32 API下的多线程编程 Win32 API是Windows操作系统内核与应用程序之间的界面,它将内核提供的功能进行函数包装,应用程序通过调用相关函数而获得相应的系统功能。为了向应用程序提供多线程功能,Win32 API函数集中提供了一些处理多线程程序的函数集。直接用Win32 API进行程序设计具有很多优点: 基于Win32的应用程序执行代码小,运行效率高,但是它要求程序员编写的代码较多,且需要管理所有系统提供给程序的资源。用Win32 API直接编写程序要求程序员对Windows系统内核有一定的了解,会占用程序员很多时间对系统资源进行管理,因而程序员的工作效率降低。 1. ...

继续 ›

分类: 多核技术博客征文专栏

利用多核多线程进行程序优化

作者: chary8088 (1 篇文章) 日期: 九月 23, 2009 在 4:01 下午
评论 (4)

大家也许还记得 2005 年 3 月 C++ 大师 Herb Sutter 在 ...

继续 ›

分类: 多核技术博客征文专栏

多核编程技术 - 4

作者: erwincv (4 篇文章) 日期: 九月 9, 2009 在 3:07 下午
评论 (2)

4 每层中,对每个节点建立barrel,为了达到负载均衡,通常对任务进行排序,np难题。如:80,30,10,5,2.可以分两个线程,80,30+10+5+2. 动态任务调度模式本地队列->共享队列。从共享队列中“偷”任务来完成,太高负载均衡的目的。实现算法简介:快排。动态内存排序时,将总任务分为两部分,即两个子任务,放入分布式队列中。如此往复迭代,知道分解为足够小的串行任务,再执行。 /\ /\ /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ | | | \/ ...

继续 ›

分类: 多核技术博客征文专栏
历史记录 ›