دسته بندی | برنامه نویسی |
فرمت فایل | doc |
حجم فایل | 50 کیلو بایت |
تعداد صفحات فایل | 30 |
توضیحات مختصری در مورد زبانهای برنامه نویسی
DELPHI -1
C++ -2
C# -3
BASIC -4
FORTRAN -5
VISUAL BASIC -6
DELPHI -1
دِلفی (Delphi) یا به تعبیری ویژوآل پاسکال – یک زبان برنامهنویسی است و بستری برای توسعهٔ نرمافزار که شرکت بورلند آن را تولید کرده است. این زبان، در بدو انتشار خود در سال ۱۹۹۵، به عنوان یکی از نخستین ابزارهایی مطرح شد که از توسعهٔ نرمافزار بر مبنای متدولوژی RAD((Rapid Application Developmentپشتیبانی میکردند؛ یعنی تولید و توسعهٔ سریع برنامههای کاربردی این نرم افزار بر مبنای پاسکال شیگرا بوده و از این زبان مشتق شده است. البته بورلند نسخهای از دلفی و سیپلاسپلاسبیلدر را برای لینوکس به نام کایلیکس (Kylix) ارائه کرد که مورد استقبال توسعه دهندگان نرمافزارهای لینوکس قرار نگرفت. نرمافزارهای دلفی در ابتدا به صورت مستقیم از کتابخانههای ویندوز و کتابخانهٔ مخصوص خود به نام VCL استفاده میکرد، اما پس از نسخه ۶ دلفی، امکانات استفاده از داتنت هم به آن اضافه شد. در حال حاضر میتوان دلفی را یکی از رایجترین زبانهای ممکن در ایران دانست.زبانِ دلفی که پیشتر بنام پاسکال شیءگرا (Object-Pascal) خوانده میشد و برای طراحی نرمافزاهای تحت ویندوز به کار میرفت، امروزه چنان توسعه یافته است که برای تولید نرمافزارهای تحت سیستمعاملِ لینوکس و داتنت نیز به کار میآید. بیشترین کاربرد دلفی در طراحی برنامههای رومیزی و پایگاه دادهها است، اما به عنوان یک ابزارِ «چند- منظوره»، برای طراحی انواع گوناگونی از پروژههای نرمافزاری نیز مورد استفاده قرار میگیرد.
دلفی 2006
شرکت بورلند در سال ۲۰۰۶ نرمافزار جدید خود را با ویژگیهای جدید به بازار ارائه کرد. این برنامه جدید امکان برنامه نویسی با دلفی و سی پلاس پلاس و همچنین سیشارپ را بطور همزمان ارائه میدهد. بدین ترتیب برنامه نویسانی که با ابزارهای مختلفی کار میکنند براحتی میتوانند در این محیط جدید برنامه نویسی کنند. ویژگی مهم این نگارش نسبت به نگارش ۲۰۰۵ بحث مدیریت حافظه است. در نگارش ۲۰۰۵ ضعفهائی در این زمینه وجود داشت که در این نسخه حل شده است. شرکت بورلند افتخار دارد که به عنوان اولین شرکت تولید کننده IDE زبانهای برنامه نویسی مانند دلفی و سی شارپ بیلدر و جی بیلدر(مخصوص زبان جاوا) و .... از تکنولوژی دات نت در محصولات خود استفاده کرده است.
دلفی 2007
در اواخر سال 2006 شرکت بورلند یک شرکت تابع با نام CodeGear را تاسیس کرد تا این شرکت بتواند تمام انرژی خود را صرف محیط های برنامهنویسی مشهور خود یعنی دلفی و ++C بیلدر و... کند. بن اسمیت نام اولین مدیر CodeGear بود. شرکت بورلند نیز فعالیتهای خود را در زمینه Application Lifecycle Management ادامه میدهد. اولین محصول این شرکت، CodeGear Delphi 2007 هست که بسیاری از نقائص موجود در دلفی 2006 از جمله سرعت پائین آن در این محصول برطرف شده است و بعد از دلفی 7 میتوان از آن به عنوان محصولی مطمئن و قابل استفاده نام برد، هر چند که دلفی 2006 هم محصولی کارامد هست. از دیگر محصولات CodeGear میتوان به Delphi 2007 For PHP اشاره کرد که تحول شگرفی در رابطه با استفاده از تکنولوژی Ajax در دلفی است.
C++ -2
زبان برنامهنویسی ++C (تلفظ می شود: سی پلاس پلاس) یک زبان برنامهنویسی کامپیوتری عمومی با قابلیتهای سطح بالا و سطح پایین میباشد. این زبان دارای قابلیتهای کنترل نوع ایستا، نوشتار آزاد، چندمدلی، معمولا زبان ترجمه شده با پشتیبانی از برنامهنویسی ساختیافته، برنامهنویسی شیگرا، برنامه نویسی جنریک است.
زبان ++c یک زبان سطح میانی در نظر گرفته میشود. این زبان دارای قابلیت زبانهای سطح بالا و پایین بصورت همزمان است.
زبان ++C توسط بییارنه استراستروپ دانمارکی در سال ۱۹۷۹ در آزمایشگاه های بل (Bell Labs) و بر مبنای زبان C ساخته شد و آن را "C با کلاس" نامگزاری نمودند. در سال ۱۹۸۳ به ++c تغییر نام داد. توسعه با اضافه نمودن کلاسها و ویژگیهای دیگری مانند توابع مجازی، سربارگزاری عملگرها، وراثت چندگانه، قالب توابع، و پردازش استثنا انجام شد. این زبان برنامهنویسی در سال ۱۹۹۸ تحت نام ISO/IEC 14882:1998 استاندارد شد. نسخه فعلی استاندارد این زبان ISO/IEC 14882:2003 است. نسخه جدیدی از استاندارد (که به صورت غیررسمی C++0x نامیده میشود) در دست تهیه است.
تاریخچه زبان
استراستروپ کار بر روی زبان «c با کلاس» را در سال ۱۹۷۹ آغاز کرد.ایده ساخت این زبان جدید در زمان کار بر روی تز دکترای خود به ذهن استراستروپ خطور نمود. او متوجه شد که سیمولا دارای ویژگیهای مناسب برای ساخت برنامههای بسیار بزرگ است اما برای استفاده عملی بسیار کند است اما BCPL با وجود سرعت بسیار زیاد برای ساخت برنامههای بزرگ بسیار سطح پایین است. زمانی که استراستروپ کار خود را در آزمایشگاه های بل (Bell Labs) آغاز نمود با مشکل تحلیل هسته unix با توجه به محاسبات توزیع شده روبرو شده بود. با یادآوری تجربیات خود در دوران دکترا، او زبان C را با استفاده از ویژگیهای سیمولا گسترش داد. C به این دلیل انتخاب شد که C یک زبان عمومی، سریع، قابل حمل، و بصورت گسترده در حال استفاده بود. علاوه بر C و سیمولا زبانهای دیگری مانند ALGOL 68، ADA، CLU، ML نیز بر ساختار این زبان جدید اثر گذاشت. در ابتداویژگیهای کلاس، کلاسهای مشتق شده، کنترل نوع قوی، توابع درون خطی، و آرگومان پیشفرض از طریق Cfront به C اضافه شد. اولین نسخه تجاری در سال ۱۹۸۵ ارائه شد.در سال ۱۹۸۳ نام زبان از «C با کلاس» به ++C تغییر یافت. ویژگیهای دیگر شامل توابع مجازی، سربارگزاری عملگر و نام تابع، ارجاعات، ثوابت، کنترل حافظه توسط کاربر بصورت آزاد، کنترل نوع بهتر، و توضیحات یک خطی به صورت BCPL با استفاده از «//» نیز به آن اضافه شد. در سال ۱۹۸۵ اولین نسخه زبان برنامهنویسی ++C انتشار یافت و مرجع مهمی برای این زبان فراهم شد در حالی که هیچ استاندارد رسمی وجود نداشت. در سال ۱۹۸۹ ویرایش 2.0 از زبان ++C ارائه شد. ویژگیهای جدیدی مانند ارثبری چندگانه، کلاسهای انتزاعی، اعضای ایستای توایع، اعضای ثابت تابع، و اعضای حفاظت شده به آن اضافه شد. در سال ۱۹۹۰ «راهنمای مرجع ++C » منتشر شد. این کار بنیان استانداردهای بعدی شد. آخرین ویژگیهای اضافه شده شامل موارد زیر بودند: قالب توابع، استثناها، فضاهای نام، تبدیلات جدید، و یک نوع داده منطقی.در حین تکامل ++C کتابخانه استاندارد نیز بوجود آمد. اولین نسخه کتاب استاندارد شامل کتابخانه جریانات I/O بود که جایگزین printf و scanf شد. در ادامه مهمترین ویژگی اضافه شده Standard Template Library بوده است.
استاندارد زبان
بعد از سالها کار کمیته مشترک ANSI–ISO در سال ۱۹۹۸ ++C را استاندارد نمودند (ISO/IEC 14882:1998). به مدت چند سال پس از انتشار استاندارد این کمیته گزارشات معایب را مورد بررسی قرار داده نسخه اصلاح شده استاندارد ++C منتشر شد. در سال ۲۰۰۵ گزارشی فنی بنام «گزارش فنی کتابخانه ۱» (که معمولا بصورت اختصار TR1 خوانده میشود) انتشار یافت. با وجود این که گزارش بخشی رسمی از استاندارد نیست ولی بخشهایی را به آن اضافه نموده که انتظار میرود در نسخههای بعدی استاندارد در نظر گرفته شود. پشتیبانی از این گزارش در حال افزایش بین تمام کامپایلرهای فعلی است.در حالی که ++C به هیچ موسسهای وابسته نیست این مستندات بصورت آزادانه در دسترس نیستند.
دسته بندی | کامپیوتر و IT |
فرمت فایل | doc |
حجم فایل | 209 کیلو بایت |
تعداد صفحات فایل | 29 |
رویکردی عملی به امنیت شبکه لایه بندی شده
مقدمه
امروزه امنیت شبکه یک مسأله مهم برای ادارات و شرکتهای دولتی و سازمان های کوچک و بزرگ است. تهدیدهای پیشرفته از سوی تروریست های فضای سایبر، کارمندان ناراضی و هکرها رویکردی سیستماتیک را برای امنیت شبکه می طلبد. در بسیاری از صنایع، امنیت به شکل پیشرفته یک انتخاب نیست بلکه یک ضرورت است. {گروه امداد امنیت کامپیوتری ایران}
در این سلسله مقالات رویکردی لایه بندی شده برای امن سازی شبکه به شما معرفی می گردد. این رویکرد هم یک استراتژی تکنیکی است که ابزار و امکان مناسبی را در سطوح مختلف در زیرساختار شبکه شما قرار می دهد و هم یک استراتژی سازمانی است که مشارکت همه از هیأت مدیره تا قسمت فروش را می طلبد.
رویکرد امنیتی لایه بندی شده روی نگهداری ابزارها و سیستمهای امنیتی و روال ها در پنج لایه مختلف در محیط فناوری اطلاعات متمرکز می گردد.
۱- پیرامون
۲- شبکه
۳- میزبان
۴- برنامه کاربردی
۵- دیتا
در این سلسله مقالات هریک از این سطوح تعریف می شوند و یک دید کلی از ابزارها و سیستمهای امنیتی گوناگون که روی هریک عمل می کنند، ارائه می شود. هدف در اینجا ایجاد درکی در سطح پایه از امنیت شبکه و پیشنهاد یک رویکرد عملی مناسب برای محافظت از دارایی های دیجیتال است. مخاطبان این سلسله مقالات متخصصان فناوری اطلاعات، مدیران تجاری و تصمیم گیران سطح بالا هستند.
محافظت از اطلاعات اختصاصی به منابع مالی نامحدود و عجیب و غریب نیاز ندارد. با درکی کلی از مسأله، خلق یک طرح امنیتی استراتژیکی و تاکتیکی می تواند تمرینی آسان باشد. بعلاوه، با رویکرد عملی که در اینجا معرفی می شود، می توانید بدون هزینه کردن بودجه های کلان، موانع موثری بر سر راه اخلال گران امنیتی ایجاد کنید.
افزودن به ضریب عملکرد هکرها
متخصصان امنیت شبکه از اصطلاحی با عنوان ضریب عملکرد (work factor) استفاده می کنند که مفهومی مهم در پیاده سازی امنیت لایه بندی است. ضریب عملکرد بعنوان میزان تلاش مورد نیاز توسط یک نفوذگر بمنظور تحت تأثیر قراردادن یک یا بیشتر از سیستمها و ابزار امنیتی تعریف می شود که باعث رخنه کردن در شبکه می شود. یک شبکه با ضریب عملکرد بالا به سختی مورد دستبرد قرار می گیرد در حالیکه یک شبکه با ضریب عملکرد پایین می تواند نسبتاً به راحتی مختل شود. اگر هکرها تشخیص دهند که شبکه شما ضریب عملکرد بالایی دارد، که فایده رویکرد لایه بندی شده نیز هست، احتمالاً شبکه شما را رها می کنند و به سراغ شبکه هایی با امنیت پایین تر می روند و این دقیقاً همان چیزیست که شما می خواهید.
تکنولوژی های بحث شده در این سری مقالات مجموعاً رویکرد عملی خوبی برای امن سازی دارایی های دیجیتالی شما را به نمایش می گذارند. در یک دنیای ایده آل، شما بودجه و منابع را برای پیاده سازی تمام ابزار و سیستم هایی که بحث می کنیم خواهید داشت. اما متأسفانه در چنین دنیایی زندگی نمی کنیم. بدین ترتیب، باید شبکه تان را ارزیابی کنید – چگونگی استفاده از آن، طبیعت داده های ذخیره شده، کسانی که نیاز به دسترسی دارند، نرخ رشد آن و غیره – و سپس ترکیبی از سیستم های امنیتی را که بالاترین سطح محافظت را ایجاد می کنند، با توجه به منابع در دسترس پیاده سازی کنید.
مدل امنیت لایه بندی شده
در این جدول مدل امنیت لایه بندی شده و بعضی از تکنولوژی هایی که در هر سطح مورد استفاده قرار می گیرند، ارائه شده اند. این تکنولوژی ها با جزئیات بیشتر در بخش های بعدی مورد بحث قرار خواهند گرفت.
ردیف |
سطح امنیتی |
ابزار و سیستم های امنیتی قابل استفاده |
۱ |
پیرامون |
|
۲ |
شبکه |
|
۳ |
میزبان |
|
۴ |
برنامه کاربردی |
|
۵ |
داده |
|
دسته بندی | کامپیوتر و IT |
فرمت فایل | doc |
حجم فایل | 4053 کیلو بایت |
تعداد صفحات فایل | 56 |
مقدمه ای بر رباتیک
-1مقدمه
اتوماسیون در بخشهای مختلف صنعت و کارهای تولیدی در چند دهه اخیر ظهور پیدا کرده است و روز به روز نیز در حال توسعه می باشد. بیش از چند دهه از ظهور کارخانجات کاملاً مکانیزه که در آنها تمامی پروسه ها اتوماتیک بوده و نیروی انسانی در آن نقش اجرائی ندارد، نمی گذرد. اما در چند ساله اخیر شاهد بوجود آمدن کارخانجات مکانیزه ای بوده ایم که طراحی، ساخت و نحوه کار آنها واقعاً حیرت انگیز است. ایده و دانش کنترل اتوماتیک و استفاده از سیستمهای مکانیزه در کارخانجات به جنگ جهانی دوم می رسد. ما تحولات عظیم و چشمگیر آن در سالهای اخیر بوقوع پیوسته است.
رباتها جدیدترین مرحله تلاش انسان جهت صنایع اتوماتیک به شمار می روند. رباتها آن دسته از ماشینهای ساخت بشر هستند که لزوماً حرکتهایی شبیه انسان ندارند ولی توان تصمیم گیری و ایجاد و کنترل فعالیتهای از پیش تعیین شده را دارند.
شکل 1 : نمونه ای از استفاده از ربات در صنعت
2- تعریف ربات
دو تعریف موجود در رابطه با کلمه ربات از قرار زیر می باشند[9] :
1- تعریفــی که توسطConcise Oxford Dic. صورت گرفتــه است؛ ماشینی مکانیکی با ظاهر یک انسان که باهوش و مطیع بوده ولی فاقد شخصیت است. این تعریف چندان دقیق نیست، زیرا تمام رباتهای موجود دارای ظاهری انسانی نبوده و تمایل به چنین امری نیز وجود ندارد.
2- تعریفی که توسط مؤسسه ربات آمریکا صورت گرفته است؛ وسیله ای با دقت عمل زیاد که قابل برنامه ریزی مجدد بوده و توانایی انجام چند کار را دارد و برای حمل مواد، قطعات، ابزارها یا سیستم های تخصصی طراحی شده و دارای حرکات مختلف برنامه ریزی شده است و هدف از ساخت آن انجام وظایف گوناگون می باشد.
3- دسته بندی رباتها
رباتها در سطوح مختلف دو خاصیت مشخص را دارا می باشند :
1- تنوع در عملکرد
2- قابلیت تطبیق خودکار با محیط
به منظور دسته بندی رباتها لازم است که قادر به تعریف و تشخیص انواع مختلف آنــــــها باشیم. سه
دسته بندی مختلف در مورد رباتها وجود دارد. دسته بندی اتحادیــــــه رباتهای ژاپنی، دسته بندی
مؤسسه رباتیک آمریکا و دسته بندی اتحادیه فرانسوی رباتهای صنعتی.[9]
1-3-دسته بندی اتحادیه رباتهای ژاپنی
انجمن رباتهای صنعتی ژاپن، رباتها را به شش گروه زیر تقسیم می کند :
1- یک دست مکانیکی که توسط اپراتور کار می کند : وسیله ای است که دارای درجات آزادی متعدد بوده و توسط عامل انسانی کار می کند.
2- ربات با ترکیبات ثابت : این دسته رباتها با ترکیبات ثابت طراحی می شوند. در این حالت یک دست مکانیکی کارهای مکانیکی را با قدمهای متوالی تعریف شده انجام می دهد و به سادگی ترتیب کارها قابل تغییر نیست.
3- ربات با ترکیبات متغیر : یک دست مکانیکی که کارهای تکراری را با قدمهای متوالی و با ترتیب تعریف شده، انجام می دهد و این ترتیب به سادگی قابل تغییر است.
4- ربات قابل آموزش : اپراتور در ابتدای امر به صورت دستی با هدایت یا کنترل ربات کاری را که باید انجام شود، انجام می دهد و ربات مراحل انجام وظیفه را در حافظه ضبط می کند. هر وقت که لازم باشد، می توان اطلاعات ضبط شده را از ربات درخواست نمود و ربات وظیفه درخواست شده را بصورت خودکار انجام می دهد.
5- ربات با کنترل عددی : اپراتور وظیفه ربات را توسط یک برنامه کامپیوتری به او تفهیم می نماید و نیازی به هدایت دستی ربات نیست. درواقع ربات با کنترل عددی، رباتی است که با برنامه کامپیوتری کار می کند.
6- ربات باهوش : این ربات درک از محیط و استعداد انجام کار با توجه به تغییر در شرایط و محدوده عمل کار را دارد.
2-3- دسته بندی مؤسسه رباتیک آمریکا
انستیتوی رباتیک آمریکا تنها موارد 3 و 4 و 5 و 6 را به عنوان ربات پذیرفته است.
3-3- دسته بندی اتحادیه فرانسوی رباتهای صنعتی
مؤسسه ربات صنعتی فرانسوی، رباتها را به شکل زیر تقسیم کرده است :
نوع A : دستگاهی که توسط دست یا از راه دور کنترل می شود (مورد 1 طبقه بندی قبل).
نوع B : وسیلة حمل کننده خودکار با یک سیکل محاسبه شده از قبل (موارد 2 و 3 طبقه بندی قبل).
نوع C : دستگاهی قابل برنامه ریزی و با توانایی خود کنترل (موارد 4 و 5 طبقه بندی قبل).
نوع D : دستگاهی که قادر است اطلاعات معینی از محیط را بدست بیاورد و به عنوان ربات باهوش معروف است (مورد 6 طبقه بندی قبل).
4- اجزاء اصلی یک ربات
مهندسی ربات، مهندسیهای نرم افزار، سخت افزار، برق و مکانیک را در خدمت خود گرفته است. بعضی مواقع این علوم به حد کافی پیچیده می باشند. همچنانکه در شکل 2-2 مشاهده می شود هر ربات دارای 5 مؤلفه به شرح ذیل می باشد [9]و[15]:
1-4- بازوی مکانیکی ماهر(Mechanical Manipulator)
بازوی مکانیکی شامل چندین واصل است که با مفصلها به هم وصل می شوند. این واصلها در جهات مختلف در فضای کاری قادر به حرکت می باشند. حرکت یک مفصل بخصوص باعث حرکت یک یا چند واصل می شود. عامل تحریک مفصل می تواند مستقیماً یا از طریق بعضی انتقالات مکانیکی بر واصل بعدی متصل شود. به واصل نهایی بازوی مکانیکی وسیله کاری ربات وصل شده است که به آن عامل نهایی می گویند. هر یک از مفصلهای ربات یک محور مفصل دارند که واصل حول آن می چرخد. هر محور مفصل یک درجه آزادی(D.O.F.) تعریف می کند. بیشتر رباتها دارای 6 درجه آزادی می باشند به عبارت دیگر دارای 6 مفصل، بمنظور حرکت در 6 جهت. اولین سه مفصل ربات به عنوان محورهای اصلی شناخته می شوند. بطورکلی صرفنظر از جزئیات، محورهایی که برای محاسبه موقعیت
شکل 2 : مؤلفه های یک ربات
و استقرار مچ استفاده می شونــد، محورهای اصلی ربات هستند. محورهای مفصلهای باقیمانده جهت قرار گرفتن دست ربات را مشخص می کنند، ولذا محورهای فرعی نامیده می شوند.
دو نوع مفصل اصلی به صورت گسترده در صنعت رباتها بکار گرفته می شود. مفصل دورانی که نمایش دهنده حرکت چرخشی حول یک محور است و مفصل انتقالی یا لغزشی که نمایش دهنده حرکت خطی در طول یک محور است، (جدول 1).
Description Notation Type
Rotary motion about an axis R Revolute
Linear motion along an axis P Prismatic
جدول 1 : انواع مفصل ربات
2-4- سنسورها
برای کنترل صحیح بازوی مکانیکی بایستی وضعیت هر مفصل شناخته شده باشد. منظور از وضعیت، موقعیت مفصل، سرعت و شتاب می باشد. بنابراین در مفصلها بایستی سنسورهایی جهت دید مفصلها و وصلها جهت تعیین موقعیت، گشتاور، سرعت، شتاب، و ... نصب شود، تا وضعیت مفصلها به کنترلر ابلاغ شود. خواندن اطلاعات سنسور، یا در اتمام حرکت یا در حین حرکت انجام می گیرد و با ارسال اطلاعات آنی سنسورها به کنترلر، کنترل صحیح و واقعی سیستم مکانیکی انجام می شود. این اطلاعات سنسوری، دیجیتال یا آنالوگ و یا ترکیبی می باشند.
3-4- کنترلر
بخشی است که به بازوی مکانیکی، هوش انجام کار را می دهد. کنترلر معمولاً از بخشهای ذیل تشکیل می شود :
1- واحدی که اجازه می دهد ربات از طریق سنسورها با محیط بیرون ارتباط داشته باشد.
2- حافظه جهت ذخیره داده هایی که مختصات را تعریف می کنند تا بازو با توجه به این مختصات حرکت کند (برنامه).
3- واحدی که داده ذخیره شده در حافظه را تغییر می دهد و سپس داده را برای ارتباط دادن با مؤلفه های دیگر کنترل بکار می برد.
4- حرکت مؤلفه هــای بخصوصی در نقاط معینــی مقدار دهی اولیه شده و در نقطه بخصوص
دیگری پایان می یابند.
5- واحــد محاسباتی که محاسبــات لازم برای کنترلـر را انجام می دهد. به عبارت دیگر، برای
انجام صحیح اعمال بایست یک سری محاسبات جهت مشخص کردن مسیر، سرعت و موقعیت بازوی مکانیکی انجام شود.
6- واسطی جهت بدست آوردن داده ها (مختصات هر مفصل، اطلاعاتی از سیستم بینایی و ...) و واسطی جهت اعمال سیگنالهای کنترل به محرک مفصلها.
7- واسطی جهت انتقال اطلاعات کنترلر به واحد تبدیل توان، به طوری که محرک های مفصلها باعث بشوند که مفصلها به صورت مطلوب حرکت کنند.
8- واسط به تجهیزات دیگر، بطوری که کنترلر ربات با واحدهای خارجی یا ابزارهای کنترل دیگر، ارتباط داشته باشد.
9- وسایل و تجهیزات لازم جهت آموزش ربات.
کنترلرهای رباتها کلاً به 5 دسته تقسیم بندی می شوند :
1- کنترل با قدم ساده(Simple Step Sequencer)
2- سیستم منطقی پنوماتیکی(Pneumatic Logic System)
3- کنترلر با قدمهای الکترونیکی (Electronic Sequencer)
4- میکرو کامپیوتر (Micro Computer)
5- مینی کامپیوتر (Mini Computer)
سه کنترلر اول در رباتهای کم هزینه به کار برده می شوند. بیشتر کنترلرهای امروزی براساس میکروکامپیوترهای معمولی می باشند و سیستم کنترل براساس مینی کامپیوتر زیاد رایج نمی باشد، چرا که نسبت به میکروکامپیوترها هزینه بالاتری دارند.
4-4- واحد تبدیل توان
این واحد سیگنالهای کنترلر را گرفته و به یک سیگنال در سطح توان محرک ها و موتورها، جهت حرکت، تبدیــل می کند. این واحــد شامل تقویت کننده هـای توان الکترونیکی برای رباتهای الکتریکی و شیرهای کنترلی و راه اندازهای هیدرولیکی برای رباتهای هیدرولیکی می باشد.
دسته بندی | کامپیوتر و IT |
فرمت فایل | doc |
حجم فایل | 160 کیلو بایت |
تعداد صفحات فایل | 51 |
خلاصه
از ویژگی های بهبود یافته در ویندوز XP نسبت به 2000 و NT و جدید برای کاربران 98 و Me، پشتیبانی از NTFS (ان تی اف اس) پیشرفته می باشد. NTFS مختصر شده عبارت NT File System به معنی سیستم فایل NT است. سیستم فایل تعریف می کند که سیستم عامل چگونه اطلاعات را روی دیسک بگذارد و سپس آن را بخواند، پاک کند یا جابجا نماید.
با اینکه راهنمای ویندوز فواید زیادی را برای NTFS بر می شمرد، انتخاب بین این سیستم فایل و FAT32 با تردید همراه است.
بسیاری از کاربران هنگام کار با این سیستم فایل، با مشکلاتی روبرو شده اند و از بکارگیری NTFS ابراز پشیمانی می کنند؛ خلاصه اینکه بسیاری، هیچ دلیل قانع کننده ای برای استفاده از NTFS نمی یابند. بخشی از مشکلاتی که هنگام بکارگیری هر چیز نوی پیش می آید ناشی از عدم آگاهی کافی از جوانب آن و بخشی دیگر ناشی از محدودیت های موجود در آن است.
در این مقاله سعی شده است این سیستم فایل از جوانب مختلف بررسی و حتی الامکان محدودیت ها و نکات موجود هنگام استفاده از آن کاملا روشن شود.
1- پیشگفتار
وقتی برای اولین بار ویندوز XP بر روی کامپیوتری نصب می شود، یکی از مسائلی که ذهن را به خود مشغول می کند، سیستم فایل جدیدی به نام NTFS است که می توان از آن استفاده کرد. با اینکه راهنمای ویندوز فواید زیادی را برای NTFS بر می شمرد، انتخاب بین این سیستم فایل و FAT32 با تردید همراه است. بسیاری از کاربران هنگام کار با این سیستم فایل، با مشکلاتی روبرو شده اند و از بکارگیری NTFS ابراز پشیمانی می کنند؛ خلاصه اینکه بسیاری، هیچ دلیل قانع کننده ای برای استفاده از NTFS نمی یابند. بخشی از مشکلاتی که هنگام بکارگیری هر چیز نوی پیش می آید ناشی از عدم آگاهی کافی از جوانب آن و بخشی دیگر ناشی از محدودیت های موجود در آن است. در این مقاله سعی شده است این سیستم فایل از جوانب مختلف بررسی و حتی الامکان محدودیت ها و نکات موجود هنگام استفاده از آن کاملا روشن شود.
در این مقاله، مرجع که تقریبا بیشتر ویژگی های NTFS را پوشش می دهد به عنوان راهنما انتخاب شده و با توجه به آن، تک تک ویژگی ها بررسی شده است. هر ویژگی دقیقا شرح داده و سعی شده است اصطلاحات بکار رفته در توضیح هر ویژگی کاملا تبیین شود. سپس چگونگی استفاده از ویژگی مطرح شده است. البته برای بکارگیری بعضی ویژگی ها اصلا رابط گرافیکی وجود ندارد و برای بعضی دیگر هیچ راهی به جز برنامه نویسی نیست. سعی شده است ریشه ی مشکلاتی که هنگام کار با NTFS پیش می آید کاملا مشخص و راهکارهای پیشگیری از آن مطرح شود. بدین منظور، با جستجو در مراجع مختلف، صفحات اینترنتی حاوی اطلاعات مفید جمع آوری شده و پس از بررسی تعدادی از این صفحات برای تهیه مقاله برگزیده و طبقه بندی موضوعی شده است. پس از آن، مقاله به رشته تحریر در آمده است.
یکی از مشکلات اساسی در مرحله تحریر مقاله، واژه گزینی برای اصطلاحات نوی بکار رفته در متن بوده است. در بعضی موارد ترجمه ی تحت اللفظی اصطلاح، بکار رفته و در بعضی دیگر، واژه یا عبارتی برگزیده شده که هرچند رابطه ی معناداری با اصطلاح لاتین نداشته ولی مفهوم مطرح شده را به خوبی می رسانده است.
منابعی که مستقیما در نگارش مقاله بکار رفته، در بخش فهرست مراجع به تفکیک کتاب ، راهنمای ویندوز XP و مراجع اینترنتی ذکر شده و در صورت لزوم با ذکر شماره بین علایم [ و ] در متن مقاله به آن ها ارجاع داده شده است. در بخش راهنمای ویندوز، عنوانِ صفحه ی در برگیرنده ی مطلب ذکر شده است. می توان با وارد کردن این عنوان میان علامت های ” و “ در بخش جستجوی راهنمای ویندوز یافت.
در بخش هایی، خواننده برای مطالعه بیشتر به راهنمای یک برنامه یا دستور ارجاع داده شده است. می توان با وارد کردن نام برنامه یا دستور در راهنمای ویندوز و یا اجرای آن و استفاده از راهنمای موجود به همراه برنامه، به مطلب مورد نظر دست یافت. دستورات معمولا در Command Prompt (محیط text) اجرا می شوند. برای اجرای آن در ویندوز XP کافی است از منوی شروع، به All Programs و سپس Accessories اشاره و Command Prompt را اجرا کرد. راهنمای مختصری از هر دستور با وارد کردن نام دستور و پس آن با فاصله، پارامتر /? نمایش داده می شود.
تلاش شده است مراجع علاوه بر اعتبار کافی، کاملا مرتبط با موضوع مورد بررسی باشند هرچند بدلیل نوی نسبی بعضی ویژگی های این سیستم فایل، مراجع مرتبط و مناسب برای آن ها کم بود. جای تعجب هم نیست که بیشتر این مراجع متعلق به شرکتِ مایکروسافت است. با توجه به اینکه NTFS از زمان ویندوز NT، در حالِ استفاده است، بسیاری از مراجع موجود با توجه به NTFS4 و NTFS5 که در ویندوزهای NT و 2000 پشتیبانی شده به رشته تحریر در آمده و بعضی مطالب و ابزارهای معرفی شده در آن ها قدیمی و منسوخ شده است. به همین دلیل در این مقاله سعی شده است مطالب منسوخ با توجه به مراجع به روز تصحیح شود.
سیر ارائه مطالب در مقاله به صورت لایه لایه است؛ به این معنی که ابتدا کلیات مرتبط با هر موضوع مطرح شده است و خواننده در صورت تمایل می تواند پس از این کلیات به مطالعه ی جزئیات (شامل بعضی مقایسه ها، نکات مرتبط با مسائل سازگاری، بررسی جوانب و مشکلات احتمالی پس از بکارگیری ویژگی و سایر مطالب) بپردازد و یا به بخش های بعدی برود. هر بخش به صورت واحدی مستقل نگاشته شده و خواننده در صورت لزوم به بخش های مرتبط ارجاع داده شده است.
از آنجا که مخاطب این مقاله، همه ی کاربران NTFS هستند، بعضی بخش ها چندین بار بازنگری شده است تا مقاله بدون ورود به جزئیاتی که فهم آن نیازمند دانش ژرف کامپیوتری است بتواند به نحوی شایسته مفاهیم را انتقال دهد. همچنین تلاش شده است زبان نوشتار برای همه کاربران حتی با کمی پیشینه ی کامپیوتری قابل فهم باشد و در عین حال مفید فایده ی کاربران پیشرفته هم افتد. در هر بخش سعی بر رعایت اختصار و اجتناب از پرداختن به مسائل حاشیه ای بوده است. بعضی مطالبِ پیش نیاز یا برخی مسایل حاشیه ای، به صلاحدید در پاورقی شرح داده شده است که جذابیت متن برای خواننده حفظ شود. همچنین معادل های لاتین اصطلاحات در پرانتز آورده شده است. به دلیل تخصصی بودن مسائل مربوط به شبکه های کامپیوتری، در این مقاله از پرداختن به این مسائل خودداری شده است.
شکل های مقاله همچنین برنامه ها و دستوراتی که در متن به آن ها اشاره شده است، مربوط به ویندوز XP است و ممکن است در سایر سیستم عامل ها وجود نداشته باشد.
در پایان از همه کسانی که مرا در هرچه بهتر شدن این مقاله یاری کردند به خصوص دوست عزیزم آقای مهدی میلانی فرد تشکر می نمایم.
در تجدید نظر تابستان 1383، متن مقاله تصحیح و بخش نسخه های NTFS به مقاله افزوده شد.
1- پیشگفتار
2- مقدمه
3-سیستم فایل
3-1- FAT32
3-2- NTFS
3-3- FAT32 یا NTFS
3-3-1- سازگاری و رفع اشکال
3-3-2- قابلیت تطابق بهتر NTFS با درایوهای بزرگ
3-4- تبدیل به NTFS
4- بررسی عمیق تر از NTFS
4-1- قابلیت بازیابی (Data Recoverability)
4-2- انعطاف پذیری در برابر اشکال در ذخیره اطلاعات (Storage Fault Tolerance)
4-2-1- نگاشت کلاسترهای معیوب (Bad-Cluster Remapping)
4-3- امنیت اطلاعات (Data Security)
4-4- رمزنگاری فایل ها (Encryption)
4-4-1- پیش از هر کاری باید بدانید...
4-4-2- بد نیست از جزئیات هم بدانید
4-5- Unicode Names
4-5-1- بد نیست بدانید
4-6- فایل های چند جریانی (Multiple File Streams)
4-7- فشرده سازی (Compression)
4-7-1- فشرده سازی NTFS
4-8- فایل های تُنُک (Sparse files)
4-9- دفترچه ثبت تغییرات (Change Journals)
4-10- نمایه سازی (Indexing Service)
4-11- ردگیری توزیع شده ی پیوندها (Distributed Link Tracking)
4-11-1- بررسی دقیق تر
4-12- Reparse Points
4-13- پیوندهای سخت و نقاط انشعاب (Hard Links and Junctions)
4-13-1- نقاط انشعاب
4-14- پوشه ها دروازه هایی برای سایر درایوها (Directories as Volume Mount Points)
5- نسخه های NTFS
5-1- ارتقای ویندوز
5-2- راه اندازی با چند سیستم عامل (Multibooting)
5-3- ویژگی های هر نسخه
6- فهرست مراجع
دسته بندی | کامپیوتر و IT |
فرمت فایل | doc |
حجم فایل | 23 کیلو بایت |
تعداد صفحات فایل | 23 |
اصول سیستمهای عامل توزیع شده
در طول دو دهه اخیر، حصول پیشرفت در تکنولوژی میکروالکترونیک باعث در دسترس قرار گرفتن پردازندههای ارزان و سریع شده است. از سوی دیگر پیشرفتهای موجود در تکنولوژی ارتباطات باعث به وجود آمدن شبکههای سریع تر و به صرفهتر شده است. از ترکیب پیشرفتها در این دو میدان از تکنولوژیها تکنولوژی ارزانتر و کاراتری به وجود آمده که در آن به جای این که از یک پردازنده خیلی سریع استفاده شود، از چند پردازنده معمولی که به هم متصل شدهاند استفاده میشود.
از نظر معماری، کامپیوترهایی که از چندپردازنده متصل به هم تشکیل شدهاند اساساً بر دو دسته تقسیم میشوند.
1- سیستمهای جفت شده قوی
2- سیستمهای جفت شده ضعیف
1- سیستمهای جفت شده قوی:
در این سیستمها یک حافظه اولیه (فضای آدرس) عمومی وجود دارد که میان همه پردازندهها به اشتراک گذاشته شده است. اگر برای مثال، پردازندهای در محل × از حافظه مقدار 100 را بنویسد هر پردازنده دیگری که بلافاصله از همان آدرس × بخواند مقدار 100 را دریافت خواهد کرد. بنابراین در این سیستمها هر نوع تبادل میان پردازندهها از طریق حافظه مشترک صورت میگیرد
سیستمهای جفت شده ضعیف:
در این معماری پردازندهها حافظه را به اشتراک نمیگذارند و هر پردازنده فضای آدرسدهی محلی مختص به خود را دارد. برای مثال اگر پردازندههای در محل × از حافظه مقدار 100 را بنویسد این عمل فقط محتویات حافظه محلی را عوض خواهد کرد و تاثیری در محتوای حافظه پردازنده های دیگر نخواهد داشت. بنابراین اگر هر پردازنده دیگری از محل× از حافظه را بخواند هرچیزی که قبلاً در آن محلی از حافظه محلی آن بوده به تحویل داده خواهد شد. در این نوع سیستمها هرگونه تبادل میان پردازندهها از طریق شبکهای که پردازندهها را به هم متصل کرده و توسط انتقال پیغام انجام میگیرد.
معمولاً به سیستمهای جفت شده قوی، سیستمهای پردازش موازی اطلاق می گردد و به سیستمهای جفت شده ضعیف «سیستمهای محاسبات توزیع شده» یا به طور سادهتر «سیستمهای توزیع شده» اطلاق میشود.
در این مقاله منظور از جمله سیستم توزیع شده» همان سیستمهای توزیع شده واقعی یا «سیستمهای محاسبات توزیع شده» است که از سیستم عاملهای توزیع شده استفاده میکنند.
در این مقاله عبارت «سیستمهای محاسبات توزیع شده» برای سیستمهای جفت شده ضعیف به کار برده خواهد شد. در مقایسه با سیستم های جفت شده قوی، پردازندههای سیستمهای محاسبات توزیع شده میتوانند خیلی دور از هم قرار گرفته باشند تاحدی که یک ناحیه جغرافیایی را تحت پوشش قرار دهند. بعلاوه، در سیستمهای جفت شده قوی، تعداد پردازندههایی که به طور موثر میتوانند مورد استفاده قرارگیرند مواجه با محدودیت ناشی از پهنای باند حافظه مشترک است، در حالی که در سیستمهای محاسبات توزیع شده چنین حالتی وجود ندارد و تقریباً به طور کامل آزادی داریم که هر تعداد که دلمان خواست پردازنده داشته باشیم. یعنی محدودیتی در مورد تعداد پردازندهها در «سیستمهای محاسبات توزیع شده» وجود ندارد.
به طور خلاصه یک سیستم محاسبات توزیع شده اساساً مجموعهای است از پردازندههایی که توسط یک شبکه ارتباطی به هم متصل شدهاند که هر پردازنده حافظه محلی و دستگاههای جانبی خود را دارد و ارتباط میان هر دو جفت پردازنده از سیستم از طریق عبور پیغام از شبکه ارتباطی صورت میگیرد. برای هر پردازنده، منابع آن «محلی» هستند و این در حالی است که پردازندههای دیگر و منابع آنها «دور» هستند به پردازنده و منابع آن به طور معمول «گره»، «سایت» یا «ماشین» سیستم عامل توزیع شده اطلاق میشود.
در ابتدا کامپیوترها خیلی گران (در حد میلیون دلار) بودند و جای زیادی را اشغال می کردند (در حد یک اتاق بزرگ) تعداد کمی کامپیوتر وجود داشت و آنها در لابراتوارهای تحقیقاتی دانشگاهها و مراکز صنعتی بود. این کامپیوترها از یک کنسول و بوسیله یک اپراتور قابل استفاده بودند وکاربران عادی نمیتوانستند از آن استفاده کنند. برنامه نویسان، برنامههای خود را مینوشتند و آن را روی رسانهی خاصی مثل کارت پانچ شده به مرکز کامپیوتر تحویل میدادند تا مورد پردازش قرار گیرند. قبل از پردازش یک برنامه، اپراتور باید محیط لازم برای پردازش را آماده سازی می کرد. این آماده سازی شامل سوار کردن نوارها و بارگذاری کارتهای پانچ شده در کارت خوان و … بود. برنامه اجرا میشود و نتایج اجرای برنامه به صورت پرینت شده به برنامه نویس برگشت داده میشد.
آماده سازی کار در کامپیوترهای اولیه یک مشکل اساسی بود و بسیاری از وقت CPU را هدر میداد. در سالهای 1950 تا 1960 مفاهیم جدیدی برای بهینه سازی صرف وقت CPU ارائه شده که از میان آنها میتوان به موارد زیر اشاره کرد: