آزمایشگاه محاسبات ابری و سیستمهای توزیع شده دانشگاه ملبورن استرالیا

CLOUDS Laboratory

دانلود جدیدترین نسخه کلودسیم

دانلود نسخه رسمی کلودسیم

رایانش ابری

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

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

 

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

زمینه های تحقیقاتی

* محاسبات ابری Cloud Computing - محاسبات مه Fog Computing - محاسبات توزیع شده Distributed Computing - اینترنت اشیا Internet of Things

* شبکه های حسگر بیسیم Wireless Sensor Network

* امنیت شبکه - رمزنگاری Cryptography و پنهان نگاری داده ها Steganography

* داده کاوی Data Mining - وب کاوی Web Mining

* مسائل پیش بینی، تخمین و تشخیص به روشهای یادگیری ماشین

* طراحی و پیاده سازی الگوریتمهای هوش مصنوعی در محاسبات ابری و توزیع شده

آموزش Android از نصب  تا اجرا بر روی دستگاه واقعی

زبان برنامه نویسی سیستم عامل اندروید

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

اما این بدان معنا نیست که برنامه نویسانی با تسلط به دیگر زبان های برنامه نویسی نمی توانند برای این سیستم عامل اپلیکیشن طراحی کنند. در حقیقت کسانیکه که به
HTML5 و JavaScript تسلط دارند خواهند توانست برای این سیستم عامل اپلیکیشن های تحت وب طراحی کنند. از سوی دیگر برنامه نویسان سی و همچنین سی پلاس پلاس می توانند با استفاده از NDK که مخفف Native Development Kit است اقدام به توسعه اپلیکیشن های اندروید با استفاده از زبان های فوق الذکر نمایند.

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

ادامه نوشته

معرفی و آموزش  Search engine optimization یا SEO  

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

اهمیت این موضوع از آنجا ناشی می شود که اکثر مردم از موتورهای جستجو برای رسیدن به مطلب یا محصول مورد نظر خود استفاده می کنند. بهینه سازی وب سایت برای موتورهای جستجوگر معروف شاید بتوان گفت که تقریبا همه افرادی که با وب آشنایی هر چند کمی دارند، حداقل برای یک بار هم که شده واژه SEO را شنیده اند. اما SEO چیست؟ معنای لغوی SEO که مخفف Search Engine Optimization است، بهینه سازی موتور جستجو می باشد. SEO یعنی تولید کردن صفحات وبی که برای موتورهای جستجو جالب و فریبنده هستند. بهینه سازی صفحات وب این است که شما در نتایج یک موتور جستجوی بزرگ بیشترین امتیاز را داشته باشید. اهمیت این موضوع از آنجا ناشی می شود که اکثر مردم از موتورهای جستجو برای رسیدن به مطلب یا محصول مورد نظر خود استفاده می کنند. متا تگ‌های سئو سئو وب سایت دایرکتوری های سئو موتور جستجو سئو عنکبوت سئو روبات سئو اسپایدر سئو خزنده سئو
به عنوان مثال در گوگل و یاهو، اکثر مردم فقط به صفحه اول نتایج جستجو نگاه می کنند. بنابراین برای داشتن ترافیک بالا از طرف موتورهای جستجو، این مسأله الزامی است که سایت شما در صفحه اول نتایج جستجو قرار گیرد. 
ادامه نوشته

آموزش نرم افزار MATLAB


آموزش نرم افزار MATLAB

MATLAB  نرم افزاری برای انجام کارهای ریاضی، آماری، مهندسی و....می باشد.

MATLAB = MATrix Laboratory ( آزمایشگاه ماتریسی )

    در اوايل دهه 1970 توسط Cleve Moler, به وجود آمد.

    در اوايل دهه 1980 با زبان C بازنويسي شد.

    در 1984 شركت Mathwork تأسيس شد.

ادامه نوشته

موضوع : MAX+PLUS

 پیش گفتار :

 

كمپاني  Altera  نرم افزار   MAX+PLUS II را در سال 1991 براي طراحي ، شبيه سازي و برنامه نويسي قطعات منطقي قابل برنامه نويسي   (PLD) خود توليد كرد.

اگر چه  Altera  پيش از اين ، نرم افزارهاي ديگري نيز عرضه كرد هبود ، اما سادگي و درعين حال توانايي بالاي  MAX+PLUS IIباعث شده كه همچنان جايگاه خود را به عنوان نرم افزاري پرقدرت و در عين حال بسيار ساده حفظ كند.

در اين راهنما با MAX+PLUS II آشنا خواهيد شد و روشهاي طراحي ، شبيه سازي و برنامه نويسي PLD ها را فراخواهيد گرفت.  اما لازم است بدانيد كه در اينجا به هيچوجه نم يتوان به تمامي قابليت هاي MAX+PLUS II و تمامي تكنيك هاي طراحي مدارهاي منطقي اشاره كرد. در حقيقت اين راهنما به عنوان نقطه شروع و محرك اوليهاي است كه شما را با بخش هاي اصلي MAX+PLUS II   آشنا مي كند.  شما مي توانيد با انجام طراحي هاي مكرر و در عين حال    Help كامل اين نرم افزار ، مهارت كافي را بدست آوريد . پيش از استفاده از اين نرم افزار و نرم افزارهاي مشابه ، نخستين چيزي كه بايد مورد توجه قرار گيرد پشتيباني نرم افزار از انواعPLD   است.  چرا كه ممكن است نوع PLD  مورد نظر در اين محدوده قرار نگيرد .

ادامه نوشته

A L U چیست

Arithmetic Logic Unit که عبارت کوچک شده ای هست، یکی از چندین عناصر بسیار زیاد درون پردازنده ها و یا واحد پردازندش گرافیکی میباشد، ALU برای انجام کارهای محاسبات ریاضی - منطقی - عملیات های صحیح که منجر به انجام پردازش نهایی توسط پردازنده میشود، بعد از اینکه اطلاعات پردازش شد توسط ALU این اطلاعات ارسال میشود به سمت MEMORY کامپیوتر، در پردازنده ها امروزی ALU به دو قسمت تقسیم می شود یک واحد AU و یک واحد دیگر LU ،کار واحد AU انجام عملیات محاسباتی است و واحد دیگر LU محاسباتی منطقی را انجام میدهد، ALU دارای دستور العمل ها هستند : جمع - تفریق و یک واحد به نام Shifting Operations در حالی بخش منطقی یا Logic دارای مقدار Boolean میباشد که برای مقایسه True یا False بودن که شامل Operator های AND - OR - XOR و در اخر Not میباشد.

ادامه نوشته

زبان برنامه نویسی آندروید

اندروید چیست ؟ برنامه نویسی اندروید چگونه است؟

اندروید (Android) نام یک سیستم عامل موبایل است که توسط شرکت گوگل توسعه داده میشود. این سیستم عامل اوپن سورس است و برپایه هسته لینوکس بنا شده است. اندروید بر خلاف سیستم عامل iOS آیفون که فقط پردازنده های ARM را پشتیبانی میکند، بر روی انواع مختلفی از پردازنده ها (ARM, MIPS, Power Architecture, x86) قابل نصب است. از سال 2008 تاکنون تلفن های همراه متعددی با استفاده از این سیستم عامل به بازار ارائه شده اند.

ادامه نوشته

Ajax و تاثير آن در دنيای برنامه نویسی وب

 Ajax    تحولی بزرگ در عرصه وب (بخش اول)

اينترنت و مهمترين سرويس آن وب علاوه بر اين كه حيات بشری را در هزاره سوم دستخوش تحولات فراوانی كرده است ، توانسته است منشاء تحولات گسترده ای در ساير حوزه های فناوری گردد . در واقع ، تحول در زندگی بشريت  مديون پيشرفت در ساير حوزه های فناوری‌ است . يكی از اين حوزه ها ، صنعت نرم افزار است .

برای آشنائی با اين تحول بد نيست مروری سريع داشته باشيم به گذشته وب و نرم افزار تا از اين رهگذر بتوانيم ضرورت ايجاد فناورهای جديدی نظير Ajax ( برگرفته شده از Asynchronous JavaScript And XML ) را بهتر درك كنيم .


ادامه نوشته

برنامه نويسي تحت شبكه محلي در vb.net

اشاره :
يكي از نياز هاي برنامه نويسان در نوشتن برنامه هاي حرفه اي و چند كاربره ، انتقال داده ها بين دو يا چند كامپيوتر كه از طريق LAN و يا از طريق WAN( اينترنت ) با هم در ارتباط هستند مي باشد.چنين امكاني از ابتدايي ترين زبان ها برنامه نويسي تا كنون به اشكال مختلف در اختيار برنامه نويسان قرار گرفته است و سير سهولت در ايجاد ارتباط در بين كامپيوتر ها روز به روز افزايش يافته است بطوريكه اكنون يك برنامه نويس متوسط نيز مي تواند چنين برنامه هايي را بنويسد. برنامه هايي چون ويديو كنفرانس ، بازي هاي تحت شبكه و چت نمونه هايي از اينگونه برنامه ها مي باشد. در اين مقاله سعي شده است اصول ابتدايي اينگونه برنامه ها تشريح شود. پيش نياز استفاده از مطالب اين مقاله آشنايي متوسط به زبان VB.NET و برخي مفاهيم كلي شبكه مي باشد.كاربران زبان C# نيز مي توانند از كليه مطالب اين مقاله استفاده كنند.

ادامه نوشته

PC3000

PC3000 را بهتر بشناسیم

 پی سی 3000 ( PC-3000) نام تجاری یک سری از محصولات شرکت ACE Laboratory میباشد .این محصولات پیشرفته ترین ابزار در نوع خود در دنیا هستند.سالها تجربه در زمینه هارددیسک ، دانش ژرف و کار روزانه منجر به گشایش راهی شد تا به یک ابزار افسانه ای به نام PC-3000 دست یابی شود. تکنولوژی منحصر بفرد PC-3000 حقیقتاً یک پیشرفت بزرگ در دنیای بازیابی اطلاعات است . این تکنولوژی توسط مهندسان زبده کمپانی ACE Laboratory و کاملاً استادانه و با دقت فراوان در موسسه تحقیقات صنایع الکترونیک USSR (اتحادیه جماهیر شوروی) ساخته شد و در نهایت جهت تعمیرات و بازیابی اطلاعات سخت افزارهای نگه دارنده اطلاعات ( Storage) توسعه پیدا کردند.در همه ی موارد ، PC-3000 بهترین ابزار سخت افزاری- نرم افزاری جهت بازیابی اطلاعات است و تنها راه حل تخصصی است که اکثر موارد بازیابی اطلاعات توسط آن قابل حل است . 

ادامه نوشته

برنامه نويسي به زبان جاوا

چكيده:

موضوع مورد بحث در اين متن برنامه‏نويسي جاوا مي‏باشد. همانطور كه در دنياي كنوني مشاهده مي‏كنيم زبان جاوا به خاطر دارا بودن ويژگيهايي محبوب شده است. به همين دليل لزوم يادگيري اين زبان و آشنايي با نحوة برنامه‏نويسي‏اش يكي از كارهاي مهم است.

زبان برنامه‏نويسي جاوا چيست؟ چرا به وجود آمد. داراي چه قابليت‏هايي مي‏باشد. روش كامپايلرهايش چگونه است ساختار برنامه‏نويسي‏اش به چه صورت است و بسياري موارد ديگر كه در مورد زبان جاوا مطرح است.

دراين متن مرور مختصري دربارة تاريخچه جاوا و چگونگي تكامل آن بحث خواهد شد و در ادامه بحث به بررسي زبان جاوا و اينكه چه خصوصيات و ويژگيهايي منحصر به فردي دارد كه باعث محبوب شدنش شده است را بررسي خواهيم كرد و سپس به بررسي كامپايلر جاوا و مرورگرهاي آن خواهيم داشت كه چه چيزي هستند چه خصوصيات دارند و همچنين تفاوت سه جاوا يعني java classes، java programming، java script نيز خواهيم پرداخت خلاصه‏اي از دستورات جاوا و نحوة برنامه‏نويسي جاوا و خلاصه‏اي از مهمترين توابع جاوا را در ادامة متن مورد بررسي قرار خواهيم داد.

ادامه نوشته

برنامه نویسی بازیهای کامپیوتری در ++C

چکیده:

 

در اوایل دهه ۱۹۷۰ میلادی ، زبان C ، توسط دنیس ریچی و به عنوان زبان برنامه نویسی سیستم ها طراحی شد. این زبان از دو زبان قدیمی تر بنام های BCPL و B حاصل شده است. زبان C تا سال ۱۹۷۸ منحصر به اسفتاده در لابراتوار کمپانی BELL بود تا این که توسط دو تن بنام های ریچی و کرنیه نسخه نهایی این زبان منتشر شد. به سرعت کامپایلر ها و مفسر های متعددی از C توسعه یافت اما برای جلو گیری از ناسازگاری های ایجاد شده و نیز حفظ قابلیت حمل زبان، تعاریف متحد الشکلی توسط استاندارد (ANSI (American national standard institute موسسه استاندارد ملی آمریکا ارائه گردید.رشته جدید Game play Programming در دپارتمان فنی انستیتو ملی بازی سازی تدوین و طراحی شد.

ادامه نوشته

وراثت در ++‍C

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

ادامه نوشته

داده کاوی

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

ادامه نوشته

SSL

مقدمه

امروزه اينترنت به يکي از ارکان ارتباطي بين افراد و سازمان ها تبديل شده است. بسياري از ما روزانه اطلاعاتي از اين طريق مي گيريم يا مي فرستيم. اين اطلاعات از نظر اهميت با هم تفاوت زيادي دارند. برخي از اين اطلاعات مانند اخبار يک سايت اهميت امنيتي چنداني ندارند، اما در طرف ديگر اسناد شخصي مثل ايميل ها، رمز حساب هاي بانکي و ... قرار دارند که دوست نداريم به دست ديگران بيافتند.

ادامه نوشته

واحد کنترل پردازنده

چگونه پردازنده ها اطلاعات را پردازش می کنند ؟

پردازنده یا بعبارت دیگر CPU به قطعه ای سخت افزاری در یک کامپیوتر اتلاق می شود که بواسطه محاسبات ریاضی دستورات یک برنامه را اجرا و نتایج را بصورت خروجی ارائه می دهد سخت افزار CPU از یک چیپ سیلیکنی تشکیل شده است که به آن میکروپروسسور گفته می شود و مساحتی حدود چهار سانتی متر مربع دارد که از دو مدار کلیدی با نام های واحد محاسبه و منطق (ALU) و واحد کنترل (CU) تشکیل شده است .
واحد کنترل (Control unit) این قسمت فعالیت بقیه قسمت‌ها را کنترل می‌کند. واحد کنترل یک ماشین حالت متناهی است. واحد کنترل مداری است که جریان داده‌ها در پردازنده را کنترل می‌کند و اعمال سایر واحدها را کنترل می‌کند. در حالتی آن یک مغز داخل مغز است زیرا آنچه را در پردازنده اتفاق می‌افتد را کنترل می‌کند.

ادامه نوشته

قطعات تشکیل دهنده ربات مسیریاب

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

•    کدخواني مقاومت ها:
کارخانه هاي سازنده مقاومت ها براي سهولت در توليد، اندازه هاي استانداردي را براي ساخت مقاومت ها تعيين مي کنند و با نوار هاي رنگي دور آنها اندازه ي مقاومت ها را مشخص مي کنند. در انتها نيز با يک نوار نقره اي يا طلايي درصد خطا(تلرانس) را مشخص مي کنند. چون ماده ي اصلي ساخت اين مقاومت ها کربن مي باشد ،به انها مقاومت کربني نيز گفته مي شود.
براي خواندن ميزان مقاومت کربني،آن را جوري دست مي گيريم که حلقه ي طلايي يا نقره اي در سمت راست قرار بگيرد. حالا به ترتيب رنگ اولين حلقه از سمت چپ کد رقم اول، دومين حلقه از سمت چپ رقم دوم، و سومين حلقه از سمت چپ رقم n مي باشد یعنی به تعداد n صفر می گذاریم.(اگر 5 حلقه داشتيم، حلقه ي سوم رقم سوم مي باشد و حلقه ي چهارم n است، حلقه ي پنجم هم همان درصد خطا  یا تلرانس است.)

ادامه نوشته

دستورات در SQL


مقدمه ای بر Microsoft SQL Server
MS SQL Server  یکی از سیستم های مدیریت بانک های اطلاعاتی رابطه ای (Relational) است که توسط شرکت مایکروسافت ارائه شده است .SQL Server  از مدل سرویس دهنده - سرویس گیرنده (Client/Server) تبعیت می نماید . در این مدل ، درخواست های (InQuery) سرویس گیرندگان برای سرویس دهنده ارسال و در سمت سرویس دهنده بررسی و آنالیز می گردند . در ادامه ، پردازش های‌ مورد نیاز بر روی اطلاعات ذخیره شده در بانک های اطلاعاتی انجام و در نهایت ، نتایج برای سرویس گیرنده ارسال خواهد شد .
MS SQL Server  با استفاده از مجموعه عناصری ( Components  ) که به صورت هدفمند اجراء می گردند ، قادر به تامین نیازها و درخواست ها از مخازن داده (Data Storages) می باشد . مخازن داده در SQL Server  به دو روش زیر مدیریت می گردند :
▪ OLTP  ( برگرفته از OnLine Transaction Processing System )
▪ OLAP  ( برگرفته از OnLine Analytical Processing System  )
در مدل OLTP  ، مخازن داده به صورت جداول رابطه ای که عموما" به جهت جلوگیری از تکرار و ناهمگونی اطلاعات به صورت هنجار (Normalize) درآمده اند ، سازماندهی می شوند . این نوع از بانک های اطلاعاتی برای درج و تغییر سریع اطلاعات توسط چندین کاربر بطور همزمان مناسب می باشند .

ادامه نوشته

تبديل پايگاه داده به انواع ديگر

پایگاه داده database چیست؟

دادِگان (پایگاه داده ها یا بانک اطلاعاتی) به مجموعه ای از اطلاعات با ساختار منظم و سامانمند گفته می شود. این پایگاه های اطلاعاتی معمولاً در قالبی که برای دستگاه ها و رایانه ها قابل خواندن و قابل دسترسی باشند ذخیره می شوند.
 
البته چنین شیوه ذخیره سازی اطلاعات تنها روش موجود نیست و شیوه های دیگری مانند ذخیره سازی ساده در پرونده ها نیز استفاده می گردد. مسئله ای که ذخیره سازی داده ها در دادگان را موثر می سازد وجود یک ساختار مفهومی است برای ذخیره سازی و روابط بین داده ها است.

پایگاه داده در اصل مجموعه ای سازمان یافته از اطلاعات است.این واژه از دانش رایانه سرچشمه می گیرد ،اما کاربر وسیع و عمومی نیز دارد، این وسعت به اندازه ای است که مرکز اروپایی پایگاه داده (که تعاریف خردمندانه ای برای پایگاه داده ایجاد می کند) شامل تعاریف غیر الکترونیکی برای پایگاه داده می باشد. در این نوشتار به کاربرد های تکنیکی برای این اصطلاح محدود می شود.

ادامه نوشته

پایگاه داده Open Source

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

ادامه نوشته

پايگاه داده هاي توزيع شده

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

ادامه نوشته

طراحي امنيت  پايگاه داده ها

مقدمه
تمركز ما در مطالب قبل بروي مفاهيم امنيت پايگاه داده هاي منطقی (Logical DB Sec.) بوده  است.
از اين پس بروي طراحي معيارهاي امنيتي پايگاه داده هاي منطقي متمركز ميشويم
داشتن يك پايگاه داده امن، بايد از اولين مراحل طراحي پايگاه داده در نظر گرفته شود.
متدولوژي طراحي مورد نياز است.
2-مقدمه
• بايد در تمام فازهاي طراحي پايگاه داده نكات امنيتي در نظر گرفته شوند:
-تحلیل(Analysis)
-طراحی مفهومی (Conceptual design)
-طراحی جزئی(Detailed design)
پیاده سازی(Implementation
تست (Test)
-نگهداری (Maintenance)

ادامه نوشته

مدیریت تراکنش و همزمانی در پایگاه داده

تراکنش چیست ؟


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


ویژگیهای تراکنش
    اتمی بودن (تجزیه ناپذیری) - Atomicity
        همه یا هیچی - (هر خطا => بازگشت (RollBack) ، مثل اینکه چیزی اتفاق نیافتاده است)

    سازگاری – Consistency
        از یک وضعیت سازگار به یک وضعیت سازگار دیگر

    جداسازی – Isolation
        تراکنش ها مستقل از یکدیگر اجرا میشوند
        تراکنشها از یکدیگر مخفی هستند تا زمانیکه Commit شوند

    پایداری – Durability
    تحت هر شرایطی ، پس از اینکه تراکنش انجام (Commit) شد ، اثر آن در بانک باقی میماند.

ادامه نوشته

پایگاه داده در گوشی های اندروید

پایگاه داده‌ها
پایگاه داده‌ها (به طور خلاصه پایگاه)، بانک اطلاعاتی، دادِگان و یا دیتابیس (به انگلیسی : Database)‏ به مجموعه‌ای از داده‌ها با ساختار منظم و سامانمند گفته می‌شود.
تعریف
پایگاه داده‌ها (دادگان یا بانک اطّلاعاتی) به مجموعه‌ای از اطّلاعات با ساختار منظم و سامانمند گفته می‌شود. پایگاه‌های داده‌ها معمولاً در قالبی که برای دستگاه‌ها و رایانه‌ها قابل خواندن و دسترسی باشد ذخیره می‌شوند. البته چنین شیوه ذخیره‌سازی اطلاعات تنها روش موجود نیست و شیوه‌های دیگری مانند ذخیره‌سازی ساده در پرونده‌ها نیز استفاده می‌گردد. آنچه ذخیره‌سازی داده‌ها در پایگاه‌های داده‌ها را مؤثر می‌سازد وجود یک ساختار مفهومی برای ذخیره‌سازی و روابط بین داده‌ها است.
پایگاه داده در اصل مجموعه‌ای سازمان یافته از اطلاعات است.این واژه از دانش رایانه سرچشمه می‌گیرد، اما کاربرد وسیع و عمومی نیز دارد، این وسعت به اندازه‌ای است که مرکز اروپایی پایگاه داده (که تعاریف خردمندانه‌ای برای پایگاه داده ایجاد می‌کند) شامل تعاریف غیر الکترونیکی برای پایگاه داده می‌باشد. در این نوشتار به کاربردهای تکنیکی برای این اصطلاح محدود می‌شود.

ادامه نوشته

برنامه نویسی شی گرا

این فصل مقدمه ای بر تئوری شیءگرائی است. شیءگرائی مفهوم کلاس ها را معرفی می کند که چهار ويژگی کلی را در شیءگرائی نشان می دهند: انتزاع، کپسوله کردن، توارث و چندريختی. تعريف کلاس و اجزای کلاس، نحوه تعريف تابع عضو و تابع دوست، سازنده ها و مخرب ها در اينجا توضيح داده خواهد شد.
مفاهيم شی گرائی
برنامه نویسی شیءگرائی (object oreinted programming) وسیله ای برای مدل کردن صحیح دنیای واقعی با استفاده از اشیا (objects) در برنامه و استفاده مجدد از کد است. یک شی در برنامه دقیقا همان طور تعريف می شود که در دنيای واقعی است؛ خواص معینی دارد که آن را توصیف می کند و متدهایی که می توانید برای انجام کار معینی روی شیء استفاده کنید.
هدف کلی C++ اضافه کردن شیءگرائی به زبان برنامه نویسی C است. یک شیء برای نگهداری داده استفاده می شود. داده و توابعی که روی داده کار می کنند به هم مربوط هستند بنابراين داده و توابع هردو با هم دریک بسته قرار می گیرند. شیءگرائی بيشتر روی داده تاکيد دارد تا عمليات و توابعی که روی داده کار می کنند.
مثال. ماشین یک شی است دارای خواصی مثل رنگ، تعداد درها و غیره است متدهای معینی دارد مانند سرعت گرفتن، ترمز کردن و غیره. می توان این شی را با استفاده از متدهایش استفاده کرد.
شرحی از داده ها و توابعی که می توانند روی داده کار کنند را کلاس (class) می نامند. کلاس را به عنوان الگوئی برای توليد شیء می توان تصور کرد. کلاس در واقع يک نوع داده user-defined است . اشياء نمونه هائی از کلاس ها هستند که در زمان اجرا ايجاد می شوند.
چهار مفهوم اصلی وجود دارند که اساس برنامه نویسی شیءگرائی را می سازند و توسط کلاس ها ارائه می شوند. این مفاهیم انتزاع (abstraction)، کپسوله کردن (encapsulation)، توارث (inheritance) و چندریختی (polymorphism) هستند.

ادامه نوشته

ویژال بیسیک

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

ادامه نوشته

زبان برنامه نويسي پرولوگ (Prolog)

چكيده
پرولوگ (مخفف عبارت «برنامه‌نویسی منطقی» به زبان فرانسوی) یک زبان برنامه‌نویسی رایانه است که برای برنامه‌نویسی منطقی به کار می‌رود. در این زبان که در حوالی ۱۹۷۰ میلادی اختراع شده است، بر خلاف اکثر زبان‌های دیگر برنامه‌نویسی رایانه، به جای دستورالعمل‌های امری از دانسته‌ها و قواعد منطقی برای حل مسئله استفاده می‌شود.

زبان پرولوگ عموماً در حیطهٔ هوش مصنوعی (بالاخص برای پردازش زبان‌های طبیعی) مورد استفاده قرار می‌گیرد.

پرولوگ در سال 1972 در دانشگاه مارسي و توسط Alain Colmerauer و همکاران ابداع شد. پرولوگ مخففي براي “PROgrammation en LOGique” يا «برنامه‌نويسي منطقي » مي باشد. مستندات اوليه در زمينه پرولوگ همگي به زبان فرانسه هستند. پس از مدتي در گوشه و کنار دنيا مخصوصاً در اروپا و ژاپن زبان پرولوگ طرفداراني پيدا کرد. گروهي که پرولوگ را ساختند اساساً يک گروه تحقيقاتي براي پردازش زبان‌هاي طبيعي براي زبان فرانسه بودند. پرولوگ يک زبان سطح بالا محسوب مي شود.

ادامه نوشته