• مشکی
  • سفید
  • سبز
  • آبی
  • قرمز
  • نارنجی
  • بنفش
  • طلایی
تعداد مطالب : 42209
تعداد نظرات : 4513
زمان آخرین مطلب : 4155روز قبل
کامپیوتر و اینترنت

گوگل کروم ۹ همینک در دسترس می‌باشد ، دو ماه بعد از عرضه قبلی و دو هفته بعد از ضرب الاجل خود گوگل . اینجا ۹ خصیصه وجود دارد که شما باید در این نسخه امتحان کنید :

۱٫ الان وب‌جی‌‍‌ال (WebGL) به صورت پیش‌فرض در گوگل‌کروم فعال است و شما می‌توانید  کارکردهای تری‌دی وب را از گالری گوگل امتحان کنید . بادی بروزر (Body Browser) ، یک گوگل ارس برای بدن انسان ، و همچنین آکواریم وب‌جی‌ال را را ازدست ندهید .


۲٫ گوگل اینستنت (Google Instant) الان با نوار آدرس کروم یکپارچه شده است ، اما این خصیصه برای همه نیست به این دلیل که صفحات وب را به طور اتوماتیک آن طور که شما تایپ می‌کنید بارگذاری می‌کند . با طور پیش‌فرض غیرفعال است ، بنا برایم شما بایست برای فعال کردن آن گزینه “فعالسازی اینستنت جهت جستجو و بررسی سریعتر” را در قسمت دیالوگ آپشن تیک بزنید .

۳٫ کلود پرینت (Cloud Print) را می‌توان اگر از ویندوز استفاده می‌کنید از قسمت گزینه‌ها > زیر دودکش فعال کنید . این خصیصه به شما این امکان را می‌دهد که از وسیله‌ای که مستقیما نمی‌تواند با پرینترها ارتباط برقرار کند پرینت کنید . دو برنامه نخستی که از کلودپرینت استفاده می‌کنند نسخه تلفن همراه جی‌میل و گوگل‌داکس می‌باشند .

۴٫ کروم از فایل‌های وب‌پی (WebP) پشتیبانی می‌کند . وب‌پی یک فرمت جدید تصویر می باشد که توسط گوگل ایجاد شده‌است و امتیاز اصلی آن اینست که تراکم بهتری را ارئه می‌دهد . “تیم ما بر روی بهبود تراکم تصاویر پر‌اتلاف که درصد بالایی از تصاویر موجود در شبکه را تشکیل‌ می‌دهند تمرکز کرد . برای بهبود تراکمی که فرمت جی‌پی‌ای‌جی (JPEG) فراهم می‌کند ، ما از یک متراکم ساز تصویر که بر اساس کدک وی‌پی‌۸ (VP8) می‌باشد و گوگل  در ماه می ۲۰۱۰ آن را اپن‌سورس کرد استفاده کردیم .” اینجا یک مثال برای تصویر وب‌پی وجود دارد .

۵٫ بر روی دکمه گسترش (extension) نزدیک به نوار آدرس راست کلیک کنید و گزینه “Hide button” را انتخاب کنید . زمانی که نظرتان عوض می‌شود ، به قسمت ابزار(Tools) > گسترش (Extension) بروید و بر روی گزینه “Show button” نزدیک به گسترش مربوطه کلیک کنید .

۶٫ بر‌ روی دسکتاپ میانبرهایی برای برنامهرنامههای وب خود ایجاد کنید : بر روی یک برنامه در یک صفحه جدید راست کلیک کنید و گزینه “ایجاد میانبر” (create shortcut) را انتخاب کنید . شما همچنین اگر از ویندوز استفاده می کنید می‌توانید میانبرها را به استارت‌منو و میله شروع سریع (Quick Lunch Bar) اضافه کنید .

۷٫ برنامه‌های  وب را در یک پنجره جدید آغاز کنید . بر روی یک برنامه راست کلیک کنید و گزینه “open as window” را انتخاب کیند .

۸٫ گسترش‌هایی را نصب کنید که منوهای گزینه‌های سفارشی را به تصاویر اضافه می‌کند . برای مثال ، کلیپ ایت گود (Clip it Good) را برای آپلود هر تصویری از یک صفحه وب به آلبوم‌های وب پیکاسو ، نصب کنید .

۹٫ گسترش‌هایی نصب کنید که از امنی‌باکس ای‌پی‌آی (Omnibox API) برای هماهنگی کلمات‌کلیدی با موتورهای جستجوی جدید استفاده می‌کند . به عنوان مثال ، گسترش دی‌او‌آی ریسلور (DOI Resolver) را نصب کنید و در نوار آدرس  doi 10.1205/096030802760309188 را تایپ کنید . این گسترش یک موتور جستجوی جدید ایجاد کرد و آن را با کلمه کلیدی دی‌او‌آی (doi) هماهنگ کرد .

گویا آی‌تی
پنج شنبه 12/8/1390 - 14:52
کامپیوتر و اینترنت

آیا تا حالا برایتان پیش آمده است که بخواهید از چیزی پرینت بگیرید ولی راهی برای انجام آن نیافته باشید؟ گاهی اوقات پرینت گرفتن کار سختی می­شود، خصوصا اگر پرینتر خراب شده باشد، جوهر یا کاغذ آن تمام شود یا اذیتتان کند. یا برخی اوقات، شما وقت کافی ندارید، مثل وقتی که صبح دیر به کارتان می­رسید. خوب خواهد بود اگر در حالی که در مسیر محل کارتان حرکت می­کنید راه سریع و آسانی برای پرینت گرفتن داشته باشید.

گوگل به تازگی این کار را از طریق “جیمیل برای موبایل” و برنامه Cloud Print امکانپذیر کرده است. این ابزار امکان پرینت گرفتن از روی هرگونه وسیله، سیستم عامل، یا مرورگری را بدون نیاز به نصب درایورها فراهم می­سازد، و یک ناجی است. در این مطلب من به شما نحوه انجام تنظیمات و بهره بردن از مزیتهای این سرویس چاپ آسان را نشان خواهم داد.

Cloud Print گوگل چیست؟

ابزار Cloud Print کمپانی گوگل با ارائه امکان پرینت گرفتن از برنامه­های فعال Cloud Print روی هرگونه کامپیوتر و تلفن هوشمندی بر روی چاپگرتان کار پرینت را شهودی­تر، قابل دسترسی­تر و مفیدتر می­سازد.

منظور از “برنامه­های فعال”، استفاده از مرورگر کروم کمپانی گوگل است. شما برای ارتباط پرینترتان به ابزار Cloud Print نیاز به نصب جدیدترین ویرایش بتای کروم روی یک کامپیوتر که به یک چاپگر متصل است دارید. اگر در حال حاضر از یک ویرایش کروم استفاده می­کنید و از صحت نسخه آن اطمینان ندارید، نگران نباشید. تنها کافیست گامهای بعدی را پیگیری نمایید و اگر به مشکلی برخوردید متوجه خواهید شد که نیاز به به­روزرسانی دارید.

من چطور می­توانم استفاده از این سرویس پرینت را شروع کنم؟

برای شروع، اولین کاری که لازم است انجام دهید ارتباط پرینترتان به ابزار Cloud Print گوگل است. در حال حاضر برای این گام لازم است که یک ویندوز کامپیوتر شخصی (ایکس­پی، ویستا، یا ۷) داشته باشید، ولی احتمالا به زودی این ابزار از سیستمهای عامل لینوکس و مکینتاش نیز پشتیبانی خواهد کرد.

شما برای اتصال پرینترهای محلی به Cloud Print باید اتصال­دهنده­ها به کروم را فعال کنید. به منظور انجام این کار، مرورگر کرومتان را باز کنید، روی آیکون آچار در گوشه بالای سمت راست کلیک نمایید، و “گزینه­ها (options)” را انتخاب نمایید.

سپس، برگه under the Hood را ببینید و به پایین بروید تا به قسمت “Google Cloud Print” برسید. روی “sign in to Google Cloud Print” کلیک کنید، یک کادر محاوره­ای ظاهر خواهد شد که از شما می­خواهد تا وارد حساب کاربری­تان در گوگل شوید. به محض ورود به حساب، Cloud Print فعال خواهد شد.

پس از ورود، شما یک صفحه تایید خواهید دید که از شما می­خواهد که (اگر مایلید) یک صفحه آزمایشی را پرینت بگیرید یا روی OK کلیک کنید تا کار ادامه یابد.

گزینه­های در دسترس شما در برگه Under the Hood اکنون باید شامل دو گزینه جدید باشد: Disable Google Cloud Print و Manage Print Settings…

حالا همه چیز تنظیم شده است، شما می­توانید از موبایلتان پرینت بگیرید. کافیست از مرورگر آی­فون یا اندرویدتان به جیمیل بروید، ایمیلی که خواهان پرینت از آن هستید را انتخاب نمایید، و عبارت Print را از منوی کشویی در گوشه بالای سمت راست انتخاب کنید تا از استفاده نمایید. شما می­توانید ضمائم ایمیل، مانند پی­دی­اف­ها یا اسناد، را با کلیک روی لینک Print که در کنار آنها نمایان می­شود چاپ کنید.

سخن پایانی

گوگل به تازگی اعلام کرده است که آنها این قابلیت را برای زبان انگلیسی ایالات متحده از دسترس خارج کرده­اند، پس اگر در حال حاضر این امکان را موجود نمی­بینید بنا به توصیه آنها بعدا دوباره فعال شدن یا نشدنش را چک نمایید. یک مرکز پشتیبانی Cloud Print نیز وجود دارد که اگر درباره ماهیت دقیق Cloud Print گوگل یا روش اتصال به آن کنجکاو هستید می­توان به آنجا مراجعه نمایید. این صفحه منابع بسیاری را در دسترس قرار می­دهد، از جمله مطالب کمکی، اطلاعات اساسی، و تکنیکهای رفع اشکال در مواردی که به هرگونه مشکل احتمالی در هنگام تلاش برای پرینت گرفتن، یا تنظیمات پرینت روی چاپگرهای مختلف برخوردید.

به نظر من امکان پرینت گرفتن در حال پرواز واقعا می­تواند مفید باشد. اگر شما این امکان را روی یک پرینتر در اداره یا منزلتان فعال نمایید، خواهید توانست به گونه­ای موثر چیزهای مهمی را از روی تلفن پرینت بگیرید و وقتی به آنجا رسیدید منتظر و در دسترستان باشد. اگر کاری فوری و عجله­ای داشته باشید این ابزار حتما یاری­رسان خواهد بود. نظرتان درباره Cloud Print گوگل چیست؟ آیا از تلفنتان پرینت خواهید گرفت؟

گویا آی‌تی
پنج شنبه 12/8/1390 - 14:51
کامپیوتر و اینترنت

وبسایت testking تصویری را منتشر کرده است که سیر تکاملی مرورگرهای وب را از سال ۱۹۹۴ که اولین مرورگر وب معرفی شد تا به امروز نشان می‌دهد. برای مشاهده‌ی این تصویر فوق‌العاده و مطالعه‌ی توضیحاتی پیرامون آن با مجله‌ی اینترنتی گویا آی‌تی همراه باشید.

برای مشاهده‌ی بهتر جزئیات و دیدن تصویر در سایز اصلی بر روی آن کلیک نمایید.

حجم تصویر بالاست. لطفا تا بارگذاری کامل آن شکیبا باشید.

سیر تکاملی مرورگرهای وب در طول تاریخ

سیر تکاملی مرورگرهای وب در طول تاریخ

 

برخی از جزئیات موجود در این تصویر:

۱- ضخامت نوارهای رنگی اطراف نام مرورگر، به معنای محبوبیت مرورگر در هر بازه‌ی زمانی است.

۲- اولین و قدیمی‌ترین مرورگر وب، مرورگر NETSCAPE است که در سال ۱۹۹۴ عرضه شد.

۳- مرورگر Opera چند ماه پس از نت اسکیپ در سال ۱۹۹۵ انتشار یافت.

۴- پس از اپرا، در ماه‌های آخر سال ۱۹۹۵ مرورگر Internet Explorer شرکت مایکروسافت متولد شد.

۵- مرورگر POENIX FireBird در سال ۲۰۰۲ به عنوان چهارمین مرورگر دنیای وب معرفی شد.

۶- کمی پس از پرنده‌ی آتشین فونیکس، مرورگر Safari از شرکت Apple رونمایی شد.

۷- در سال ۲۰۰۴، پرنده‌ی آتشین فونیکس به روباه آتشین تبدیل شد و FireFox چشم به جهان وب گشود.

۸- نسخه‌ی ۷ از اینترنت اکسپلورر، نسخه‌ی ۹ که آخرین نسخه از مرورگر نت اسکیپ به شمار می‌رفت، نسخه‌ی ۳ سافاری و نسخه ۳ روباه آتشین منتشر شده بودند که مرورگر جدیدی با نام Google Chrome در سال ۲۰۰۸ رسما در این رقابت اعلام حضور کرد.

۹- امروز، نسخه‌ی ۱۱ اپرا، نسخه ۵ سافاری، نسخه ۱۰ کروم، نسخه ۴ فایرفاکس و نسخه ۹ اینترنت اکسپلورر برای کاربران اینترنت قابل دریافت است.

۱۰- برای اولین بار، IE از گواهینامه‌های SSL استفاده کرد.

۱۱- برای اولین بار، NetScape از جاوا اسکریپت پشتیبانی کرد.

۱۲- برای اولین بار، IE از CSS‌ استفاده کرد.

۱۳- برای اولین بار، NetScape از flash پشتیبانی کرد.

۱۴- برای اولین بار، NetScape از رمزگذاری ۱۲۸ بیتی برای محافظت از داده‌ها استفاده کرد.

۱۵- برای اولین بار، IE از XML پشتیبانی کرد.

۱۶- برای اولین بار، Opera امکان آپلود فایل را به کاربرانش داد.

۱۷- برای اولین بار، NetScape از تب‌ها استفاده کرد.

۱۸- برای اولین بار، NetScape از سیستم بلوکه کردن پنجره‌های Popup استفاده کرد.

۱۹- برای اولین بار، NetScape امکان مدیریت دانلود را برای کاربرانش فراهم کرد.

۲۰- برای اولین بار، Safari‌ امکان اضافه کردن Bookmark ها از جایی دیگر به خود را فراهم کرد.

۲۱- پس از ظهور فایرفاکس، هسته‌ی NetScape تغییر کرد و بر پایه‌ی فایرفاکس طراحی شد.

۲۲- برای اولین بار، FireFox امکان گشت و گذار به صورت Offline را فراهم کرد.

۲۳- برای اولین بار، سافاری از RSS‌ها پشتیبانی کرد و یک فیدخوان ایجاد نمود.

۲۴- برای اولین بار، IE از Fishing Filter ها استفاده کرد.

۲۵- برای اولین بار، روباه آتشین از برنامه‌ی مدیریت Pluginهای داخلی استفاده کرد.

۲۶- برای اولین بار، Chrome از HTML5 پشتیبانی کرد.

۲۷- برای اولین بار، روباه آتشین امکان مرور وب به صورت مخفی و خصوصی را فراهم نمود.

پنج شنبه 12/8/1390 - 14:49
کامپیوتر و اینترنت

اگرچه هنگام گشت و گذار در وب بیشتر از مرورگر کروم برای رسیدگی به کارهایم استفاده می‌کنم٬ اما همیشه فایرفاکس را دوست داشته‌ام و هنوز گاه گداری از این مرورگر استفاده می‌کنم. یکی از دلایل این امر افزونه‌های خوبی است که برای فایرفاکس وجود دارد.

یکی از مشخصه‌های جالب فایرفاکس ۴ ٬ که در نسخه‌های پیشین این مرورگر وجود نداشت٬ این است که از افزونه‌های بدون باز‌آغازی پشتیبانی می‌کند. نمی‌دانید منظور از افزونه‌‌های بدون باز‌آغازی چیست؟ دقیقا همان چیزی است که نامش شرح می‌دهد. افزونه‌های بدون بازآغازی را می‌توان بدون نیاز به بستن همه تب‌ها و راه‌اندازی مجدد فایرفاکس٬ نصب کرد٬ پاک کرد٬ غیر فعال و فعال نمود و ارتقا داد.

در این مقاله٬ نگاهی به بهترین افزونه‌های بدون شروع مجدد فایرفاکس ۴ می‌اندازم تا بتوانید از آن‌ها در وبگردی خود استفاده کنید.

۱٫ Mozilla Labs: Lab Kit

افزونه Mozilla Labs Lab Kit به صورت خودکار بررسی می‌کند که آیا Mozilla Labs افزونه جدیدی ارائه کرده یا خیر. در این افزونه٬ قابلیتی به نام F1 وجود دارد که به کاربر اجازه می‌دهد از درون مرورگر و به سرعت و با امنیت بالا٬ لینک‌های مورد علاقه خود را به اشتراک بگذارد. قابلیت Find Suggest که هنگام جستجو به کاربر افزونه‌هایی را توصیه‌ می‌کند.  قابلیت Instant Preview که هنگام انتخاب صفحه‌ها در نوار آدرس پیش‌نمایشی از آن‌ها ارائه می‌دهد و قابلیت Speak Words که به کاربر اجازه می‌دهد با تایپ تنها یک حرف در نوار آدرس به هرجا که تمایل داشت برود.

۲٫ Mozilla Labs: Home Dash

افزونه Home Dash با حذف نوار آدرس٬ نوار جستجو و تب‌ها به کاربر اجازه می‌دهد که از تمام فضای صفحه برای تماشای محتوای وب بهره ببرد. نگران نباشید٬ هنوز می‌توانید در کنار داشبورد٬ از قابلیت جستجو جهت یافتن سایت‌های پربازدید٬ تب‌ها٬ تاریخچه مرورگر و جستجو در اینترنت استفاده کنید.

۳٫ پنل GReader

اگر برای کسب اطلاعات به گوگل ریدر تکیه دارید٬ افزونه GReader Panel  در حکم یک کلید برای شما خواهد بود. این افزونه تقریبا همان کاری را می‌کند که از آن انتظار می‌رود: همه فیدهایتان را به صورت یک صفحه پاپ آپ نشان می‌دهد تا بازدید از آن‌ها ساده‌تر شود. اگر هنوز گوگل ریدر خود را تنظیم نکرده‌اید٬ حالا وقتش است که دستی روی فهرست فیدهای خود بکشید و اطلاعات مفیدی به آن اضافه کنید.

۴٫ کنترل از راه دور Grooveshark

 

من خود را یک طرفدار دو آتشه Grooveshark می‌دانم. این افزونه٬ که به شکل یک کنترل از راه دور است٬ عملکرد فوق‌العاده‌ای دارد زیرا اجازه می‌دهد در هر صفحه وبی که هستید نحوه پخش Grooveshark خود را کنترل کنید و دیگر مجبور نیستید هر بار که می‌خواهید آهنگی را رد کنید به تب Grooveshark بروید.

۵٫ Tab Badge

 

افزونه Tab Badge علامت کوچکی به تب‌هایتان اضافه می‌کند تا هروقت پیام جدیدی در فیس‌بوک داشتید و یا ایمیل جدیدی دریافت کردید باخبر شوید. همچنین٬ این علامت زمانی که تب‌ها قفل‌ شده باشند نیز قابل مشاهده است که به این ترتیب٬ هرگاه خبر جدیدی شد به موضوع پی می‌برید. مشابه این ابزار در قابلیت‌های lab جی‌میل نیز وجود دارد.

نتیجه‌گیری

نام دیگر افزونه‌های بدون شروع مجدد  که فراموش کردم در مقدمه ذکر کردم٬ افزونه‌های خود راه‌انداز(bootstrapped) است. افزونه‌های خود راه‌انداز گونه خاصی از افزونه‌ها هستند که به جای استفاده از جایگذاشت‌ها به منظور اعمال رابط کاربری خود روی برنامه٬ به شکل برنامه‌نویسی‌شده‌ای خود را وارد برنامه می‌کنند. به این ترتیب٬ دیگری نیازی به راه‌اندازی مجدد مرورگر وجود ندارد. در اینجا می‌توانید بیشتر با نحوه کار این افزونه‌ها آشنا شوید. همچنین٬ به طور مرتب به بقیه مقاله‌های ما درباره فایرفاکس سر بزنید.

آیا افزونه بدون شروع مجدد خاصی مدنظرتان هست که تمایل داشته باشید با دیگران به اشتراک بگذارید؟

http://www.gooyait.com
پنج شنبه 12/8/1390 - 14:47
کامپیوتر و اینترنت

جاسوسان وب هر روز به شکل مخفیانه‌تری به کار خود ادامه می‌دهند تا با دسترسی به تاریخچه‌ (history) مرورگرهای افراد کشف کنند که چه سایت‌هایی مشاهده شده است.

به گزارش پایگاه خبری فناوری اطلاعات برسام و به نقل از ایسنا،  بسیاری از شرکت‌هایی که سایت‌های آن‌ها به عنوان سایت‌هایی برای انجام این نوع فعالیت‌های جاسوسی شناسایی شده‌اند، بلافاصله هر نوع آگاهی در این زمینه را تکذیب کرده و فعالیت‌های جاسوسی را تقبیح کرده‌اند.

حتی اگر صاحبان سایت‌های جاسوسی از فعالیت سایت‌های خود آگاه نباشند، کاربران ناآگاه این سایت‌ها چه باید بکنند؟ یکی از کارها این است که منتظر بمانند تا دولت اقدامات لازم را انجام دهد، یا اینکه می‌توانند به صنعت تبلیغات آنلاین اعتماد کند تا خود پلیس خود باشند. اما به نظر می‌آید بهتر باشد کنترل همه چیز را در دست خود نگاه دارند.

چهار راه برای کم کردن احتمال ضبط شدن عادات مرور توسط سایت‌ها به نقل از بخش امنیتی مرکز ماهر به شرح زیر است:

۱- باید آگهی‌های تبلیغاتی و سوپرکوکی‌ها را پیش از دانلود شدن مسدود کرد؛ در ماه می گذشته، شرکت‌های مایکروسافت و Adobe اظهار کردند که حذف کردن کوکی‌ها در IE8 و IE9، کوکی‌های قدیمی Flash یا اشیای اشتراکی محلی (LSO) را نیز حذف خواهند کرد.

افزونه‌های فایرفاکس و کروم یک گام پیش‌تر رفته و اجازه می‌دهند که از دانلود شدن LSOها و سایر فایل‌های ردیابی همراه با محتوای یک صفحه وب، جلوگیری کرد. برای مثال افزونه رایگان NoScript برای فایرفاکس اجازه می‌دهد Flash و جاوا اسکریپت برای هر سایت و هر منبع به طور جداگانه مسدود شود.

افزونه رایگان BetterPrivacy برای فایرفاکس،اجازه می‌دهد تصمیم بگیریم که کدام کوکی‌های Flash مجوز داشته باشند یا اینکه حذف گردند.

یک ابزار دیگر محرمانگی وب که برای هر دو مرورگر فایرفاکس و گوگل کروم در دسترس است، AdBlockPlus است که نه تنها آگهی‌های تبلیغاتی سایت‌ها را حذف می‌کند، بلکه اجازه می‌دهد که فیلتر آن را برای دامنه‌های بدافزاری شناخته شده و تبلیغات به شکل دلخواه تغییر داد.

۲- مرورگر باید طوری تنظیم شود که هنگام خروج، تاریخچه، cache و کوکی‌ها پاک شود؛ دلایل خوبی برای حفظ تاریخچه، cache و کوکی‌های مرورگر وجود دارد؛ به عنوان مثال استفاده از تاریخچه مرورگر باعث می‌شود که فعالیت‌های آنلاین ساده تر انجام بگیرد؛ cache بزرگ مرورگر به صفحاتی که برای بار دوم مشاهده می‌شود اجازه می‌دهد که سریع‌تر بارگذاری شود، کوکی‌ها نیز به سایت‌ها اجازه می‌دهند که پیشنهاداتی را بر اساس آنچه که از کاربر می‌دانند مطرح سازند.

اما شاید بهتر باشد صفحاتی را که قصد بازگشت به آن‌ها وجود دارد، bookmark کرد؛ نباید نگران این بود صفحاتی که برای بار چندم مشاهده می‌شود، کمی کندتر بارگذاری شود و پیشنهادات شخصی سایت‌ها نیز نباید برای کاربران مهم باشد؛ در کل کاری که کاربر برروی وب انجام می‌دهد به هیچکس به جز خود او مربوط نیست.

می‌توان فایرفاکس را طوری تنظیم کرد که در مورد مرور خصوصی (Private Browsing) بماند تا به سایت‌ها اطلاع دهد که کاربر تمایلی به ردیابی و حفظ تاریخچه مرورگر ندارد، در این راستا باید در سربرگ Security در پنجره گفت‌وگوی Firefox Options، علامت مربوط به Remember passwords for sites را حذف کرد.

برای تنظیم مرورگر کروم نیز به طوری که داده‌ها را در هنگام خروج پاک کند، باید برروی آیکون wrench در گوشه بالای سمت راست کلیک و Options > Under the Hood > Content Settings را انتخاب کرد و کنار Clear cookies and other site and plug-in data when I close my browser علامت زد و برای مشاهده داده‌های شخصی که توسط مرورگر ذخیره می‌شود، می‌توان برروی All cookies and site data کلیک کرد.

در مرورگر Internet Explorer هم باید برروی آیکون gear در گوشه بالای سمت راست (یا Tools در منوی استاندارد) کلیک کرده و Internet options > General را انتخاب کرد و برای پاک کردن فرم‌های وب به طور اتوماتیک باید کنار Delete browsing history on exit علامت زد تا برروی کوکی‌ها، cache، کلمات عبور ذخیره شده، اعمال شود.

۳- باید هر زمان که کار با یک سرویس وب تمام می‌شود، Sign out کرد؛ Sign in باقی ماندن در جی‌میل، فیس‌بوک و سایر سرویس‌های وب که اغلب با استفاده از یک رایانه واحد از آن‌ها استفاده می‌شود، کار را بسیار ساده کرده است.

قطعا بسیاری از افراد ضبط فعالیت‌های وب خود توسط گوگل را کمک کننده می‌دانند. ولی اگر کاربری ترجیح می‌دهد تا عادات مرور خود را در اختیار دیگران قرار ندهد، راه‌حل ساده این است هر زمان که به‌طور فعال در حال استفاده از سرویس خاصی نیست، sign out کند.

۴- یکی دیگر از راه‌های جلوگیری از ردیابی ارسال و دریافت ای‌میل از حساب‌های Webmail مبتنی بر یک برنامه ای‌میل دسکتاپی است؛ یک راه مناسب برای استفاده از ویژگی‌های برنامه‌های ای‌میل دسکتاپی مانند Outlook و نیز افزایش محرمانگی ای‌میل‌ها این است که ای‌میل‌های دریافتی وب مانند جی‌میل را برروی یک حساب IMAP یا POP3 فوروارد کرد.

مرکز اطلاعات محرمانه الکترونیکی (EPIC) ادعا می‌کند که جی‌میل با استخراج اطلاعات از ای‌میل‌ها، به محرمانگی و حریم خصوصی کسانی که از طریق سرویس‌های دیگر به آدرس‌های جی‌میل پیغام ارسال می‌کنند، تجاوز می‌کند.

EPIC هم‌چنین سیاست ضبط داده‌های جی‌میل را کشف کرده و این کار را یک تهدید برای حریم خصوصی افراد به حساب می‌آورد.

زمانی که ای‌میل‌ها از یک سرویس Webmail به یک کلاینت میل دسکتاپی ای‌میل فوروارد می‌شود، هم‌چنان محتویات پیغام‌های دریافتی پیش از فوروارد شدن ای‌میل توسط ربات‌های گوگل اسکن می‌شود ولی حداقل می‌توان از حساب ای‌میل دسکتاپی به این پیغام‌ها پاسخ داد و در نتیجه پاسخ قابل اسکن کردن نخواهد بود.

البته می‌توان HTTPS را برای تمامی انتقالات جی‌میل فعال کرد، ولی برای افراد و سازمان‌هایی که داده‌های محرمانه یا حساس را ارسال و دریافت می‌کنند، سیستم‌های ای‌میل IMAP و POP3 امن‌تر از سرویس‌های Webmail هستند.

پنج شنبه 12/8/1390 - 14:46
کامپیوتر و اینترنت

با انتشار اخبار جعل یکی از گواهینامه‌های امنیتی و در معرض دید قرار گرفتن اطلاعات کاربران سرویس‌هایی همچون جی‌میل، کاربران بسیار زیادی با اهمیت گواهینامه‌های امنیتی آشنا شدند و هنگام گشت‌وگذارهای اینترنتی خود و ورود به سایت‌های بانک‌ها، انجام پرداخت‌های آنلاین، ورود به ایمیل شخصی و… دقت می‌کنند تا با ورود به صفحات رمزنگاری شده که با عبارت https آغاز می‌شوند، امنیت خود را چند برابر کنند.

 

به گزارش پایگاه خبری فناوری اطلاعات برسام و به نقل از شبکه فن آوری اطلاعات ایران، متاسفانه یکی از تغییراتی که در نسخه ۷ مرورگر فایرفاکس مشاهده می‌شود عدم نمایش کامل آدرس صفحات وب در نوار آدرس است.

به‌این ترتیب عبارت http یا https در ابتدای آدرس صفحات پنهان شده و کاربران نمی‌توانند براحتی مشاهده کنندکه صفحه به‌نمایش درآمده در حالت امن قرار دارد یا معمولی.

چنانچه شما هم مثل بسیاری از کاربران دیگر از سراسر دنیا قصد دارید پنهان‌سازی این بخش از آدرس را غیرفعال سازید، می‌توانید از این ترفند استفاده نمایید.

برای این کار:

۱ـ ابتدا نرم‌افزار فایرفاکس را اجرا کرده سپس در بخش آدرس، عبارت about:config را وارد کنید.

۲ـ در پنجره هشدار به نمایش درآمده روی گزینه !I’ll be careful, I promise کلیک کنید تا صفحه تنظیمات مرورگر برای شما نمایش داده شود.

۳ـ در کادر مقابل (ترفندسیتی) عبارت Filter، عبارت browser.urlbar.trimURLs را وارد کنید و کلید اینتر را فشار دهید.

۴ـ روی نتیجه به‌نمایش درآمده ۲ بار کلیک چپ ماوس را فشار دهید تا مقدار آن به False تغییر کند. کار تمام است از این پس آدرس ها به طور کامل در مرورگر قابل مشاهده هستند!

توجه: هنگامی که مقدار این گزینه روی حالت False باشد، پنهان‌سازی آدرس‌ها غیرفعال بوده و هنگامی که این مقدار برابر با True باشد عبارت http یا https از ابتدای نشانی سایت‌ها پنهان می‌شود.

پنج شنبه 12/8/1390 - 14:44
کامپیوتر و اینترنت

گوگل کروم مرورگر نسبتا”نوپایی است و در قیاس با سایر مرورگرها جوانترین آنها محسوب می شود .

به گزارش پایگاه خبری فناوری اطلاعات برسام و به نقل از وب شهر، اما موفقیت آن در کسب سهم بیشتری از کاربران و رشد روز افزون استفاده از آن نشان می دهد موفقیت در رقابت فقط به توان و کیفیت و کارآیی بستگی دارد و از طرف دیگر نشان میدهد که کاربران اینترنت به خوبی می فهمند و اگر گزینه بهتری پیدا کنند مهاجرت می کنند.

اما گوگل کروم چیست؟

گوگل در زمانی که تصمیم به توسعه مرورگر گرفت یک انتخاب هوشمندانه کرد. انتخابی که اکنون یکی از پایه های اساسی موفقیت کروم محسوب می شود. این تصمیم صحیح انتخاب موتور وب کیت برای پردازش محتوا بود.

وب کیت موتوری بسیار عالی برای پردازش کدهای نمایش سایتها است و اکنون با اختلاف محسوسی سریعترین موتور محتوای وب است.

وب کیت در اوایل ۲۰۰۳ توسط اپل برای مرورگر سافاری طراحی شد اما به زودی به صورت اوپن سورس در اختیار همه قرار گرفت. شاید وب کیت تا همین چند ماه قبل ایرادهای در نمایش برخی سایتها داشت اما اکنون شاید با قاطعیت بتوان گفت مشکل انطباقی با سایتها ندارد.

اما آیا تنها عامل موفقیت کروم این بود؟ اگر چنین بود که چرا سافاری که توسط اپل برای کاربران ویندوز ارایه شده است اینقدر موفق نشد؟

شاخصه مهم دیگری که کروم را انتخاب ایده آلی کرده است سرعت خود برنامه است. یعنی نه تنها موتور وب کیت صفحات وب را سریع و بی نقص باز و بار می کند بلکه خود برنامه کروم به طرز عالی بهینه شده طراحی شده است.

وجود Garbage Collector بسیار مناسب در کروم موجب شده که این مرورگر به سرعت منابعی که نیاز ندارد را آزاد کند.

در نقطه مقابل شاید مصرف رم و پردازنده بالا توسط فایرفاکس به دلایلی مختلفی بزرگترین ضعف این مرورگر است تا جاییکه حتی نسخه هفتم فایرفاکس هم با آن همه تبلیغات و سر و صدا کماکان هم کند است و هم تشنه خوردن منابع سخت افزاری!!!

برتری دیگر کروم طراحی مستقل هسته برنامه از صفحات باز و بار شده وب است. در واقع کروم به بهترین وجه پیاده سازی ایده های کنترل دسترسی به منابع سخت افزاری است.

کروم تنها مرورگری است که کنترل داخلی که توسط خود مرورگر صورت میگیرد بر روی محتویات Tab های باز شده وب دارد. کروم به خودی خود دارای Task Manager است.

برتری دیگر کروم وجود یک Sandbox قوی است. اگرچه اکنون همه مرورگرهای مدرن دارای قابلیت سندباکس برای ایمن سازی کاربران از خطرات وب هستند اما کروم از اولین مرورگرهایی بود که به این قابلیت مجهز بود و اکنون نیز سندباکس آن در بلوغ مناسبی به سر میبرد.

شاید در محیط ویندوز کروم بهترین و سریعترین مرورگر موجود در اختیار کاربران باشد. مرورگری که اگر چه بر پایه وب کیت طراحی شد اما نشان داد که چقدر دست گوگل برای رقابت با بقیه باز است.

اما آنچه به نظر نگارنده ایراد کروم است مدولار نبودن اینترفیس آن است. شاید در بین مرورگرها Opera پیشرو ارایه اینترفیس مدولار که هر گونه خواستی بتوانی کاستومایز کنی بوده است.

اگر این ایراد کروم نیز در آینده برطرف شود بدون شک یک گام بزرگ برای آینده مرورگرها محسوب خواهد شد.

ایراد دیگری که البته شامل حال ایرانیان می شود بسته بودن گوگل بر روی کاربران ایرانی است. با این حال همه جا می توانید به راحتی نسخه نصب آفلاین یا Offline installer آن را پیدا کنید.

ضعف دیگری که به کروم وارد است شماره دهی تند تند به نسخه های آن است که قبلا”اینجا بحث کرده بودم.

اگرچه گوگل معتقد است با این کار کاربران به سرعت احساس می کنند مرورگرشان کهنه شده و به فکر ارتقا می افتند!

پنج شنبه 12/8/1390 - 14:44
آموزش و تحقيقات

اکنون که با مفاهیم مطرح در برنامه‌سازی موازی و هم‌روند کردن الگوریتم‌ها آشنا شده‌اید،  بهتر است با یک زبان و ابزار ساده به تمرین و یادگیری برنامه‌نویسی موازی بپردازیم. در این مقاله مفسر مالتی‌پاسکال را انتخاب‌کرده‌ایم. همان‌طور که از نام این ابزار می‌توان دریافت، زبان مورد استفاده این مفسر، همان زبان پاسکال است که به دلیل پشتیبانی از برنامه‌نویسی چندپردازنده‌ای (Multi processor) و چندکامپیوتری (Multi computer)، مالتی‌پاسکال نام گرفته است. این ابزار توسط بروس لستر به عنوان پروژه تحقیقی در دپارتمان علوم کامپیوتر دانشگاه ماهاریشی طراحی شده که نرم‌افزاری کم حجم و ساده و در عین حال توانمند است که در خط فرمان اجرا می‌شود و به نصب نیازی ندارد. شما می‌توانید این برنامه را به‌طور مستقیم از این آدرس دریافت کنید. با داشتن یك پیش زمینه قبل از شروع کار با این زبان با آمادگی ذهنی کامل و نگرشی عمیق‌تر برنامه‌نویسی موازی را آغاز کنید. در ضمن به دلیل آن‌كه در این مقاله مفاهیم عمومی برنامه‌نویسی موازی مطرح شده است، حتی اگر در آینده قصد کار با مالتی پاسکال را ندارید، خواندن و درک کدهای موجود و توضیحات مربوطه می‌تواند در ایجاد زمینه‌ذهنی برای کار با هر زبان دیگر مفید واقع شود. به بیان دیگر، در اینجا انتخاب مالتی‌پاسکال به این دلیل بوده است که به واسطه آن، برخی مفاهیم مهم به صورت عملی بیان شود و مطرح کردن آن فقط برای برنامه‌نویسان علاقه‌مند به این زبان نیست. این مطلب یكی از مقالات بخش ویژه نشریه ماهنامه شبكه در شماره 115 با عنوان برنامه‎نویسی موازی می‌باشد. جهت دریافت این بخش ویژه به بخش پرونده‌های ویژه سایت مراجعه نمائید.

عملگر fork
واژه fork در لغت به معنای چنگال است. همان‌طور که از دسته چنگال چند شاخه موازی با هم منشعب می‌شود با استفاده از دستور fork نیز می‌توان دریک پردازه چند پردازش موازی ایجاد کرد و دلیل استفاده از این واژه نیز این قرابت مفهومی بوده است. همان‌طور که گفته شد، با استفاده از دستور forall می‌توان بدنه یک حلقه را با استفاده از پردازه‌های موازی اجرا کرد که در واقع تمام آن پردازه‌ها کد یکسانی را به صورت موازی اجرا می‌کنند. اما با استفاده از fork می‌توان یک پردازه ایجاد کرده و به آن هر کار دلخواهی را واگذار کنیم. با قرار گرفتن هر دستورالعمل بعد از fork، آن دستورالعمل در یک پردازه جدید به عنوان فرزند کارخود را به طور موازی با پدر خود آغاز خواهد کرد. فرم عمومی fork به این شکل است:



fork <statement>;

در این فرم <statement> می‌تواند هر دستورالعمل معتبری در مالتی‌پاسکال باشد که به صورت فرزند روی پردازنده دیگری اجرا شده و پردازش پدر اجرای خود را بلافاصله از دستورالعمل بعد از fork ادامه می‌دهد و دیگر در انتظار اتمام پردازش فرزند خود نمی‌ماند. به عنوان مثال، این قطعه کد را در نظر بگیرید‌:



{...}
x:=3*y;
fork for i:=1 to 100 do A[i]:=i;
z:=sort(p);

{...}


در این کد بعد از کامل شدن اجرای دستورالعمل انتساب برای متغیر x، یک پردازه جدید شامل دستورالعمل for ایجاد شده و به پردازنده دیگر سپرده می‌شود و در حالی که این پردازه کار خود را آغاز می‌کند، پردازه پدر، دستور انتساب به متغیر z را اجرا کرده و به طور موازی با فرزند خود، کار را ادامه می‌دهد. همچنین این امکان وجود دارد که فراخوانی یك روال را برای اجرای موازی به fork بدهیم.
به عنوان مثال‌:


{...}
fork normalize(A);
fork normalize(B);
fork sort(C);
{...}



خاتمه پردازش
واضح است که یک پردازه زمانی به پایان می‌رسد که به انتهای کد خود رسیده باشد. در دستور forall به دلیل آن‌كه تمام پردازه‌های فرزند قطعه کد یکسانی را اجرا می‌کنند، انتظار می‌رود که کار آن‌ها با هم تمام شود و پردازه‌ها خاتمه یابند. اما به دلیل وجود بعضی شرط‌ها در بدنه کد ممکن است کار یک پردازنده بیشتر از پردازنده دیگر شود. در بهترین حالت که فرض کنیم پردازنده‌ها همگی هم‌سرعت بوده‌اند و تعداد دستورالعمل‌های یکسانی را اجرا می‌کنند، بازهم وجود تغییرات ناچیز در سرعت اجرای برنامه‌ها و وجود برخی تفاوت‌های بسیار کوچک فیزیکی و همچنین تأثیرات محیطی موجب می‌شود که زمان‌های خاتمه اندکی با هم تمایز داشته باشند. دریک پردازه پدر هرگز دستور بعد از بدنه forall اجرا نمی‌شود، مگر این‌که تمام پردازه‌های فرزند که از آن forall متولد شده‌اند، خاتمه یابند. به این معنی که پردازه پدر در ابتدای خط بعدی بدنه forall به حالت تعلیق درمی‌آید تا این‌که تمام پردازه‌های فرزند ایجاد شده به پایان برسند. بنابراین، یک نوع همگام‌سازی ذاتی در دستور forall وجود دارد.این وضعیت برای fork به طور كامل متفاوت است. به این شکل که پردازه پدر بدون انتظار برای پایان یافتن پردازش فرزند، بلافاصله کار خود را ادامه خواهد داد. در صورتی که همگام‌سازی ذاتی forall برای ما مطلوب نباشد می‌توان با توجه به خصوصیت fork، دستورالعمل forall را بدون همگام‌سازی به این شکل پیاده سازی کرد‌:



for i:=1 to n do
  fork <statement>;


در این حلقه به ترتیب n پردازه ساخته و در هر یک کد یکسانی را که در <statement> واقع است، قرار می‌دهد. سپس حلقه for به پایان رسیده و پردازه پدر بدون آن‌كه برای اتمام پردازه‌ها معطل شود کار خود را از دستورات بعد از حلقه for ادامه می‌دهد. اما باید توجه داشت که با وجود این‌که پردازه پدر اجرای خود را ادامه می‌دهد، حتی اگر زودتر از فرزندان به انتهای کد خود برسد، نمی‌تواند خاتمه یابد مگر این‌که همه پردازه‌های فرزندش خاتمه یافته باشند. درغیر این‌صورت تا آن زمان به حالت تعلیق درمی‌آید و بلافاصله بعد از پایان کار فرزندان، پدر نیز خاتمه می‌یابد. بدیهی است که منطق برنامه‌ای که اجرای آن به این حالت برسد طوری خواهد بود که کار فرزندان و پدر کاملاً مستقل از هم باشند و پدر قرار نباشد از نتیجه کار فرزندان استفاده کند. زیرا در این صورت برنامه پدر باید جایی قبل از حداقل یک دستور پایانی خود، منتظر پایان فرزندان می‌ماند و بعد به اتمام می‌رسید، نه این‌که به اتمام برسد و بعد منتظر پایان فرزندان بماند. انتظار برای به پایان رسیدن فرزند حاصل از fork با دستور join  انجام می‌شود.

دستور join
ممکن است  قصد داشته باشیم كاری كنیم كه در یک برنامه بخواهیم پردازه پدر در نقطه‌ای منتظر اتمام یک یا تمام فرزندان حاصل از fork خود باشد. اگر پردازش پدر تنها یک فرزند fork داشته باشد، آن‌گاه استفاده از دستور join توسط پدر موجب می‌شود که در آن نقطه منتظر اتمام پردازه فرزند خود باشد و در صورتی که آن پردازه قبلاً به اتمام رسیده باشد، دستور join بی‌اثر بوده و بعد از رسیدن به آن بلافاصله کار را از دستور بعدی ادامه خواهد داد. مثالی از این دستور را در کد زیر مشاهده می‌کنید:



fork normalize(A);
for i:=1 to 10 do
    B[i]:=0;
join;

هر join دقیقاً منتظر پایان یک پردازه حاصل از fork می‌ماند. بنابراین، اگر در برنامه پدر چند fork داشته باشیم باید برای انتظار خاتمه آن‌ها از همان تعداد join استفاده کنیم. برای درک بهتر این مسئله بیایید دستور forall را با همان خصوصیت همگام‌سازی ذاتیش با استفاده از fork و join پیاده‌سازی کنیم:



for i:=1 to n do
    fork <statement>;
for i:=1 to n do
    join;


در این قطعه کد با هر تکرار حلقه اول یک پردازه تولید می‌شود و بعد از آن بلافاصله در اولین تکرار حلقه دوم برنامه منتظر خاتمه یکی از پردازه‌های فرزند می‌ماند و تا پایان نیافتن آن، تکرار دوم انجام نمی‌شود. با خاتمه هر فرزند یکی از تکرارهای حلقه for دوم انجام می‌شود و تنها زمانی حلقه for دوم به پایان رسیده و برنامه ادامه پیدا می‌کند که n پردازه فرزند حاصل از fork خاتمه یافته باشند.  این دقیقاً همان رفتاری است که در این دستور انجام می‌دهد:

 


forall i:=1 to n do
    <statement>;


اما باید به این نکته جالب توجه داشت که اگر تعداد join‌ها از تعداد fork‌ها بیشتر باشد، پردازش پدر برای همیشه به حالت تعلیق درمی‌آید و درنتیجه یک حالت بن بست (deadlock) در اجرای برنامه رخ خواهد داد. زیرا join منتظر پایان یافتن پردازش فرزندی می‌ماند که هرگز آغاز نشده است و در رویارویی با این مسئله کاملاً غیرهوشمند عمل می‌کند.

متغیرهای کانال
درباره ساختار و طرز کار متغیرهای کانال در مقاله  «یك برنامه، یك هدف،‌ چند پردازنده» به طور کامل توضیح داده شده است. مالتی‌پاسکال زبانی است که از متغیرهای کانال پشتیبانی می‌کند. به عنوان مثال، تعریف یک متغیر کانال از نوع عدد صحیح در مالتی‌پاسکال به این شکل است:


var
    C: channel of Integer;


نوع متغیر می‌تواند هر نوع معتبر در مالتی‌پاسکال باشد و عمل نوشتن به داخل یک متغیر کانال نیز مانند متغیرهای معمولی بوده و با انتساب یک مقدار در سمت راست به متغیر سمت چپ انجام می‌شود. عمل خواندن از متغیر کانال نیز مانند سایر متغیرها انجام می‌شود. با این تفاوت که اگر مقداری درون متغیر کانال قرار نگیرد، پردازه تا زمان مقدار گرفتن آن متغیر توسط پردازه دیگر به حالت تعلیق  در‌می‌آید. با توجه به این‌که ظرفیت کانال نامحدود است پردازه‌هایی که تنها عمل نوشتن روی متغیرهای کانال را انجام می‌دهند هرگز از ناحیه آن متغیرها دچار تأخیر یا  تعلیق نمی‌شوند. اما معمولاً احتمال تعلیق پردازه‌های خواننده کانال وجود دارد. درصورتی که بخواهیم پردازه‌های خواننده کانال نیز از تعلیق ناشی از خالی بودن کانال مصون بمانند، می‌توان قبل از خواندن از کانال آن را به منظور خالی بودن بررسی کرد. این کار با استفاده از علامت «?» انجام می‌شود.


به عنوان مثال:



if C? then x:=C
else x:=2;


در این مثال، عمل خواندن تنها زمانی انجام می‌شود که مقداری در کانال وجود داشته باشد. بنابراین، هر پردازه‌ای می‌تواند بدون هراس از تأخیر این عبارت را ارزش‌یابی کند. باید توجه داشت که اگر C حاوی هر مقدار، حتی صفر باشد ارزش ?C برابر با true خواهد بود و تنها زمانی ارزش آن False می‌شود که C تهی باشد که در این‌صورت بخش else اجرا می‌شود. این حالت را نباید با قطعه کد بعد اشتباه گرفت:



if C then x:=C
else x:=2;


همان‌طور که مشاهده می‌کنید، در این کد از علامت «?» استفاده نشده است. کاری که این کد انجام می‌دهد آن است که مقداری را از C می‌خواند و آن را ارزش‌یابی می‌کند. اگر مقدار C غیرصفر باشد ارزش آن برابر با True و اگر صفر باشد، مقدار آن False خواهد شد. با توجه به آن‌كه قبل از ارزش‌یابی مقداری از کانال خوانده می‌شود، درصورتی که کانال خالی باشد پردازه به حالت تعلیق درمی‌آید و ارزش‌یابی C زمانی انجام می‌شود که مقداری داخل کانال نوشته شود. این یکی از اشتباهاتی است که ممکن است کاربران سنتی پاسکال هنگام کار با مالتی پاسکال و متغیرهای کانال مرتکب شوند. در صورتی که برنامه نویس به تعریف آرایه‌ای از متغیرهای کانال نیاز داشته باشد، این کار را می‌تواند با چنین کدی انجام دهد:


var
    C: array[1..5] of channel of Real;


در مالتی‌پاسکال می‌توان کانال‌ها را از نوع اشاره‌گر نیز تعریف کرد:



type
    item: record
        x,y: Integer;
        z: Real;
    end;

var
    C: channel of ^item;



همچنین می‌توان کانالی از انواع ساخت‌یافته نیز تعریف کرد:



type
    artype: array[1..5] of Real;

var
D: channel of artype;
E: channel of record
        left,right: Integer;
        center: Real;
    end;

در این مثال، هر عنصر در کانال D یک آرایه 5 عنصری از اعداد حقیقی است و هر عنصر در کانال E یک رکورد است. در این رابطه مالتی‌پاسکال محدودیت‌هایی نیز دارد. به عنوان مثال نمی‌توان به یک عنصر آرایه در کانال D یا فیلدهای رکورد در کانال E به طور مستقیم دسترسی داشت. به همین دلیل، باید ابتدا یک آرایه یا رکورد را به‌طور کامل از کانال به داخل متغیری موقت خواند و سپس از طریق آن متغیر به اجزای رکورد یا عناصر آرایه دسترسی پیدا کرد. به عنوان مثال:


type
    artype: array[1..5] of Real;
    item: record
        left,right: Integer;
        center: Real;
    end;

var
    D: channel of artype;
    E: channel of item;
    ar: artype;
    rec: item;
    x: Real;
    y: Integer;

begin
{...}

ar:=D;
rec:=E;
{...}

x:=ar[2];
y:=rec.left;
{...}

end

ماهنامه شبکه
پنج شنبه 12/8/1390 - 14:42
آموزش و تحقيقات

اکنون که با مفاهیم مطرح در برنامه‌سازی موازی و هم‌روند کردن الگوریتم‌ها آشنا شده‌اید،  بهتر است با یک زبان و ابزار ساده به تمرین و یادگیری برنامه‌نویسی موازی بپردازیم. در این مقاله مفسر مالتی‌پاسکال را انتخاب‌کرده‌ایم. همان‌طور که از نام این ابزار می‌توان دریافت، زبان مورد استفاده این مفسر، همان زبان پاسکال است که به دلیل پشتیبانی از برنامه‌نویسی چندپردازنده‌ای (Multi processor) و چندکامپیوتری (Multi computer)، مالتی‌پاسکال نام گرفته است. این ابزار توسط بروس لستر به عنوان پروژه تحقیقی در دپارتمان علوم کامپیوتر دانشگاه ماهاریشی طراحی شده که نرم‌افزاری کم حجم و ساده و در عین حال توانمند است که در خط فرمان اجرا می‌شود و به نصب نیازی ندارد. شما می‌توانید این برنامه را به‌طور مستقیم از این آدرس دریافت کنید. با داشتن یك پیش زمینه قبل از شروع کار با این زبان با آمادگی ذهنی کامل و نگرشی عمیق‌تر برنامه‌نویسی موازی را آغاز کنید. در ضمن به دلیل آن‌كه در این مقاله مفاهیم عمومی برنامه‌نویسی موازی مطرح شده است، حتی اگر در آینده قصد کار با مالتی پاسکال را ندارید، خواندن و درک کدهای موجود و توضیحات مربوطه می‌تواند در ایجاد زمینه‌ذهنی برای کار با هر زبان دیگر مفید واقع شود. به بیان دیگر، در اینجا انتخاب مالتی‌پاسکال به این دلیل بوده است که به واسطه آن، برخی مفاهیم مهم به صورت عملی بیان شود و مطرح کردن آن فقط برای برنامه‌نویسان علاقه‌مند به این زبان نیست.این مطلب یكی از مقالات بخش ویژه نشریه ماهنامه شبكه در شماره 115 با عنوان برنامه‎نویسی موازی می‌باشد. جهت دریافت این بخش ویژه به بخش پرونده‌های ویژه سایت مراجعه نمائید.

هدف از طراحی مالتی‌پاسکال، ارائه یک زبان برنامه‌نویسی همراه با مفاهیم مربوط به زبان‌های موازی است که برای نمایش الگوریتم‌های موازی روی معماری‌های چندپردازنده‌ای و شبکه‌های کامپیوتری استفاده شود. بنابراین، برای برنامه‌نویس تجربه مستقیمی از برنامه‌نویسی موازی واقعی را فراهم می‌کند. ویژگی‌های موجود در این زبان برای دانشجویانی که برنامه‌نویسی موازی انجام می‌دهند، این امکان را فراهم می‌آورد که تکنیک‌های مهم و اصول طراحی و پیاده‌سازی الگوریتم‌های موازی مؤثر و کارا را روی دو معماری چندپردازنده‌ای و چندکامپیوتری فرا گرفته و این اطلاعات را برای کامپیوترهای موازی خاص که از زبان‌های برنامه‌نویسی دیگری پشتیبانی می‌کنند، به کار ببرند. مجموعه دستورات مالتی‌پاسکال، بسیاری از توانایی‌های برنامه‌نویسی موازی را داشته و برنامه‌نویسانی که بتوانند به‌طور حرفه‌ای با آن کار کنند، می‌توانند به سادگی و به سرعت خود را با دیگر زبان‌های برنامه‌نویسی هماهنگ کنند.


در برنامه‌نویسی معمولی، هر برنامه دو مؤلفه اساسی به نام متغیر و رویه دارد. متغیر‌ها شامل داده‌هایی هستند که می‌توان آن را جزئی نرم‌افزاری از سخت‌افزار حافظه برشمرد. رویه‌ها نیز روی مقادیر داده‌ای کار می‌کنند که می‌توان آن را جزئی نرم‌افزاری از سخت‌افزار پردازنده به شمار آورد. یک تناظر به این شکل بین توانایی‌های یک زبان و سخت‌افزار موجود، به برنامه‌ساز کمک می‌کند تا برنامه خود را دقیق‌تر طراحی کند.مالتی‌پاسکال مستقل از ماشین طراحی شده است و می‌تواند روی گستره وسیعی از سیستم‌های موازی شامل سیستم‌های چندپردازنده‌ای با حافظه اشتراکی یا شبکه‌های کامپیوتری مبتنی بر انتقال پیام بین پردازنده‌های آن‌ها همراه با حافظه محلی اجرا شود. یکی از توانایی‌های این زبان، ایجاد پردازش‌های موازی به صورت پویا به‌منظور اجرا روی پردازنده‌های فیزیکی است. مالتی‌پاسکال این امکان را فراهم می‌آورد که داده‌ها با استفاده از متغیرهای اشتراکی که یک انتزاع نرم‌افزاری برای حافظه اشتراکی در سیستم‌های چندپردازنده‌ای هستند، بین پردازنده‌ها به اشتراک گذاشته شوند. این مسئله، انعکاسی از معماری سخت‌افزاری چندپردازنده‌ای در مالتی‌پاسکال است که در نمودار 1 این تناظر را مشاهده می‌کنید. متغیر‌های اشتراکی از جنس متغیرهای معمولی هستند. با این تفاوت که همه پردازنده‌ها می‌توانند به آن دسترسی داشته باشند.

نمودار 1


در شبکه‌های کامپیوتری، هر پردازنده یک حافظه محلی دارد و چیزی تحت عنوان حافظه اشتراکی تعریف نشده است. همان‌طور که پیش از این بیان شد، در شبکه‌های کامپیوتری ارتباط پردازنده‌ها از طریق کانال‌های ارتباطی و رد و بدل کردن پیام صورت می‌گیرد. مقادیر میانی تولید شده در محاسبات از طریق این کانال‌های ارتباطی، از یک پردازنده به پردازنده دیگر منتقل می‌شود. این کانال‌های ارتباطی در مالتی‌پاسکال متغیر کانال نام دارد. متغیرهای کانال در مالتی‌پاسکال که در همین مقاله بیشتر به آن‌ها خواهیم پرداخت، موجودیت‌های مفهومی نرم‌افزاری هستند که پردازش‌های موازی مبتنی بر انتقال پیام از طریق آن‌ها می‌توانند با یکدیگر ارتباط برقرار کنند. این شیوه متفاوت برنامه‌نویسی به دلیل وجود نداشتن حافظه اشتراکی در شبکه‌های کامپیوتری است. نمودار 2 تناظر میان نگرش‌های مهم شبکه‌های کامپیوتری و توانایی‌های مالتی‌پاسکال را نشان می‌دهد.

نمودار2

 

متغیرهای محلی و اشتراکی در مالتی‌پاسکال
همان‌طور که گفتیم در برنامه‌نویسی موازی و معماری چندپردازنده‌ای به دلیل وجود حافظه اشتراکی، متغیرهایی تحت عنوان متغیر اشتراکی وجود دارند که می‌توانند توسط همه پردازنده‌ها مورد دستیابی قرار ف دیگر، متغیرهایی به نام متغیرهای محلی وجود دارند که تنها برای پردازنده خاصی در دسترس هستند و با این‌که آن‌ها نیز در داخل حافظه اشتراکی نوشته می‌شوند، اما از دید سایر پردازنده‌ها پنهان هستند. در هر برنامه مالتی‌پاسکال، همه متغیرهایی که در ابتدای برنامه اصلی اعلان شوند، متغیرهای اشتراکی هستند و به طور مستقیم توسط همه پردازنده‌ها قابل دسترسی هستند. اگر همه دستورات ایجاد پردازش‌ها داخل بدنه اصلی برنامه باشند، آن‌گاه هیچ‌گونه متغیر اشتراکی دیگری وجود نخواگیرند. از طرهد داشت. همه متغیرهایی که در داخل رویه‌ها و توابع اعلان می‌شوند، متغیرهای محلی هستند و تنها توسط Process یا پردازه‌ای که رویه را فراخوانی می‌کند، قابل دسترسی هستند. اما مالتی‌پاسکال اجازه می‌دهد که دستورات ایجاد پردازه در هر جایی از برنامه از جمله داخل یک رویه به کار روند و در این حالت این امکان برای متغیرهای محلی یک رویه وجود دارد که بین گروه کوچکی از پردازه‌هابه اشتراک گذاشته شوند. این یکی از توانایی‌های پیشرفته مالتی‌پاسکال به شمار می‌رود که با استفاده از آن می‌توان در بسیاری از الگوریتم‌ها، انعطاف بیشتری به برنامه داده و کارکرد آن را بهبود بخشید.

متغیرهای کانال
نوع دیگری از متغیر‌ها در مالتی‌پاسکال متغیرهای کانال هستند که جنس آن‌ها در‌واقع صفی از متغیر‌ها است. یک پردازه می‌تواند مقدارهای مختلف از یک نوع را داخل یک متغیر کانال بنویسد. با این کار، مقادیر مورد نظر به ترتیب داخل آن صف قرار می‌گیرند. محتوای این متغیر کانال می‌تواند به صورت موازی توسط کامپیوترهای دیگر خوانده شود. با هر بار خوانده‌شدن از متغیر کانال، یک مقدار از ابتدای صف حذف می‌شود. در واقع می‌توان متغیر کانال را متغیری فرض کرد که وقتی به آن مقداری نسبت می‌دهیم، اگر مقدار قبلی هنوز استفاده نشده باشد پاک نمی‌شود و مقدار جدید نیز در کنار سایر مقادیر آن حفظ می‌شود. تنها وقتی یک مقدار از متغیر کانال حذف می‌شود كه توسط کامپیوتری خوانده شده و مقدار آن استفاده شده باشد.البته، متغیرهای کانال می‌توانند برای سیستم‌های چندپردازنده‌ای با استفاده از حافظه مشترک پیاده‌سازی شوند. در این سیستم‌ها متغیرهای کانال می‌توانند برای همگام‌سازی پردازه با یکدیگر و تبادل داده بین آن‌ها استفاده شود. متغیر‌های اشتراکی ساده که می‌توانند آزادانه توسط پردازه‌های موازی خوانده یا نوشته شوند، برای ایجاد انواع پردازه‌های تعاملی که برای برنامه‌های موازی روی سیستم‌های چندپردازنده‌ای مورد نیازاست، کافی نیستند. مالتی‌پاسکال برای کمک به همگام‌سازی پردازه‌ها، یک توانایی استاندارد به نام قفل‌های چرخشی (Spinlock) دارد که به‌طور مؤثری در ایجاد کارهای اتمیک مفید هستند. کارهای اتمیک به اموری گفته می‌شود که در صورت انجام باید کامل و بدون وقفه انجام شوند.

دستور forall
در مالتی‌پاسکال دستوری به نام forall وجود دارد که معادل موازی دستور for است. این دستور که توانمندترین روش برای ایجاد پردازش‌های موازی است به تعداد شمارنده حلقه، پردازش ایجاد کرده و با اجرای هم‌روند آن‌ها سرعت اجرای برنامه را افزایش می‌دهد. دستور forall به‌ویژه زمانی که با آرایه‌های بزرگ در روش‌های محاسبات عددی کار می‌کنیم، بسیار مفید خواهد بود. برنامه‌ای که در ادامه مشاهده می‌کنید، با استفاده از دستور forall و 200 پردازه که به‌طور موازی روی 200 عنصر آرایه اجرا می‌شوند، ریشه دوم یا جذر هر عنصر را محاسبه کرده و در همان سلول حافظه ذخیره می‌کند.



Program Squareroot;
var
    A: array [1..200] of Real;
    i: Integer;
begin
    {...}
    forall i:=1 to 200 do
        A[i]:=sqrt(A[i]);
    {...}
end.


در این برنامه پردازنده شماره صفر، پردازه اصلی یا پردازه پدر را اجرا می‌کند و پس از ایجاد دویست پردازه فرزند برای بیست پردازنده فیزیکی در معماری چندپردازنده‌ای، محاسبات روی خانه شماره‌i آرایه A واقع در حافظه اشتراکی توسط پردازنده شماره i صورت می‌گیرد. در ضمن در این برنامه به‌طور خودکار یک کپی از i با مقدار متناظر با شماره پردازه برای هر پردازنده به صورت محلی در حافظه اشتراکی ایجاد می‌شود که هر پردازه به i محلی خود دسترسی خواهد داشت. به این ترتیب که متغیر محلی i  برای پردازه اول مقدار 1، برای پردازه دوم مقدار 2 و... را خواهد داشت. بنابراین، با وجود این‌که پردازنده‌ها، قطعه کد یکسانی را اجرا می‌کنند، اما تفاوت در نتایج ناشی از تفاوت مقدار در متغیر محلی i خواهد بود. یک بار که پردازه ایجاد می‌شود و مقدار منحصربه‌فرد اندیس forall به آن اختصاص می‌یابد، این مقدار در داخل پردازه تبدیل می‌شود و هرگونه تلاش برای تغییر مقدار این اندیس در یک دستورالعمل انتساب، به وقوع یک خطا از سوی مفسر منجر خواهد شد. لازم است به این نکته نیز اشاره شودکه یک اندیس forall نمی‌تواند در یک دستور خواندن (read) قرار گیرد یا این‌که به‌صورت یک پارامتر متغیر، بین رویه‌ها یا توابع منتقل شود. اما مقدار آن می‌تواند به تابع یا رویه‌ای ارسال شود یا به‌طور کلی در هر مجموعه دستوراتی که مقدار آن را تغییر ندهد، استفاده شود.

گرانولیته پردازه‌ها و عملگر grouping
یکی از مفاهیم مهم در برنامه‌نویسی موازی، زمان اجرای هر پردازه است که به گرانولیته پردازش (Process Granularity) معروف است. همان‌طور که می‌دانید در هر سیستم کامپیوتری همواره یک سربار زمانی مربوط به ایجاد یک پردازه و ارسال آن به پردازنده‌های مختلف وجود دارد. اگر زمان اجرای بدنه هر پردازه از یک میزان خاصی کمتر باشد، موازی‌سازی عملاً بی‌اثر و گاهی کندتر از اجرای ترتیبی آن خواهد شد. بنابراین، برای بالا رفتن کارایی حاصل از موازی‌سازی باید نسبت زمان اجرای بدنه پردازه به زمان ایجاد آن به قدر کافی بزرگ باشد. به عنوان مثال، در قطعه کد قبل اگر نسبت زمان محاسبه جذر عدد به زمان ایجاد پردازه به قدر کافی بزرگ نباشد، شاید کارایی برنامه بالا نرود. اما مالتی‌پاسکال امکانی را فراهم می‌آورد که با دسته‌بندی اندیس‌های حلقه از تعداد پردازه‌ها کاسته و به مقدار بدنه هر پردازه بیافزاید. این امکان با اضافه‌کردن کلمه کلیدی grouping به دستور forall فراهم می‌شود. یک نمونه گروه‌بندی‌شده برنامه قبل به این صورت خواهد بود:


Program Squareroot;
var
    A: array [1..200] of Real;
    i: Integer;
begin
    {...}
    forall i:=1 to 200 grouping 20 do
        A[i]:=sqrt(A[i]);
    {...}
end.

 

به این ترتیب، به جای ایجاد دویست پردازه کوچک، ده پردازه بزرگ‌تر خواهیم داشت که هر پردازه وظیفه محاسبه جذر بیست عدد را به عهده خواهد داشت. با این افزایش زمانی اجرای هر پردازه انتظار می‌رود که کارایی برنامه نسبت به حالت اول بهتر شود. از طرف دیگر، اگر میزان گروه‌بندی خیلی بزرگ شده و به اندیس پایانی نزدیک‌تر شود، باز هم از کارایی برنامه کاسته شده و برنامه به سمت اجرای ترتیبی پیش خواهد رفت. در مثالی که مشاهده کردید، اگر عدد گروه‌بندی دویست و یا بیشتر از آن شود، تنها یک پردازه فرزند ایجاد شده و کل محاسبات توسط آن انجام می‌شود و در واقع برنامه به شکل ترتیبی در می‌آید. در حالتی هم که کلمه کلیدی grouping ذکر نشود، مقدار پیش‌فرض 1 برای آن در‌نظر‌گرفته می‌شود که همان‌طور كه گفته شد ممکن است به علت کوچک بودن بدنه پردازه موجب افت کارایی شود. اما عددی بین یك تا دویست وجود خواهد داشت که انتخاب آن برای گروه‌بندی بیشترین کارایی را در‌‌پی خواهد داشت که آن عدد، مقدار بهینه گروه‌بندی است.


 به‌طور کلی با انجام محاسبات می‌توان مقدار بهینه گروه‌بندی در یک برنامه را در هر حلقه، نسبت به تعداد کل تکرار حلقه forall و عملی که انجام می‌شود محاسبه کرد و به این ترتیب، به حداکثر میزان کارایی و تسریع الگوریتم دست یافت. برای این کار کافی است زمان کل اجرای حلقه forall را بر حسب متغیر G (مقدار گروه‌بندی) محاسبه کنیم. با مشتق گرفتن از رابطه به‌دست آمده و برابر صفر قرار دادن آن، معادله‌ای به‌دست خواهد آمد که با حل آن و به‌دست آوردن مقدار G (که همان مینیمم نمودار زمانی متناظر با رابطه اولیه است) بهترین مقدار برای گروه‌بندی بهینه به‌دست می‌آید.


 البته، همیشه نیاز به محاسبه دقیق G از طریق محاسبات گفته شده نیست، بلکه یک حدس تقریبی نیز برای بیشتر برنامه‌ها مؤثر خواهد بود. به طور معمول بهتر است اندازه گروه بهینه برای یک دستور forall که بدنه آن بسیار کوچک است، جذر تعداد اندیس‌های حلقه انتخاب شود. در حالت‌هایی که بدنه حلقه forall به قدر کافی بزرگ به نظر می‌رسد نیز اصلاً به گروه‌بندی نیازی نیست.  در ادامه ذکر یک نکته نیز لازم به نظر می‌رسد كه مستقل از اندازه بدنه دستور forall گاهی با محدودیت تعداد پردازنده‌ها مواجه هستیم. در آن زمان نیز بهتر است از گروه‌بندی استفاده شود. به عنوان مثال، اگر بدانیم تنها بیست پردازنده در اختیار داریم و اندیس حلقه برابر صد باشد بهتر است از گروه‌بندی با مقدار پنج استفاده کنیم. درغیراین‌صورت، مقداری از زمان به دلیل ایجاد تعدادی پردازه و همچنین سوییچ کردن هر پردازنده بین پردازه‌های محوله به هدر خواهد رفت. اگرچه با بزرگ بودن بدنه حلقه، زمان ایجاد پردازش‌ها زیاد نخواهد بود، اما در هر صورت زمان اجرای کل از حالتی که در آن از گروه‌بندی استفاده شده است بیشتر خواهد شد و کارایی به همان نسبت افت پیدا خواهد کرد.

ماهنامه شبکه
پنج شنبه 12/8/1390 - 14:42
کامپیوتر و اینترنت

شركت HP از هنگام ورود به عرصه كامپیوترهای قابل حمل توانسته است نظر كاربران بسیاری را به محصولات خود جلب كند و می‏‎توان گفت كه در این حوزه موفق عمل كرده است. محصولات HP طیف وسیعی از كاربران با نیازهای متفاوت را پوشش می‏‎‎دهد و شما به راحتی می‏‎توانید لپ‌‏تاپ‏‎هایی بر اساس آخرین سخت‌‏افزارهای ارایه شده در این حوزه را در میان محصولات این شركت پیدا كنید. برای مثال كاربران حرف‎ه‏ای كه به دنبال یك لپ‏‎تاپ قدرتمند براساس یك پردازنده Sandy Bridge هستند و یا یك كاربر با نیازهای معمولی هر یك با گزینه‏‎های متنوعی از محصولات HP مواجه خواهند بود. از طرفی از زمان ورود نت‏‎بوك‏‎ها به بازار كامپیوترهای قابل حمل، شركت‏‎هایی كه در این حوزه فعالیت داشته‎‏اند بر اساس میزان توجه مخاطبان به این محصولات، ابزارهای مختلفی را روانه بازار می‏كنند. در واقع ویژگی‏‎های ساختاری ‏نت‏‎بوك‏‎ها مانند وزن پایین، ابعاد كوچك، ساختار سخت‏‎افزاری نه چندان پیچیده و البته قیمت مقرون به صرفه‏ آن‏ها موجب شده است كه طرفداران زیادی را در میان كاربران عام پیدا كنند. بر همین اساس HP نیز مانند سایر تولیدكنندگان این عرصه به ساخت و ارایه ابزارهایی بر پایه معماری اصلی نت‏بوك پرداخت تا نیازهای این گروه از كاربران را نیز نادیده نگیرد.


یك سری از نت‏‎بوك‏های این شركت با نام HP mini ارایه می‏شوند و یكی از ویژگی‏‎های ظاهری آن‏ها تنوع در تركیب رنگی است. HP mini 110 و HP mini 210 نت‏‎بوك‏‎های هستند كه در این سری قرار می‏‎گیرند و در كنار تفاوت‏‎های ساختاری كه دارند هر دو از گروه نت‏‎بوك‏‎های 10 اینچی هستند. ابزاری كه برای بررسی در اختیار ما قرار گرفت یك نت‏‎بوك‏ از سری HP Mini 210 و با بدنه خاكستری رنگ است. همان‎طور كه گفته شد این نت‏‎بوك‏ها با تنوع رنگی ارایه شده و همچنین در چهار رنگ قرمز، صورتی، بنفش و آبی نیز دردسترس هستند.


از لحاظ طراحی ظاهری می‌‏توان گفت كه این نت‏‎بوك شباهت زیادی به لپ‏‎تاپ‏‎های سریPavilion دارد كه ما تا كنون تعدادی از آن‏ها را مورد بررسی قرار داده‏ایم. بدنه HP Mini 210  طراحی بدون زاویه داشته، لبه‏‎های آن منحنی بوده و به گونه‎‏ای طراحی شده است كه اثر انگشتان روی بدنه باقی نمی‎‏ماند. از طرفی حاشیه براق و فلز مانند اطراف بدنه در كنار لوگوی HP زیبایی بیشتری به آن داده و خوب است بدانید این نت‎‏بوك جایزه طراحی Fi را از نیز آن خود كرده. در خصوص سخت‏‎افزارهای به كار رفته در ساختار این نت‏‎بوك باید بگوییم كه این ابزار به یك پردازنده N570 Atom مجهز شده است. فركانس این پردازنده دو هسته‏‎ای،1,76 گیگاهرتز بوده و با توجه به توانایی آن در پشتیبانی از قابلیت Hyper Threading، می‏‎تواند تا 4 رشته پردازشی را به صورت همزمان انجام دهد. همچنین این پردازنده به 1 مگابایت كاشه از نوع L2 نیز مجهز شده است. در خصوص میزان حافظه این ابزار نیز باید بگوییم كه دارای2 گیگابایت حافظه از نوع DDR3 است كه با توجه به توان پردازنده‌اش انتخاب مناسبی به‌نظر می‌رسد. از طرفی در ساختار سخت‏‎افزاری این نت‏‎بوك از یك هارد دیسك با فضای ذخیره سازی 320 گیگابایت با سرعت چرخش5400 دور در دقیقه استفاده شده است كه در مجموع تركیب كارامدی را ایجاد می‏كنند.


همان‏‎طور كه گفته شد HP Mini 210، در گروه نت‏‎بوك‏‎های 10 اینچی قرار می‏گیرد. در واقع به طور دقیق‎‏تر می‏‎توان گفت كه یك صفحه نمایش 10,1 اینچی دارد. نور پشتی این صفحه نمایش بازتابی از نوع LED بوده و تفكیك‎‏پذیری آن 600×1024 و با نرخ 16:9 است. در خصوص امكانات گرافیكی این نیز خوب است بدانید كه به یك پردازنده گرافیكی مجتمع Media Accelerator 3150 مجهز شده است. از سوی دیگر در حوزه امكانات اتصالی و درگاه‎‏های این نت‏بوك باید بگوییم كه در سمت راست بدنه یك اسلات كارت‏‎خوانSD، SDHC، SDxC و MMC ، ورودی‏‎های هدفون و میكروفون، قفل كنزینگتون، دو درگاه USB و درگاه RJ-45 قرار دارد. سمت راست بدنه نیز شامل یك درگاه USB، ورودی شارژر و درگاه VGA می‏باشد. علاوه بر آن‏كه درگاه RJ-45 این نت‏بوك یك اتصال اترنتی را برای شما فراهم خواهد كرد، پشتیبانی از استانداردهای بی‌‏سیم 802.11b/g/n نیز این امكان را به شما خواهد داد تا به راحتی به شبكه بی‏سیم متصل شوید همچنین قابلیت پشتیبانی از فناوری DLNA نیز موجب خواهد شد تا بتوانید در منزل و یا محیط كارتان با سایر ابزارهای بی‏سیم نیز ارتباط برقرار كنید. 


از دیگر نكاتی كه باید به آن اشاره كنیم صفحه كلید این نت‎‏بوك است كه از نوع Chiclet بوده و ابعاد مناسبی دارد. در واقع HP فضای زیادی را به این بخش از نت‏‎بوك اختصاص داده است. هرچند این موضوع موجب شده است كه تایپ كردن با این صفحه كلید راحت‎‏تر انجام شود اما فضای كمی را برای پد لمسی ابزار باقی‏‎ گذاشته و بنابراین شما با یك پد لمسی كوچك مواجه خواهید بود كه می‏تواند حركت انگشتان شما را در هنگام كار با آن كمی محدود كند. این پد لمسی با قابلیت Multi-touch  توسط نقاط ریز و برجسته‏‎ای از سایر بخش‏‎های بدنه متمایز شده است و به طور كلی می‏‎توان گفت عملكرد مناسبی را ارایه می‏‎‏كند. نكته دیگری كه در خصوص این ‏نت‏بوك باید به آن اشاره كرد این است كه صفحه كلید فارسی نیز دارد بنابراین سرعت كاربر را در هنگام تایپ كردن متون فارسی به مقدار قابل توجهی افزایش خواهد داد. در كنار كلید پاور ابزار كه در بالا و سمت چپ صفحه‌كلید قرار دارد كلید دیگری نیز تعبیه شده است كه با كلیك كردن روی آن یك صفحه مرورگر وب روی دسكتاپ باز خواهد شد. بنابراین در صورتی كه اتصال ابزار شما به اینترنت برقرار شده باشد، به راحتی و تنها با یك كلید می‎‏توانید به اینترنت دسترسی پیدا كنید.


زبانه‏‎های به كار رفته در حاشیه درب نت‏‎بوك فضای مناسبی را میان درب آن و بدنه ایجاد می‎‏كند. از طرفی لولایی كه برای اتصال درب نت‎‏بوك به بدنه استفاده شده موجب می‏‎شود كه درب نت‏‎بوك به راحتی باز شود علاوه بر آن‏ طراحی آن به گونه‎ای است كه زاویه میان صفحه‌نمایش و بدنه تا 180 درجه قابل تغییر و تنظیم باشد و شما می‏‎توانید به صورت كاملا افقی ابزارتان را روی میز قرار دهید. یكی از نكات قابل توجه درباره HP Mini 210 اسپیكرهای آن هستند كه در لبه پایینی بدنه قرار گرفته‎‏اند و كیفیت صدای مناسبی را ایجاد می‎‏كنند. در واقع پشتیبانی این ابزار از فناوری Beats Audio كه در حال حاضر تنها در كامپیوترهای قابل حمل HP دیده می‎‏شود، موجب خواهد شد كه نویز موجود در صدا به میزان قابل توجهی كاهش یافته و صدای خروجی از اسپیكرها واضح‎‏تر و بهتر به گوش برسد. هنگامی كه روی كلید‏های افزایش و كاهش صدا كلیك می‎‏كنید، یك آیكن گرافیكی از لوگوی Beats Audio روی صفحه نمایش ظاهر خواهد شد كه شبیه به یك صفحه گرامافون بوده و به سمت راست و چپ می‏‎چرخد.


 همچنین وب‏كم این نت‏بوك كه به یك میكروفون مجتمع نیز مجهز است این امكان را فراهم می‏‎كند كه یك ارتباط ویدیویی با كیفیت را با دوستان و اطرافیانتان برقرار كنید. این وب‏كم VGA می‏تواند تصاویری با تفكیك‎‏پذیری 480×640  و ویدیوهایی با كیفیت مناسب را ثبت كند.خوب است در خصوص عمر باتری و میزان گرمای تولید شده توسط این نت‏بوك نیز بدانید كه از یك باتری 6 سلولی از نوع Li-Ion استفاده می‎‏كند و به گفته شركت سازنده عمری بیشتر از 8 ساعت دارد. از طرفی گرمای تولید شده در هنگام فعالیت ابزار بسیار كم بوده و محسوس نیست. در نتیجه شما می‏‎توانید در مدت زمان طولانی بدون مزاحمت از گرمای تولید شده توسط ابزار، از HP Mini 210 استفاده كنید. در كنار توجه به این نكته كه این نت‏‎بوك با 26,8 سانتی‏متر طول، 19,1 سانتی‏‌متر عرض، 3,2 سانتی‏متر ارتفاع و وزن 1,4 كیلوگرم یك ابزار سبك، كوچك و كاملا قابل حمل محسوب می‏شود.


به طور كلی می‏‌توان گفت كه HP Mini 210 یك نت‏‌بوك با قابلیت‏‎ها و عملكرد مناسب به شمار می‏‎رود. یك پردازنده كم مصرف، در كنار یك باتری با طول عمر بالا و همچنین وزن پایین، این ابزار را به یك همراه همیشگی تبدیل خواهد كرد. از سوی دیگر طراحی ظاهری آن در كنار تنوع رنگ‏‎بندی می‏‌تواند نظر كاربران متفاوت با سلیقه‎‏های مختلف را به خود جلب كند. هر چند كه مجهز شدن این ابزار به درگاه USB 3.0 برای افزایش سرعت انتقال اطلاعات و همچنین یك درگاه HDMI برای دستیابی به كیفیت تصویری HD می‏‎توانست نیازهای كاربران بیشتری را تحت پوشش قرار دهد. اما در مجموع و بر اساس بررسی‏‎های انجام شده باید گفت كه HP Mini 210 یك انتخاب خوب برای كاربرانی است كه همواره در سفر هستند، نیازهای گرافیكی حرفه‏ای نداشته و فعالیت‏‎های اداری و سبك دارند. از طرفی اگر به دنبال یك كامپیوتر قابل اعتماد و مناسب برای فرزند خود هستید به شما توصیه می‏‎كنیم این نت‏‌بوك را از نزدیك بررسی كنید.

مزایا
صفحه كلید فارسی با ابعاد مناسب، كیفیت صدای بالا

معایب
پد لمسی كوچك، درگاه‏های محدود

مشخصات فنی
پردازنده:Atom N570 با فركانس 1,67 گیگاهرتز

پردازنده گرافیكی:Intel Media Accelerator 3150
حافظه: 2 گیگابایت حافظه از نوع DDR3
ظرفیت هارد دیسك: 320 گیگابایت با سرعت چرخش 5400 دور در دقیقه
نمایشگر: 10,1 اینچی با نور پشتی LED و تفكیك‏پذیری 600×1024
درگاه‏‎ها: سه درگاه USB 2.0، اترنت، VGA، اسلات كارت‏‎خوان، هدفون و میكروفون
قیمت و گارانتی:-,520,000 تومان با 18 ماه گارانتی ایران اچ‌پی
شماره تلفن و سایت: 8363              www.iranhp.ir

نشریه عصر شبکه
پنج شنبه 12/8/1390 - 14:41
مورد توجه ترین های هفته اخیر
فعالترین ها در ماه گذشته
(0)فعالان 24 ساعت گذشته