فروشگاه فایل آسان

دانلود پایان نامه|پروژه|مقاله|تحقیق|پژوهش|جزوه دانشجویی|نمونه سوالات استخدامی ها و ........

فروشگاه فایل آسان

دانلود پایان نامه|پروژه|مقاله|تحقیق|پژوهش|جزوه دانشجویی|نمونه سوالات استخدامی ها و ........

دانلود تحقیق Java CGI How To

این مدارک How To چگونگی تنظیم سرور برای میسر ساختن برنامه های CGI نوشته شده به زبان جاوا و چگونگی استفاده ازJava در نوشتن برنامه هایJava را شرح می‌دهد اگرچه هدف مستندات How To، اسفاده آن با سیستم عملLinux است، این مورد خاص به نسخه خاصی از unix مورد استفاده وابستگی ندارد
دسته بندی کامپیوتر و IT
فرمت فایل doc
حجم فایل 115 کیلو بایت
تعداد صفحات فایل 35
تحقیق Java CGI How To

فروشنده فایل

کد کاربری 1024

Java CGI How To


فهرست مطالب


Java CGI How To........................................................................ Java CG HOWTO

نوشته دیوید اچ. سیلبر:…………………………………….. By david H. Silber

javacgi-document@orbits.com.................... @ orbits.com javacgi – document

1- مقدمه.......................................................................................... 1. Introduction

2. Setting Up Your Server to Run Java CGI Programs (with Wxplanations)

2- تنظیم سرور برای اجرای برنامه‌های Java CGI (با توضیح)

3. Setting Up Your Server to Run Java CGI Programs (The Short Form)

3- تنظیم سرور برای اجرای برنامه های Java CGI (مختصر)

4- اجرای یک برنامه Java CGI..................................... 4. Executing a Java CGI Program

5- استفاده از کلاس های Java CGI............................... 5. Using the Java CGI Program

6- طرح های بعدی........................................................................... 6. Future Plans

7- تغییرات...................................................................................... 7. Changes

1- مقدمه.......................................................................................... 1- Introduction

1-1- دانش قبلی........................................................................... 1.1. Prior Knowledge

2-1- این مدرک............................................................................... 1.2. This Document

3-1- بسته بندی............................................................................... 1.3. The Package

4-1- لیست میل............................................................................... 1.4. The Mailing List

2. Setting Up Your Server to Run Java CGI Programs (With Explanations)

2- تنظیم سرور برای اجرای برنامه های Java CGI (با توضیح)............

1-2- ملزومات سیستم.......................................... 2.1. System Requirements.

2.2. Java CGI Add – On Software

2-2- نرم افزار افزایشی Java CGI...................................................

3-2- غیر بسته بندی منبع...................................... 2.3. Unpacking the Source

2.4. Decide On Your Local Path Policies

4-2- تصمیم گیری در مورد سیاست های مسیر محلی.........................

2.5. Testing your installation

5-2- تست نصب.............................................................................

3. Setting Up Your Server to Run Java CGI Programs (the short From)

3- تنظیم سرور برای اجرای برنامه های Java CGI (خلاصه)...............

4. Executing a Java CGI Program

4- اجرای یک برنامه Java CGI........................................................

4.1. Obstacles to Running Java

1-4- موانعی در اجرای برنامه های Java تحت مدلCGI...................

Programs Under the CGI Model

You can’t run Java programs like ordinary executables

Java does not have general access to the environment

شما نمی توانید برنامه های جاوا را مثل برنامه های اجرایی عادی

اجرا کنید.Java دسترسی عمومی به محیط ندارد.

4.2. Overcoming Problems in Running Java CGI Programs

2-4- حل مشکلات در اجرای برنامه های Java CGI..........................

اسکریپت Java- cgi......................................................................... The java cgi script.


Invoking java cgi from an HTML form

تقاضای Java-cgi از قالب HTML...................................................

5. Using the Java CGI Classes

5- استفاده از کلاس های Java CGI..................................................

1-5- CGI....................................................................................... 5.1 CGI

ترکیب کلاس................................................................................... Class Syntax

شرح کلاس...................................................................................... Class Description

خلاصه عضو.................................................................................... Member Summary

همچنین ببینید................................................................................... See Also

CGI ()............................................................................................ CGI ( )

Get Names ()................................................................................ GetNames ( )

Get Value ()................................................................................. Getvalue ( )

2-5- تست CHI.............................................................................. 5.2. CGI Test

خلاصه اعضاء................................................................................... Member Summary

همچنین ببینید................................................................................... See Also

main ().......................................................................................... Main ( )

3-5- ایمیل...................................................................................... 5.3. Email

ترکیب کلاس................................................................................... Class syntax

شرح کلاس...................................................................................... Class Description

خلاصه اعضاء................................................................................... Member Summary

همچنین ببینید................................................................................... See Also

Email ()......................................................................................... Email ()

Send ().......................................................................................... Send ()

Send to ()...................................................................................... Send to ()

Subject ()...................................................................................... Subject ()

4-5- تست- ایمیل........................................................................... 5.4. Email – test

خلاصه اعضاء................................................................................... Member Summary

همچنین ببینید................................................................................... See Also

main ().......................................................................................... Main ( )

5-5- HTML.................................................................................. 5.5. HTML

ترکیب کلاس................................................................................... Class Syntax

شرح کلاس...................................................................................... Class Description

خلاصه اعضاء................................................................................... Member Summary

همچنین ببینید................................................................................... See Also

HTML ()....................................................................................... HTML ( )

Author ()....................................................................................... Author ()

Definition List ( )...................................................................... Definition List ( )

Definition List term ( ).............................................................. Definition List term ( )

EndList ( )................................................................................... EndList ( )

ListItem( ).................................................................................... ListItem( )

Send ( )....................................................................................... Send ( )

Title ( )........................................................................................ Title ( )

6-5- HTML- Test........................................................................ 5.6. HTML – Test

خلاصه اعضاء................................................................................... Member Summary

همچنین ببینید................................................................................... See Also

main ().......................................................................................... Main ( )

7-5- متن......................................................................................... 5.7. Text

ترکیب کلاس.................................................................................... Class Syntax

شرح کلاس...................................................................................... Class Description

خلاصه اعضاء................................................................................... Member Summary

همچنین ببینید................................................................................... See Also

add ()............................................................................................. Add ( )

add line Break ()......................................................................... AddLine Break ( )

add Paragraph ().......................................................................... AddParagraph( )

6- طرح های بعدی........................................................................... 6. Future Plans

7- تغییرات....................................................................................... 7. Changes

1-7- تغییرات 4/0 تا 5/0............................................... 7.1. Changes from 0.4 to 0.5

2-7- تغییرات 3/0 تا 4/0............................................... 7.2. Changes from 0.3 to 0.4

3-7- تغییرات 2/0 تا 3/0............................................... 7.3. Changes from 0.2 to 0.3

4-7- تغییرات 1/0 تا 2/0............................................... 7.4. Changes from 0.1 to 0.2




Java CGI HOWTO

Java CGI How

By David H. Silber javacgi-document@orbits.com

نوشته: دیوید اچ. سیلبر

javacgi-document@orbits.com



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

دانلود مفاهیم شبکه

برای تحلیل و فهم روشهائی که یک نفوذگر با بکارگیری آنها با شبکه حمله می کند، باید یک دانش پایه از تکنولوژی شبکه داشته باشیم درک مکانیزم حملات ممکن نیست مگر آنکه حداقل اصول TCPIP را بدانیم
دسته بندی کامپیوتر و IT
فرمت فایل doc
حجم فایل 171 کیلو بایت
تعداد صفحات فایل 251
مفاهیم شبکه

فروشنده فایل

کد کاربری 1024

مفاهیم شبکه


مروری بر مفاهیم شبکه:

برای تحلیل و فهم روشهائی که یک نفوذگر با بکارگیری آنها با شبکه حمله می کند، باید یک دانش پایه از تکنولوژی شبکه داشته باشیم. درک مکانیزم حملات ممکن نیست مگر آنکه حداقل اصول TCP/IP را بدانیم.

عاملی که تمام شبکه های مختلف را به صورت موفقیت آمیز به هم پیوند زده است، تبعیت همه آنها از مجموعه پروتکلی است که تحت عنوان TCP/IP در دنیا شناخته می شود. دقت کنید که عبارت خلاصه شده TCP/IP می تواند به دو موضوع متفاوت اشاره داشته باشد:

مدل TCP/IP: این مدل یک ساختار چهار لایه ای برای ارتباطات گسترده تعریف می نماید که آنرا در ادامه بررسی می کنیم.

پشتة پروتکلهای TCP/IP:[1] پشتة TCP/IP مجموعه ای شامل بیش از صد پروتکل متفاوت است که برای سازماندهی کلیه اجزاء شبکة اینترنت به کار می رود.

TCP/IP بهترین پروتکل شبکه بندی دنیا نیست! پروتکلهای بهینه تر از آن هم وجود دارند؛ ولیکن فراگیرترین و محبوبترین تکنولوژی شبکه بندی در دنیای کامپیوتر محسوب می شود. شاید بزرگترین حسن TCP/IP آن باشد که بدون پیچیدگی زیاد، بخوبی کار می کند! اینترنت بر اساس TCP/IP بنا شده و بیشتر حملات نیز مبتنی بر مجموعة پروتکلهای TCP/IP هستند.

طراحی شبکه ها و اصول لایه بندی

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

اولین موضوع چگونگی ارسال و دریافت بیتهای اطلاعات بصورت یک سیگنال الکتریکی، الکترومغناطیسی یا نوری است، بسته به اینکه آیا کانال نتقال سیم مسی، فیبرنوری، کانال ماهواره ای یا خطوط مایکروویو است. بنابراین تبدیل بیتها به یک سیگنال متناسب با کانال انتقال یکی از مسائل اولیة شبکه به شمار می رود.

مساله دوم ماهیت انتقال است که می تواند به یکی از سه صورت زیر باشد:

Simplex: ارتباط یک طرفه (یک طرف همیشه گیرنده و طرف دیگر همیشه فرستنده).

Half Duplex: ارتباط دو طرفة غیرهمزمان (هر دو ماشین هم می توانند فرستنده یا گیرنده باشند ولی نه بصورت همزمان، بلکه یکی از طرفین ابتدا ارسال می کند، سپس ساکت می شود تا طرف مقابل ارسال داشته باشد)

Full Duplex: ارتباط دو طرفه همزمان (مانند خطوط مایکروویو)

مساله سوم مسئله خطا و وجود نویز روی کانالهای ارتباطی است بدین معنا که ممکن است در حین ارسال داده ها بر روی کانال فیزیکی تعدادی از بیتها دچار خرابی شود؛ چنین وضعیتی که قابل اجتناب نیست باید تشخیص داده شد و داده های فاقد اعتبار دو ریخته شود مبدأ آنها را از نو ارسال کند.

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

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

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

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

طراحی لایه ای شبکه به منظور تفکیک مسائلی است که باید توسط طراح حل شود و مبتنی بر اصول زیر است:[2]

·هر لایه وظیفه مشخصی دارد و طراح شبکه باید آنها را به دقت تشریح کند.

·هر گاه سرویسهایی که باید ارائه شود از نظر ماهیتی متفاوت باشد،‌ لایه به لایه و جداگانه طراحی شود.

·وظیفه هر لایه باید با توجه به قراردادها و استانداردهای جهانی مشخص شود.

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

·در هر لایه جزئیات لایه های زیرین نادیده گرفته می شود و لایه های بالایی باید در یک روال ساده و ماجولار از خدمات لایة زیرین خود استفاده کنند.

·باید مرزهای هر لایه به گونه ای انتخاب شود که جریان اطلاعات بین لایه ها،‌‍ حداقل باشد.

برای آنکه طراحی شبکه ها سلیقه ای و پیچیده نشود سازمان جهانی استاندارد[3] (ISO)، مدلی هفت لایه ای برای شبکه ارائه کرد، به گونه ای که وظایف و خدمات شبکه در هفت لایة مجزا تعریف و ارائه می شود. این مدل هفت لایه ای،‌OSI[4] نام گرفت. هر چند در شبکة‌ اینترنت از این مدل استفاده نمی شود و بجای آن یک مدل چهار لایه ای به نام TCP/IP تعریف شده است، ولیکن بررسی مدل هفت لایه ای OSI، بدلیل دقتی که در تفکیک و تبیین مسائل شبکه در آن وجود دارد، با ارزش خواهد بود. پس از بررسی مدل OSI، به تشریح مدل TCP/IP خواهیم پرداخت.

مدل هفت لایه ای OSI از سازمان استاندارد جهانی ISO

در این استاندارد کل وظایف و خدمات یک شبکه در هفت لایه تعریف شده است:

لایه 1- لایه فیزیکی Physical Layer

لایه 2- لایه پیوند داده ها Data Link Layer

لایه 3- لایه شبکه Network Layer

لایه 4- لایه انتقال Transport Layer

لایه 5- لایه جلسه Session Layer

لایه 6- لایه ارائه (نمایش) Presentation Layer

لایه 7- لایه کاربرد Application Layer

از لایه های پایین به بالا، سرویسهای ارائه شده‌ (با تکیه بر سرویسی که لایه های زیرین ارائه می کنند) پیشرفته تر می شود.

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

در ادامه به اختصار وظائف هر لایه در مدل OSI را تعریف خواهیم کرد.

لایه فیزیکی

وظیفه اصلی در لایة فیزیکی، انتقال بیتها بصورت سیگنال الکتریکی و ارسال آن بر روی کانال می باشد. واحد اطلاعات در این لایه بیت است و بنابراین این لایه هیچ اطلاعات از محتوای پیام ندارد و تنها بیتهای 0 و 1 را ارسال یا دریافت می کند پارامترهایی که باید در این لایه مورد نظر باشند عبارتند از: ظرفیت کانال فیزیکی و نرخ ارسال[5]، نوع مدولاسیون، چگونگی کوپلاژ با خط انتقال، مسائل مکانیکی و الکتریکی مانند نوع کابل،‌ باند فرکانسی و نوع رابط (کانکتور) کابل.

در این لایه که تماماً سخت افزاری است،‌ مسایل مخابراتی در مبادلة بیتها، تجزیه و تحلیل شده و طراحی های لازم انجام می شود. طراح شبکه می تواند برای طراحی این لایه، از استانداردهای شناخته شدة انتقال همانند RS-232 و RS-422 و RS-423 و … که سخت افزار آنها موجود است، استفاده کند. این لایه هیچ وظیفه ای در مورد تشخیص و ترمیم خطا ندارد.

لایة پیوند داده ها

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

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

کشف خطا که از وظایف این لایه می باشد از طریق اضافه کردن بیتهای کنترل خطا مثل بیتهای Parity Check و Checksum و CRC انجام می شود.

یکی دیگر از وظایف لایة دوم کنترل جریان یا به عبارت دیگر تنظیم جریان ارسال فریم ها به گونه ای است که یک دستگاه کند هیچ گونه فریمی را به خاطر آهسته بودن از دست ندهد. از دیگر وظایف این لایه آن است که وصول داده ها یا عدم رسید داده ها را به فرستنده اعلام کند.

یکی دیگر از وظایف این لایه آن است که قراردادهایی را برای جلوگیری از تصادم سیگنال ایستگاههایی که از کانال اشتراکی استفاده می کنند، وضع کند چرا که فرمان ارسال داده بر روی کانال مشترک از لایة‌ دوم صادر می شود. این قراردادها در زیر لایه ای به نام MAS[6] تعریف شده است.

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

فراموش نکنید که وظایف این لایه نیز با استفاده از سخت افزارهای دیجیتال انجام می شود.

لایة شبکه

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

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

این لایه ذاتاً «بدون اتصال»[7] است یعنی پس از تولید یک بستة اطلاعاتی در مبدأ، بدون هیچ تضمینی در رسیدن آن بسته به مقصد، بسته شروع به طی مسیر در شبکه می کند. وظائف این لایه به سیستم نامه رسانی تشبیه شده است؛ یک پاکت محتوی نامه پس از آنکه مشخصات لازم بر روی آن درج شد، به صندوق پست انداخته می شود، بدون آنکه بتوان زمان دقیق رسیدن نامه و وجود گیرنده نامه را در مقصد، از قبل حدس زد. در ضمن ممکن است نامه به هر دلیلی گم شود یا به اشتباه در راهی بیفتد که مدتها در سیر بماند و زمانی به گیرندة آن برسد که هیچ ارزشی نداشته باشد.

در این لایه تضمینی وجود ندارد وقتی بسته ای برای یک ماشین مقصد ارسال می شود آن ماشین آمادة دریافت آن بسته باشد و بتواند آنرا دریافت کند. در ضمن هیچ تضمینی وجود ندارد وقتی چند بستة متوالی برای یک ماشین ارسال می شود به همان ترتیبی که بر روی شبکه ارسال شده، در مقصد دریافت شوند. همچنین ممکن است که وقتی بسته ای برای یک مقصد ارسال می گردد، به دلیل دیر رسیدن از اعتبار ساقط شده و مجدداً ارسال شود و هر دو بسته (جدید و قدیم) به هم برسند. این مسائل در لایة‌ بالاتر قابل حل خواهد بود.

هر چند وظائف این لایه می تواند بصورت نرم افزاری پیاده شود ولی برای بالاتر رفتن سرعت عمل شبکه، می توان برای این لایه یک کامپیوتر خاص طراحی نمود تا در کنار سخت افزار لایه های زیرین، بسته ها را روی شبکه رد و بدل کند.

لایة‌ انتقال

در این لایه بر اساس خدمات لایة زیرین، یک سرویس انتقال بسیار مطمئن و «اتصال گرا»[8] ارائه می شود. تمام مشکلاتی که در لایة شبکه عنوان شد در این لایه حل و فصل می شود:

·قبل از ارسال بسته ها، نرم افزار این لایة‌ اقدام به ارسال یک بسته ویژه می نماید تا مطمئن شود که ماشین گیرنده آمادة دریافت اطلاعات است.

·جریان ارسال اطلاعات شماره گذاری شده تا هیچ بسته گم نشود یا دوبار دریافت نشود.

·ترتیب جریان بسته ها حفظ می شود.

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

واحد اطلاعات در این لایه قطعة [9] است. از وظائف دیگر این لایه می توان به موارد زیر اشاره کرد:

·تقسیم پیامهای بزرگ به بسته های اطلاعات کوچکتر

·بازسازی بسته های اطلاعاتی و تشکیل یک پیام کامل

·شماره گذاری بسته های کوچکتر جهت بازسازی

·تعیین و تبیین مکانیزم نامگذاری ایستگاه هایی که در شبکه اند.

·وظائف این لایه (و لایه های بعدی) با استفاده از نرم افزار پیاده سازی می شود و فقط بر روی ماشینهای نهایی (Hosts) وجود دارد و مراکز سوئیچ به وظائف این لایه احتیاجی ندارند (مگر در موارد خاص).

لایة جلسه

وظیفة این لایه فراهم آوردن شرایط یک جلسه (نشست) همانند ورود به سیستم از راه دور[10]، احراز هویت طرفین، نگهداری این نشست و توانایی از سرگیری یک نشست در هنگام قطع ارتباط می باشد. وظایف این لایه را می توان در موارد زیر خلاصه کرد: برقراری و مدیریت یک جلسه، شناسایی طرفین، مشخص نمودن اعتبار پیامها، اتمام جلسه، حسابداری مشتری ها[11]

لایة‌ ارائة (نمایش)

در این لایه معمولا کارهایی صورت می گیرد که اگر چه بنیادی و اساسی نیستند ولیکن به عنوان نیازهای عمومی تلقی می شوند. مثل: فشرده سازی فایل[12]، رمزنگاری[13] برای ارسال داده های محرمانه، رمزگشایی[14]، تبدیل کدها به یکدیگر (وقتی که دو ماشین از استانداردهای مختلفی برای متن استفاده می کنند؛ مثل تبدیل متون EBCDIC به ASCII و بالعکس)

لایة‌ کاربرد

در این لایه، استاندارد مبادلة پیام بین نرم افزاهائی که در اختیار کاربر بوده و به نحوی با شبکه در ارتباطند، تعریف می شود. لایة کاربرد شامل تعریف استانداردهایی نظیر انتقال نامه های الکترونیکی،‌ انتقال مطمئن فایل، دسترسی به بانکهای اطلاعاتی راه دور، مدیریت شبکه و انتقال صفحات وب است.

در مدل لایه ای شبکه، وقتی یک برنامة کاربردی در لایة آخر اقدام به ارسال یک واحد اطلاعات می نماید، سرآیند لازم به آن اضافه شده و از طریق صدا زدن توابع سیستمی استاندارد به لایة زیرین تحویل داده می شود. لایة زیر نیز پس از اضافه کردن سرآیند لازم، آنرا به لایة پایین تحویل می دهدو این روند تکرار می شود تا آن واحد اطلاعات روی کانال فیزیکی ارسال شود. در مقصد پس از دریافت یک واحد اطلاعات از روی خط فیزیکی،‌ تحویل لایة بالاتر شده و در هر لایه پس از تحلیل و پردازش لازم، سرآیند اضافه شده را حذف و به لایة بالاتر تحویل می دهد. در شکل (1-2) روند حذف و اضافه شدن سرآیند در هر لایه به تصویر کشیده شده است.

مدل چهار لایه ای TCP/IP

همانگونه که اشاره شد این مدل یک ساختار چهار لایه ای برای شبکه عرضه کرده است. شکل (2-2) این مدل را به تصویر کشیده است. اگر بخواهیم این مدل چهار لایه ای را با مدل OSI مقایسه کنیم، لایة اول از مدل TCP/IP یعنی لایة ‌دسترسی به شبکة تلفیقی از وظائف لایة‌ فیزیکی و لایة پیوند داده ها از مدل OSI خواهد بود. لایة دوم از مدل TCP/IP معادل لایة سوم از مدل OSI یعنی لایة شبکه است. لایة ‌سوم از مدل TCP/IP همنام و معادل با لایة‌ چهارم از مدل OSI یعنی لایة انتقال خواهد بود. لایه پنجم (جلسه) و لایة ششم (ارائه) از مدل OSI در مدل TCP/IP وجود ندارند و وظائف آنها در صورت لزوم در لایة‌ چهارم از مدل TCP/IP ادغام شده است. لایة هفتم از مدل OSI معدل بخشی از لایة چهارم از مدل TCP/IP است. در شکل (3-2) دو مدل TCP/IP و OSI با هم مقایسه شده اند.

در ادامه چهار لایة ‌مدل TCP/IP را بررسی خواهیم کرد.

زیربنای اینترنت ساختار چهار لایه ای TCP/IP است. در این کتاب یاد خواهید گرفت که حملات نفوذگران نیز در یکی از این چهار لایه شکل می گیرد؛ لذا ماهیت و مکانیزمهای حمله و همچنین ابزار و هدف حمله وابسته به لایه ای است که مورد حمل قرار می گیرد.



شکل (1-2) روند حذف و اضافه شدن سرآیند در هر لایه

لایه ها

نامهای معادل در برخی از کتب

لایه کاربرد Application layer

·لایه سرویسهای کاربردی

لایه انتقال Transport layer

·لایه ارتباط میزبان به میزبان (Host to Host)

·لایه ارتباط عناصر انتهایی (End to End Connection)

لایه شبکه Network layer

·لایه اینترنت

·لایه ارتباطات اینترنت

لایه واسط شبکه Network interface

·لایه میزبان به شبکه (Host to network)

·لایه رابط شبکه

شکل (2-2) مدل چهار لایه ای TCP/IP



شکل (3-2) مقایسة دو مدل TCP/IP و OSI

لایة ‌اول از مدل TCP/IP : لایة واسط شبکه

در این لایه استانداردهای سخت افزار، نرم افزار های راه انداز[15] و پروتکلهای شبکه تعریف می شود. این لایه درگیر با مسائل فیزیکی، الکتریکی و مخابراتی کانال انتقال، نوع کارت شبکه و راه اندازه های لازم برای نصب کارت شبکه می باشد. در شبکة اینترنت که می تواند مجموعه ای از عناصر غیرهمگن و نامشابه را به هم پیوند بزند انعطاف لازم در این لایه برای شبکه های گوناگون و ماشینهای میزبان فراهم شده است. یعنی الزام ویژه ای در بکارگیری سخت افزار ارتباطی خاص، در این لایه وجود ندارد. ایستگاهی که تصمیم دارد به اینترنت متصل شود بایستی با استفاده از پروتکلهای متعدد و معتبر و نرم افزار راه انداز مناسب، به نحوی داده های خودش را به شبکه تزریق کند. بنابراین اصرار و اجبار خاصی در استفاده از یک استاندارد خاص در این لایه وجود ندارد. تمام پروتکلهای LAN MAN در این لایه قابل استفاده است.

یک ماشین میزبان می تواند از طریق شبکة محلی، فریمهای اطلاعاتی را به زیر شبکه تزریق کند به این نحو که بسته های راه دور[16] را که مقصدشان خارج از شبکة محلی است، به مسیریاب از پیش تعریف شده، هدایت نماید. شبکه های محلی از طریق یک یا چند مسیریاب می توانند به اینترنت متصل شوند. بنابراین یک بسته اطلاعاتی که از لایه بالاتر جهت ارسال به یک مقصد، به لایه اول در مدل TCP/IP تحویل می شود، نهایتاً در قسمت «فیلد داده»[17] از فریم شبکه محلی قرار می گیرد و مسیر خود را آغاز می نماید؛ پروتکلهائی که در لایة اول از مدل TCP/IP تعریف می شوند، می توانند مبتنی بر ارسال رشتة بیت[18] یا مبتنی بر ارسال رشتة بایت[19] باشند.

لایة‌ دوم از مدل TCP/IP : لایة ‌شبکه

این لایه در ساده ترین عبارت وظیفه دارد بسته های اطلاعاتی را که از این به بعد آنها را بسته های IP می نامیم، روی شبکه هدایت کرده و از مبدأ تا مقصد به پیش ببرد. در این لایه چندین پروتکل در کنار هم وظیفه مسیریابی و تحویل بسته های اطلاعاتی از مبدأ تا مقصد را انجام می دهند. کلیدی ترین پروتکل در این لایه، پروتکل IP نام دارد. برخی از پروتکلهای مهم که یک سری وظایف جانبی برعهده دارند عبارتند از: BOOTP,IGMP,ICMP,RIP,RARP,ARP و …. . این پروتکلها را به اختصار توضیح خواهیم داد ولی بیشترین تلاش ما در کالبدشناسی پروتکلIP خواهد بود.

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

لازم است بدانید که در این لایه برقرای ارتباط بین مبدأ و مقصد بروش «بدون اتصال» خواهد بود و از اسال یک بستهIP روی شبکه، عبور از مسیر خاصی را تضمین نمی کند. بعنی اگر دو بسته متوالی برای یک مقصد یکسان ارسال شود هیچ تصمینی در به ترتیب رسیدن آنها وجود ندارد، چون این دو بسته می توانند از مسیرهای متفاوتی به سمت مقصد حرکت نماید. در ضمن در این لایه پس از آنکه بسته ای روی یکی از کانالهای ارتباطی هدایت شد، از سالم رسیدن یا نرسیدن آن به مقصد هیچ اطلاعی بدست نخواهد آمد، چرا که در این لایه، برای بسته های IP هیچ گونه پیغام دیافت یا عدم دریافت[20] بین عناصر واقع بر روی مسیر، رد و بدل نمی شود؛ بنابراین سرویسی که در این لایه ارائه می شود نامطمئن است و اگر به سرویسهای مطمئن و یا اتصال گرا نیاز باشد د رلایه بالاتر این نیاز تامین خواهد شد.

در این لایه مسیریابها بایستی از شرایط توپولوژیکی و ترافیکی شبکه اطلاعاتی را کسب نمایند تا مسیریابی بروش پویا انجام شود. همچنین در این لایه باید اطلاعاتی درباره مشکلات یا خطاهای احتمالی در ساختار زیرشبکه بین مسیریابها و ماشیهای میزبان، مبادله شود. یکی دیگر از وظائف این لایه ویژگی ارسال «چند پخشی»[21] است یعنی یک ایستگاه قادر باشد به چندین مقصد گوناگون که در قالب یک گروه سازماندهی شده اند،‌ بسته یا بسته هائی را ارسال نماید.

لایة‌ سوم از مدل TCP/IP: لایة انتقال

این لایه ارتباط ماشینهای انتهایی (ماشینهای میزبان) را در شبکه برقرار می کند یعنی می تواند بر اساس سرویسی که لایه دوم ارائه می کند یک ارتباط اتصال گرا و مطمئن[22]، برقرار کند. البته در این لایه برای عملیاتی نظیر ارسال صوت و تصویر که سرعت مهمتر از دقت و خطا است سرویسهای بدون اتصال سریع و نامطمئن نیز فراهم شده است.

در سرویس مطمئنی که در این لایه ارائه می شود، مکانیزمی اتخاذ شده است که فرستنده از رسیدن نو یا عدم رسید صحیح بسته به مقصد با خبر شود. در مورد سرویسهای مطمئن و نامطمئن بعداً بحث خواهد شد. این لایه از یکطرف با لایة شبکه و از طرف دیگر با لایة کاربرد در ارتباط است. داده های تحویلی به این لایه توسط برنامة کاربردی و با صدا زدن توابع سیستمی تعریف شده در «اواسط برنامه های کاربردی» ([23]API) ارسال یا دریافت می شوند.

لایة‌ چهارم از مدل TCP/IP: لایة کاربرد

در این لایه بر اساس خدمات لایه های زیرین، سرویس سطح بالایی برای خلق برنامه های کاربردی ویژه و پیچیده ارائه می شود. این خدمات در قالب،‌ پروتکلهای استانداردی همانند موارد زیر به کاربر ارائه می شود: شبیه سازی ترمینال[24]، انتقال فایل یا FTP، مدیریت پست الکترونیکی، خدمات انتقال صفحات ابرمتنی و دهها پروتکل کاربردی دیگر. در پایان این قسمت بایستی خاطر نشان کنیم که ارسال یک واحد اطلاعاتی از لایه چهارم پس از انجام پردازشهای لازم در لایه های زیرین به نحو مناسبی روی زیر شبکه تزریق شده و نهایتاً در ماشین مقصد،‌ تحویل یک برنامه کاربردی خاص خواهد شد.

لایة اینترنت (IP)

جوهرة اینترنت به گونه ای شکل گرفته است که مجموعه ای از شبکه های خودمختار[25]را به همدیگر وصل می نماید. هیچگونه ساختار حقیقی و رقابتی نمی توان برای اینترنت متصور شد. این نکته را بایستی یادآور شویم که در قسمت «زیرشبکه» از شبکة اینترنت تعدادی از خطوط ارتباطی با پهنای باند (نرخ ارسال) بسیار بالا و مسیریابهای بسیار سریع و هوشمند، برای پیکرة شبکة جهانی اینترنت یک «ستون فقرات»[26] تشکیل داده است. شبکه های منطقه ای و محلی پیرامون این ستون فقرات شکل گرفته و ترافیک دادة آنها به نحوی از این ستون فقرات خواهد گذشت. ستون فقرات در شبکة اینترنت که با سرمایه گذاری عظیمی در آمریکا، اروپا و قسمتهایی از اقیانوسیه و آسیا ایجاد شده است. حجم بسیار وسیعی از بسته های اطلاعاتی را در هر ثانیه حمل می کنند و اکثر شبکه های منطقه ای و محلی یا ارائه دهندگان سرویسهای اینترنت[27] به نحوی با یکی از گروه های این ستون فقرات در ارتباطند.

به گونه ای که در بخش قبلی اشاره شده قراردادی که حمل و تردد بسته های اطلاعاتی و همچنین مسیریابی صحیح آنها را از مبدأ به مقصد، مدیریت و سازماندهی می نماید پروتکل IP[28] نام دارد. در حقیقت پروتکل IP که روی تمام ماشینهای شبکه اینترنت وجود دارد بسته های اطلاعاتی را (بسته IP) از مبدإ تا مقصد هدایت می نماید، فارغ از آنکه آیا ماشینهای مبدأ و مقصد روی یک شبکه هستند یا چندین شبکة دیگر بین آنها واقع شده است.

ساده ترین تعریف برای پروتکل IP روی شبکة اینترنت بصورت زیر خلاصه می شود:

لایة‌ IP یک واحد از داده ها را از لایة بالاتر تحویل می گیرد؛ به این واحد اطلاعات معمولاً یک «دیتاگرام» گفته می شود.امکان دارد طول این دیتاگرام بزرگ باشد، در چنین موردی لایة IP آنرا به واحدهای کوچکتری که هر کدام «قطعه»[29] نام دارد شکسته و با تشکیل یک بستة‌ IP به ازای هر قطعه، اطلاعات لازم برای طی مسیر در شبکه را به آنها اضافه می کند و سپس آنها را روی شبکه به جریان می اندازد؛ هر مسیریاب با بررسی و پردازش بسته ها، آنها را تا مقصد هدایت می کند. هر چند طول یک بسته IP می تواند حداکثر 64Kbyte باشد و لیکن در عمل عموماً طول یک بسته ها حدود 1500 بایت است. ( این قضیه به دلیل آنست که اکثر شبکه های محلی دنیا اعم از Bus، حلقه، ستاره،‌ طول فریمی نزدیک به یک تا چند کیلو بایت دارند) پروتکل IP مجبور است هنگام قطعه قطعه کردن یک دیتاگرام، برای کل آن یک شمارة مشخصه و برای هر قطعه یک شمارة ‌ترتیب در نظر بگیرد تا آن دیتاگرام بتواند در مقصد برای تحویل به لایة بالاتر یعنی لایة‌ انتقال بازسازی شود.

(مجدداً تأکید می کنیم که در این مبحث، دیتاگرام[30] یک واحد اطلاعات است که به صورت یک جا از لایة‌IP به لایة ‌انتقال تحویل داده می شود یا بالعکس لایه انتقال آنرا جهت ارسال روی شبکه به لایة‌IP تحویل داده و ممکن است شکسته شود).

در کنار پروتکل IP چندین پروتکل دیگر مثل RIP,RARP,ARP,ICMP و … تعریف شده که پروتکل IP را در عملکرد بهتر، مسیریابی صحیح، مدیریت خطاهای احتمالی یا کشف آدرسهای ناشناخته کمک می کنند.

تواناییهایی که پروتکل IP چندین پروتکلهای جانبی آن عرضه می کنند این امکان را فراهم آورده است که تمام شبکه ها و ابزارهای شبکه ای (مثل ماشینهای میزبان، مسیریابها، پلها، و …) فارغ از نوع ماشین و نوع سخت افزار و حتی با وجود تفاوت در سیستم عامل مورد استفادة آنها، بتوانند بسته های IP را با یکدیگر مبادله کنند. پروتکل IP ساختاری استاندارد دارد و به هیچ سخت افزار یا سیستم عامل خاص وابسته نیست.

بعنوان اولین گام در شناخت پروتکل IP لازم است قالب یک بستةIP را کالبد شکافی کره و در گامهای بعدی چگونگی آدرس دهی ماشینها و انواع کلاسهای آدرس در شبکة اینترنت را معرفی نموده و نهایتاً به روشهای مسیریابی و همچین تعریف پروتکلهای وابسته به IP بپردازیم.

قالب یک بستة IP

شکل (4-2) قالب یک بسته IP را نشان می دهد. یک بستة‌IP از دو قسمت سرایند و قسمت حمل داده تشکیل شده است. مجموعة اطلاعاتی که در سرآیند بستة‌IP درج می شود توسط مسیریابها مورد استفاده و پردازش قرار می گیرد.

دقت کنید که برای تحلیل برخی از مکانیزمها و تاکتیکهای حمله، مجبور هستید با فیلدهای متعدد بستة IP آشنا باشید؛ زیرا برخی از این فیلدها مورد سوء استفادة نفوذگران قرار می گیرند. در فصل نهم یاد خواهید گرفت که هر گاه برخی از این فیلدها بصورت عمدی و حساب شده دستکاری شود، منجر به اختلال در ماشین نهایی خواهد شد.



[1] TCP/IP Protocol Stack

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

[3] International Standard Organization

[4] Open System Interconnection

[5] Channel Capacity and Bit Rate

[6] Medium Access Sublayer

[7] Connectionless

[8] Connection Oriented

[9] Segment

[10] Remote Login

[11] Accounting

[12] Data Compression

[13] Encryption

[14] Decryption

[15] Device Driver

[16] Distant Packet

[17] Data Field/Payload

[18] Bit oriented در اینجا کوچکترین واحد اطلاعات که می تواند بطور مستقل ارسال شود یک بیت خواهد بود.

[19]Byte oriented در اینجا کوچکترین واحد اطلاعات که می تواند بطور مستقل ارسال شود یک بایت خواهد بود.

[20] Ack/Nack

[21] Multicast

[22] Reliable

[23] Application Program Interface

[24] TEINET/Teminal Emulation

[25] Autonomous

[26] Backbone

[27] Internet Service Provider(ISP)

[28] Internet protocol

[29] Fragment

[30] اصطلاح دیتاگرام در ادبیات شبکه های کامپیوتری به معنای متفاوت و در موارد متعدد استفاده شده است. لذا به مورد استفادة آن دقت داشته باشید.


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

دانلود تحقیق روانشناسی: پول چگونه بر تندرستی تاثیر می گذارد؟

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

فروشنده فایل

کد کاربری 4457

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


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

دانلود تحقیق روانشناسی: مقایسه درمان پسخوراند عصبی در مقایسه با درمان دارویی

مقدمه پسخوراند عصبیکه همچنین به عنوان پسخوراند زسیتی هم شناخته می شود یک نوع از درمانADHA(اختلال کمبود توجه،بیش فعالی)است که در آن افراد یاد میگیرند که الگوهای کلی EEG(موج نگار الکتریکی مغز) شان را به شکلی که با توجه متمزکزسازگار شود،تغییر دهنداین امر با جمع آوری داده هایEEG در افرادی که درحال تمرکز بر روی محرک های ارائه شده بر روی صفحه کامپیوتر ه
دسته بندی روانشناسی و علوم تربیتی
فرمت فایل docx
حجم فایل 16 کیلو بایت
تعداد صفحات فایل 4
تحقیق روانشناسی: مقایسه درمان پسخوراند عصبی در مقایسه با درمان دارویی

فروشنده فایل

کد کاربری 4457

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


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

دانلود امنیت شبکه های کامپیوتری

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

فروشنده فایل

کد کاربری 1024

فهرست مطالب

مقدمه ای بر تشخیص نفوذ (Intrusion Detection)

مقدمه ای بر شبکه خصوصی مجازی (V P N)

مقدمه ای بر IPSec

مقدمه ای بر فایروال

مفاهیم امنیت شبکه

رویدادهای امنیتی و اقدامات لازم در برخورد با آنها (Incident Handling)

امنیت در تولید نرم افزارها

مقایسه تشخیص نفوذ و پیش گیری از نفوذ

10 نکته برای حفظ امنیت

امنیت تجهیزات شبکه

هفت مشکل امنیتی مهم شبکه های بی سیم 802.11 :‌بخش اول

هفت مشکل امنیتی مهم شبکه های بی سیم 802.11 :‌بخش دوم

امنیت شبکه لایه بندی شده (۱)

امنیت شبکه لایه بندی شده (۲)

امنیت شبکه لایه بندی شده (۳)

امنیت شبکه لایه بندی شده (۴)

امنیت شبکه لایه بندی شده ( (۵

امنیت شبکه لایه بندی شده (۶)

اولین اتصال یک کامپیوتر به اینترنت(۱)

اولین اتصال یک کامپیوتر به اینترنت(۲)

کاربرد پرا کسی در امنیت شبکه (۱)

کاربرد پرا کسی در امنیت شبکه (۲)

کاربرد پرا کسی در امنیت شبکه (۳)

امنیت در شبکه های بی سیم(بخش اول): مقدمه

امنیت در شبکه های بی سیم(بخش دوم): شبکه‌های محلی بی‌سیم

امنیت در شبکه های بی سیم (بخش سوم): عناصر فعال و سطح پوشش WLAN

امنیت در شبکه های بی سیم (بخش چهارم): امنیت در شبکه های محلی بر اساس استاندارد 802.11

امنیت در شبکه های بی سیم (بخش پنجم): سرویس‌های امنیتی WEP - Authentication

امنیت در شبکه های بی سیم (بخش ششم): سرویس های امنیتی 802.11b – Privacy و Integrity

امنیت در شبکه های بی سیم (بخش هفتم) : ضعف های اولیه ی امنیتی WEP

امنیت در شبکه های بی سیم-بخش هشتم

روش‌های معمول حمله به کامپیوترها (۱)

روش های معمول حمله به کامپیوترها (۲)

عدم پذیرش سرویس یا DoS (بخش اول)

عدم پذیرش سرویس(۳):روش های مقابله

عدم پذیرش سرویس (۲) : انواع حملات

کرمهای اینترنتی مفید (۱)

کرمهای اینترنتی مفید (۲)

نرم‌افزارهای جا سوسی و مقابله با آنها (۱)

نرم‌افزارهای جا سوسی و مقابله با آنها (۲)

نرم‌افزارهای جا سوسی و مقابله با آنها (۳)

نبرد فیلترها و تولیدکنندگان اسپم (۱)

نبرد فیلترها و تولیدکنندگان اسپم (۲)

ویروس و ضدویروس

طرز کار برنامه های ضد ویروس

قابلیت‌های نرم‌افزارهای ضدویروس

DomainKeys: اثبات هویت فرستنده ایمیل و حفاظت از آن

محافظت در مقابل خطرات ایمیل (۱)

محافظت در مقابل خطرات ایمیل (۲)

پروتکل های انتقال فایل امن

حمله به برنامه‌های وبی (۱)

حمله به برنامه‌های وبی (۲)

حمله به برنامه های وبی (۳)

حمله به برنامه های وبی (4): حملات پیشرفته تر

حمله به برنامه های وبی (5):حمله به نشست

رمزنگاری

کلیدها در رمزنگاری

شکستن کلیدهای رمزنگاری

رمزنگاری در پروتکل‌های انتقال

دنیای هکرها

پنجره آسیب پذیری، دلیلی برای هک شدن


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

دانلود امنیت در شبکه های بی سیم

از آن‌جا که شبکه‌های بی سیم، در دنیای کنونی هرچه بیشتر در حال گسترش هستند، و با توجه به ماهیت این دسته از شبکه‌ها، که بر اساس سیگنال‌های رادیویی‌اند، مهم‌ترین نکته در راه استفاده از این تکنولوژی، آگاهی از نقاط قوت و ضعف آن‌ست
دسته بندی کامپیوتر و IT
فرمت فایل doc
حجم فایل 591 کیلو بایت
تعداد صفحات فایل 85
امنیت در شبکه های بی سیم

فروشنده فایل

کد کاربری 1024

امنیت در شبکه های بی سیم

مقدمه :

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


بخش اول

1-1 شبکه های بی سیم، کاربردها، مزایا و ابعاد

تکنولوژی شبکه های بی سیم، با استفاده از انتقال داده ها توسط امواج رادیویی، در ساده ترین صورت، به تجهیزات سخت افزاری امکان می دهد تا بدون استفاده از بسترهای فیزیکی همچون سیم و کابل، یا یکدیگر ارتباط برقرار کنند. شبکه های بی سیم بازه وسیعی از کاربردها، از ساختارهای پیچیده ای چون شبکه های بی سیم سلولی - که اغلب برای تلفن های همراه استفاده می شد- و شبکه های محلی بی سیم (WLAN- wireless LAN ) گرفته تا انواع ساده ای چون هدفون های بی سیم، مرا شامل می شوند. از سوی دیگر با احتساب امواجی همچون مادون قرمز، تمامی تجهیزاتی که از امواج مادون قرمز نیز استفاده می کنند، مانند صفحه کلیدها، ماوس ها و برخی از گوشی های همراه، در این دسته بندی جای می گیرند. طبیعی ترین مزیت استفاده از این شبکه ها عدم نیاز به ساختار فیزیکی و امکان نقل و انتقال تجهیزات متصل به این گونه شبکه ها و هم چنینی امکان ایجاد تغییر در ساختار مجازی آن ها است. از نظر ابعاد ساختاری، شبکه های بی سیم به سه دسته تقسیم می شوند: WPAN , WlAN, WWAN .

مقصود از WWAN که مخفف Wireless WAN است، شبکه ها ساختار بی سیم سلولی مورد استفاده در شبکه های تلفن همراه است. WLAN پوششس محدودتر، در حد یک ساختمان یا سازمان، و در ابعاد کوچک یک سالن یا تعدادی اتاق، را فراهم می کند. کاربرد شبکه های WPAN یا Wireless Personal Area Netuork برای موارد خانگی است. ارتباطاتی چون Blue tooth و مادون قرمز در این دسته قرار می‌گیرند.

شبکه های WPAN از سوی دیگر در دسته شبکه های Ad Hoc نیز قرار می گیرند. در شبکه های Ad Hoc یک سخت افزار، به محض ورود به فضای تحت پوشش آن، به صورت پویا به شبکه اضافه می شود. مثالی از این نوع شبکه Blue tooth است. در این نوع، تجهیزات مختلفی از جمله صفحه کلید، ماوس، چاپگر، کامپیوتر کیفی یا جیبی و حتی تلفن همراه، در صورت قرار گرفتن در محیط تحت پوشش، وارد شبکه شده و امکان رد و بدل داده ها با دیگر تجهیزات متصل به شبکه را می یابند. تفاوت مکان شبکه های Ad Hoc با شبکه های محلی بی سیم (WLAN) در ساختار مجاز آنها است. به عبارت دیگر، ساختار مجازی شبکه های محلی بی سیم بر پایه طرحی استیاست در حالی که شبکه های Ad Hoc از هر نظر پویا هستند. طبیعی است که در کنار مزایایی که این پویایی برای استفاده کنندگان فراهم می کند، حفظ امنیت چنین شبکه های نیز با مشکلات بسیاری همراه است. با این وجود، عملاً یکی از راه حل های موجود برای افزایش امنیت در این شبکه ها، خصوصاً در انواعی همچون Blue tooth کاشتن از شعاع پوشش سیگنالهای شبکه است. در واقع مستقل از این حقیقت که عملکرد Blue tooth بر اساس فرستنده و گیرنده های کم توان استوار است و این مزیت در کامپیوتر های جیبی برتری قابل توجهی محسوب می گردد، همین کمی توان سخت افزار مربوطه، موجب کاهش محدود تحت پوشش است که در بررسی امنیتی نیز مزیت محسوب می گردد. به عبارت دیگر این مزیت به همراه استفاده از کدهای رمز نه چندان پیچیده، تنها ضربه های امنیتی این دسته از شبکه های به حساب می آیند.

2-1 اساس شبکه های بی سیم

در حال حاضر سه استاندارد در شبکه های Wireless با یکدیگر در حال رقابت هستند.

استاندارد (802.11b ) Wi-Fi که بر مناسبی برای استفاده در مکان های اداری دارد.

استاندارد 802.11a که پهنای باند بیشتری داشته و مشکلات تداخل فرکانس رادیویی آن کمتر می باشد ولی برد کوتاهتری دارد.

استاندارد Blue tooth برای برد کوتاه مثل شبکه های موقت در اتاق های کنفرانس، مدرسه ها، یا خانه ها استفاده می شود.

1-2-1 حکومت عالی Fi - Wi

Fi - Wi در حال حاضر محبوب ترین و ارزان ترین شبکه محلی بی سیم (Wireless LAN ) را دارد.

Fi - Wi در طیف رادیویی 2.4GH2 عمل می کند و می تواند سرعت انتقال اطلاعات را تا 11ubps با دامنه 30 متر بالا ببرد.

تعادلی که Fi - Wi بین اقتصاد، پهنای بلند، و مخصوصاً برد برقرار کرده، آن را به صورت استانداردی برجسته برای تجارت درآورده، و کارمندان بسیاری از این تکنولوژی برای کار و محاسبات شخصی استفاده می کنند. WECA[1] سهم خود را با تضمین صدها هزار محصول و اطمینان از کار و هماهنگی آنها با یکدیگر انجام داده، اما در Fi - Wi دو اشکال دارد.

اولاً از فضای هوایی، مشترکاً برای موبایل B;ue tooth امواج[2] رادیویی مهم و بقیه وسایل استفاده می کند. بنابراین، این تداخل امواج رادیویی، آ. را آسیب پذیر می کند.

ثانیاً به دلیل انتقال داده در هوا و وجود دیوار و دیگر موانع اجتناب ناپذیر، عملکرد واقعی به 5Mbps، یا تقریباً نصف سرعت مورد انتظار از آن می رسد.

2-2-1 802.11a یک استاندارد نوپا

802.11a دو مزیت بیشتر نسبت به Wi-Fi در فرکانس 5.35GH2 E5.15GH2 کار می کند که کمتر مورد استفاده است، در نتیجه تداخل امواج رادیویی در آن کمتر است. ثانیاً پهنای باند آن بسیار بالا است، و از نظر تئوری به 54cubp می رسد.

با وجود این که عملکرد واقعی آن نزدیک به 22Mbps است، همچنان فضای خالی برای انتقال صوت و تصویر دیجیتالی با کیفیت بالا و بقیه فایل های بزرگ، و همچنین به اشتراک گذاشتن اتصال Broad band در شبکه بیشتر از استاندارد Wi-Fi است و بعضی از تولید کننده ها، روشهای مخصوصی ارائه می دهند، که عملکرد آن را کمی بهتر می کند.

مشکل اصلی 802.11a از Wi-Fi در حال کاهش است، ولی در حال حاضر تجهیزات 802.11a بسیارگران تر از Wi-Fi است.

802.11a از Wi-Fi با یکدیگر سازگار نیستند، زیرا از دو تکنولوژی رادیویی متفاوت و دو قمست متفاوت از طیف رادیویی استفاده می کنند. به هر حال، تجهیزات استانداری برای هر دو تکنولوژی وجود دارد، که تبدیل آنها به یکدیگر را بسیار راحت کرده است. اگر می خواهید یکی از این دو استاندارد را انتخاب کنید، عوامل زیر را در نظر بگیرید:

اگر در حال حاضر از یکی از این استانداردها در کار خود استفاده می کنید، حتماً از همان استاندارد در منزل استفاده کنید، این کار ارتباط ر راحت تر می کند. اگر از لحاظ قیمت و سازگاری ( تجهیزاتی که برای سازگاری با استانداردهای دیگر هستند)، مشکلی ندارید، 802.11a کارایی بهرتری دارد و می تواند ارزش پرداخت هزیهنه اضافی را داشته باشد. اما اگر می خواهید دامنه بیشتری را با قیمت کمتر، تحت پوشش قرار دهید، Wi-Fi انتخاب بهتری است.

3-2-1 Blue tooth قطع کردن سیم ها

Blue tooth بطور اصولی یک فن آوری جایگزین کابل است. استاندارد فعلی Setup کردن کامپیوتر را در نظر بگیرید: یک صفحه کلید یک ماوس و مانیتور و احتمالاً یک چاپگر یا اسکنر به آن متصل هستند. اینها معمولاً به وسیله کابل به کامپیوتر متصل می شوند. یک تراشه Blue tooth برای جایگزین نمودن کابل ها بوسیله گرفتن اطلاعات حمل شده بصورت معمولی توسط یک کابل و انتقال آن در یک فرکانس خاص به یک تراشه گیرنده Blue tooth در کامپیوتر، تلفن، چاپگر یا هر چیز دیگری طراحی شده است. Blue tooth که در ابتدا توسط Ericsson ایجاد شده، استانداردی برای تراشه های رادیویی ارزان قیمت و کوچکی است که درون کامپیوترها، تلفن ها، موبایل ها و چاپگر ها و ممیره قرار می گیرد.

این ایده اصلی بود، اما سریعاً آشکار شد که کارهای بیشتری امکان پذیر است. شما می توانید اطلاعات را بین هر دو دستگاهی انتقال دهید، کامپیوتر و چاپگر، صفحه کلید و تلفن و موبایل، و غیره. هزینه کم تراشه Blue tooth ( حدود 5 درصد) و مصرف نیروی برق پایین آن، به این معنی است که می توان آن را تقریباً در هر جایی قرار داد.

می توانید تراشه های Blue tooth را در کانتینر های باری برای تشخیص بار در هنگام حرکت بار در گمرک یا در انبار داشته باشید، یا یک هدست که با یک تلفن موبایل در جیب شما یا در اتاق دیگری مرتبط می گردد. یا یک e-mail که به دستگاه موبایل شما ارسال شده و به محض رسیدن شما به محدوده کامپیوتر اداره چاپ می شود.

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

کابل ها در اداره ها و خانه ها دردسر زیادی را ایجاد می کنند. اکثر ما این تجربه را داشته ایم که سعی نموده ایم تا سردر بیاوریم کدام کابل به کجا می رود و در سیم های پیچیده شده در پشت میز کار خود سردر گم شده ایم. رفع این مشکل با استفاده از تکنولوژی Blue tooth انجام می گیرد. Bluetooth همچنین یک استاندارد جهانی را برای ارتباط بی سیم ارائه می دهد. و پس از سال 2002 یک ریز تراشه Blue tooth در هر دستگاه دیجیتالی ساخته شده قرار خواهد گرفت. روش کار چنین است که اگر دو دستگاه Blue tooth در فاصله 10 متری از یکدیگر قرار بگیرند، می توانند با هم ارتباط برقرار کنند و چون Blue tooth از یک ارتباط رادیویی بهره می گیرد، تراشه نیازی به یک خط مرئی برای برقراری ارتباط ندارد.

تراشه رادیویی روی باند فرکانس 2.4GH2 قابلیت دسترسی جهانی دارد عمل می کند و سازگاری را در کل دنیا تضمین می کند فن آوری های Blue tooth، تمامی ارتباطات را بطور آنی برقرار می کنند و انتقال سریع و ایمن داده و صدا را ارائه می دهند.

در اینجا برخی کارهای ساده ای که می توانند بعنوان نتیجه استفاده از تکنولوژی Blue tooth برای ما فراهم شوند را می بینیم.

  • یک شبکه شخصی که امکان اجتماع بدون درز منابع محاسباتی یا موبایل را در اتومبیل شما با بسترهای محاسباتی و ارتباطی دیگر در محل کار و خانه فراهم می نماید.
  • · سوئیچ خودکار ما بین تلفن و موبایل Hands - Free و دستگاه موبایل
  • · بروز رسانه های بی سیم از تمامی فهرست های انجام شدنی، فهرست های ارتباطی و غیره، به محض اینکه به محدوده کامپیوتر خود برسید.
  • · انجام عمل همزمان سازی با شرکت های محلی و ارائه دهندگان خدمات برای اطلاعات Push و تجارت الکترونیکی.
  • · دسترسی مطمئن به شبکه های داده خصوصی، از جمله سیستم های e- mail اداره شما.
  • · تشخیص Over- the - air در اتومبیل شما، برای سیستم مدیریت موتور و برنامه نویسی مجدد آن در صورت نیاز.

در آینده، احتمال می رود Blue tooth استاندارد دهها میلیون تلفن موبایل، PC، Laptop و دامنه وسیعی از دستگاه های الکترونیکی دیگر باشد. در نتیجه باید تقاضای زیادی برای برنامه های ابتکاری جدید، خدمات با ارزش افزوده، رهیافت های to-end و غیره وجود داشته باشد. احتمالات نامحدود هستند.

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

4-2-1 پشتیبانی خصوصی: Blue tooth

نام Blue tooth از نام یک پادشاه دانمارکی ( به نام Harald Blaatand ) که در قرن دهم زندگی می کرد، گرفته شده است. Blue tooth تا حدی متفاوت از دو استاندارد Wi-Fi و 802.11a می باشد. Blue tooth انعطاف پذیری بیشتری دارد ولی در مقیاس کوچکتر شبکه های[3] خانگی عمل می کند. عملکرد واقعی آن، فقط 300Kbps است و برد آن تقریباً 10 متر است.

Wi-Fi و 802.11a برای برقراری ارتباط بین دستگاه ها به Adaptor، مسیریابها Gateway ، Routers ها، ایستگاه های Access Point و برنامه های راه اندازی هم زمان، نیاز دارند. اما برخلاف آنها، تمام دستگاه هایی که امواج رادیویی و آنتن های Blue tooth داشته باشند، با تدارکات کمی، می توانند با یکدیگر ارتباط برقرار کنند. دستگاه هایی که با اشعه مادون قرمز کار می کنند، روشی برای انتقال فوری هستند. Blue tooth به وسیله جانشین کردن پورت های این دستگاه ها آنها را متعادل می کند و این کار را با برد بهتر و بدون نیاز به دید مستقیم (Line -of- sign) انجام می دهد. حضار در جلسات به وسیله Blue tooth هایی که به Blue tooth مجهز شده، می توانند فایل ها را از یک سر میز کنفرانس، به سر دیگر انتقال دهند، و یا فایلی را به پرینتری که به Blue tooth مجهز شده بفرستند، بدون نصب هیچ درایوی. کیوسک های مجهز به Blue tooth در فرودگاه ها و Houses Coffee به مشا اجازه می دهند تا از طریق کامپیوتر[4] کیفی یا کامپیوتر قابل حمل خود به اینترنت متصل شوید.

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

اما با تمام منفعت که در تئوری برای Blue tooth وجود دارد، واقعیت این است که در حال حاضر، آشفتگی در سخت افزار و نرم افزار سازگار وجود دارد، به دلیل اینکه Blue tooth و Wi-Fi ، هر دو از یک رنج فرکانسی استفاده می کنند، در پهنای باند آنها تداخل صورت می گیرد و عملکرد را تا 10%، با بیشتر کاهش می دهد.

5-2-1 آنچه پیش رو داریم

با ورود این استانداردها به بازار، طی چند سال آینده، الفبای Wireless پیچیده تر خواهد شد. برای مثال 802.11g پهنای باند Wi- Fi را تا 54Mbps افزایش خواهد داد ( در عمل 22Mbps )، در همین حال 802.11I ، تعدادی از سوارخ های امنیتی را در پروتکل WEP خواهد بست Blue tooth جدید در فرکانس بالاتر عمل خواهد کرد، در نتیجه دو برابر پهنای باند فعلی اش بهره می دهد.

ساختما ن ها می توانند سیگنالهای Wireless شما را ببلعند، به همین دلیل اسکلت اداره یا منزلتان - مکان دیوارها، حالت تالار ( راهرو)، و درها - همه چیز را به حساب آورد - اگر شما نقشه کف اتاقتان را نادیده بگیرید به شبکه ای که در هر گوشه و کناری قابل دسترسی است، خاتمه می دهید.

3-1 منشا ضعف امنیتی در شبکه های بی سیم و خطرات معمولی

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

در مجموع، در تمامی دسته های شبکه های بی سیم، از دید امنیتی حقایقی مشترک صادق است:

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

  • · نفوذ گران، با گذر از تدابیر امنیتی موجود، می توانند به راحتی به منابع اطلاعاتی موجود بر روی سیستم های رایانه ای دست یابند.

  • · اطلاعات حیاتی که یا رمز نشده اند و یا با روشی با امسنیت پایین رمز شده اند، و میان دو گروه در شبکه های بی سیم در حال انتقال می باشند، می توانند توسط نفوذ گران سرقت شده یا تغییر یابند.

  • · حمله Dos ها به تجهیزات و سیستم های بی سیم بسیار متداول است.

  • · نفوذ گران با سرقت کدهای عبور و دیگر عناصر امنیتی مشابه کاربران مجاز در شبکه های بی سیم، می توانند به شبکه های مورد نظر بدون هیچ مانعی متصل گردند.

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

  • · یک نفوذگر می تواند از نقاط مشترک میان یک شبکه بی سیم در یک سازمان و شبکه های سیمی آن ( که اغلب موارد شبکه اصلی و حساس تری محسوب می گردد) استفاده کرده و با نفوذ به شبکه بی سیم عملاً راهی برای دست یابی به منابع شبکه سیمی نیز بیابد.

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

فهرست مطالب

عنوان صفحه

بخش اول

1-1 شبکه‌های بی سیم، کاربردها، مزایا و ابعاد............................................. 2

2-1 اساس شبکه‌های بی سیم................................................................ 3

1-2-1 حکومت عالی Wi-Fi............................................................... 3

2-2-1 802.11a یک استاندارد نوپا...................................................... 4

3-2-1 Bluetooth- قطع کردن سیم‌ها................................................... 4

4-2-1 پشتیبانی خصوصی: Bluetooth.................................................. 6

5-2-1 آنچه پیش‌رو داریم................................................................... 7

3-1 منشأ ضغف امنیتی در شبکه‌های بی‌سیم و خطرات معمول............................ 7

بخش دوم

شبکه‌های محلی بی‌سیم...................................................................... 10

1-2 پیشینه..................................................................................... 10

2-2 معماری شبکه‌های محلی بی‌سیم........................................................ 11

بخش سوم

عناصر فعال و سطح پوشش WLAN ...................................................... 14

1-3 عناصر فعال شبکه‌های محلی بی‌سیم.................................................... 14

1-1-3 ایستگاه بی‌سیم........................................................................ 14

2-1-3 نقطة دسترسی......................................................................... 14

3-1-3 برد و سطح پوشش................................................................... 14

3-1-3 برد و سطح پوشش................................................................... 14

بخش چهارم

امنیت در شبکه‌های محلی بر اساس استاندارد 802.11.................................... 18

1-4 قابلیت‌ها و ابعاد امنیتی استاندارد 802.11............................................. 19

1-1-4 Authentication................................................................. 19

2-1-4 Confidentiality................................................................. 19

3-1-4 Intergrity.......................................................................... 20

بخش پنجم

سرویسهای امنیتی Wep Authentication............................................. 21

1-5 Authentication.................................................................... 21

1-1-5 Authentication بدون رمزنگاری.............................................. 22

2-1-5 Authentication با رمزنگاری RC4.......................................... 22

بخش ششم

سرویسهای امنیتی 802.11b-privacy و integrity................................... 24

1-6 privacy................................................................................ 24

2-6 integrity.............................................................................. 25

بخش هفتم

ضعف‌های اولیه امنیتی WEP................................................................ 27

1-7 استفاده از کلیدهای ثابت WEP....................................................... 27

2-7 Initialization........................................................................ 28

3-7 ضعف در الگوریتم...................................................................... 28

4-7 استفاده از CRC رمز نشده............................................................. 28

بخش هشتم

خطرها، حملات و ملزومات امنیتی .......................................................... 30

بخش نهم

پیاده سازی شبکه بی سیم..................................................................... 33

1-9 دست به کار شوید....................................................................... 33

2-9 دندة درست را انتخاب کنید............................................................ 33

3-9 راه‌اندازی یک شبکه بی‌سیم............................................................ 34

4-9 دستورالعمل‌ها را بخوانید................................................................ 35

5-9 محافظت از شبکه........................................................................ 36

بخش دهم

برنامه‌نویسی سیستمهای بی سیم و موبایل (معرفی WAP) ................................ 39

1-10 WAP چیست؟ ....................................................................... 39

2-10 ایدة WAP ........................................................................... 40

3-10 معماری WAP ....................................................................... 40

4-10 مدل WAP ........................................................................... 41

5-10 Wap تا چه اندازه‌ای امن است؟ ..................................................... 42

بخش یازدهم

مفاهیم امنیت شبکه .................................................................................. 43

1-11 منابع شبکه .................................................................................... 43

2-11 حمله ........................................................................................... 44

3-11 تحلیل و خطر ................................................................................. 45

4-11 سیاست امنیتی ................................................................................. 45

5-11 طرح امنیت شبکه ............................................................................. 47

6-11 نواحی امنیتی .................................................................................. 47

7-11 مرکزی برای امنیت شبکه .................................................................... 48

8-11 چرا service directory ................................................................. 49

9-11 اکتیو دایرکتوری چگونه کار می کند ...................................................... 51

10-11 مزایای اکتیو دایرکتوری ................................................................... 52

11-11 افزایش همکاری بین شبکه ها ............................................................. 53

بخش دوازدهم

1-12 کنترل دولتی .................................................................................. 55

2-12 کنترل سازمانی ............................................................................... 55

3-12 کنترل فردی .................................................................................. 55

4-12 تقویت اینترانت ها ........................................................................... 56

5-12 وجود یک نظام قانونمند اینترنتی ....................................................... 56

6-12 کار گسترده فرهنگی .................................................................... 56

7-12 فایروالها ................................................................................... 57

8-12 سیاستگذاری ملی در بستر جهانی ....................................................... 59

9-12 اینترنت و امنیت فرهنگی ایران .......................................................... 63

10-12 جمع بندی ............................................................................... 68

بخش سیزدهم

امنیت تجهیزات شبکه ........................................................................... 70

1-13 امنیت فیزیکی ............................................................................. 71

2-13 امنیت منطقی .............................................................................. 75

3-13 ملزومات و مشکلات امنیتی ارائه دهندگان خدمات .................................. 78

فهرست منابع ..................................................................................... 80


[1]- Wireless Ethernet compatibitity Alliance

[2]- Security radios

[3] - Personal area network

[4] - Laptop


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

دانلود طراحی لباس با کمک کامپیوتر (CAD)

ظهور کامپیوتر اگرچه رویدادی علمی بود، اما انقلاب صنعتی را که از بسیاری جهات قابل مقایسه با انقلابهای صنعتی دیگر نیست پدید آورد
دسته بندی کامپیوتر و IT
فرمت فایل doc
حجم فایل 23 کیلو بایت
تعداد صفحات فایل 27
طراحی لباس با کمک کامپیوتر (CAD)

فروشنده فایل

کد کاربری 1024

طراحی لباس با کمک کامپیوتر (CAD)

ظهور کامپیوتر اگرچه رویدادی علمی بود، اما انقلاب صنعتی را که از بسیاری جهات قابل مقایسه با انقلابهای صنعتی دیگر نیست پدید آورد. کامپیوتر در قرن اخیر در کشورهای صنعتی و پیشرفته به سرعت گسترش یافته و حیطه عمل و حکومت ان تمام فعالیت های انسانی را در برگرفته است.
طرز کار و اداره و مدیریت دستگاههای اقتصادی و اجتماعی و آموزشی و اداری و دفاعی پس از اختراع و استفاده از کامپیوتر تحول عظیمی یافت که زندگی بشر را در نیمه دوم قرن بیستم کاملاً تحت تسلط خود در آورد.
یکی از جنبه های کاربرد کامپیوتر، تأثیرگذاریبر طراحی پارچه و لباس و سایزبندی و محاسبه ضایعات پارچه هنگام برش و علامت گذاری بر روی الگو برای دوخت است.
کامپیوترها به چهار گوره تقسیم می شوند:
1- پردازنده مرکزی MAINFRAME
کامپیوتر بزرگی است که ظرفیت آن بسیار بیشتر از یک کامپیوتر کوچک یا ریز کامپیوتر است.
2- کامپیوتر کوچک MINICOMPUTER
3- کامپیوتر خانگکی HOME COMPUTER
4- کامپیوتر شخصی PERSONAL COMPUTER کامپیوتری که در طراحی استفاده می شود، از نوع کامپیوترهای بزرگ با قدرت زیاد POWER of MINI MAINFRAME است. امروزه تعداد این گونه کامپیوترها بسیار افزایش یافته است و با کاهش قیمتهای کامپیوتر CAD کمپانیهای کوچک نیز قادر به تهیه آن شده اند. انواع مختلف نرم افزار و برنامه ها و زبان کامپیوتر و عملیات مربوط را می توان به راههای گوناگون بر روی صفحه مانیتور مشاهده کرد.
خطوط پیشکل ، بردار ، برش الگو
برای کشیدن یک تصویر صفحه نمایش را به مربع های کوچک زیادی تقسیم می کنمی. و سپس با سیاه کردن برخی از آنها شکل مورد نظر را به دست می آوریم. این مربع های کوچک یخته تصویری می گویند. اطلاعات یاخته تصویری برای ویدئو ، طرح های کشباف، طراحی پارچه های بافته شده در طرح های چاپ پارچه در نساجی بسیار مناسب است، البته پس از سیاه کردن تمام صفحه و سفید کردن بعضی از مربعها، می توان به تصویر (منفی) یک شکل دست یافت، لیکن ما در اینجا برای آسانی کار همه نمونه ها را از تصویرهای (مثبت) انتخاب می کنیم. دستگاههای جدیدتر، نگاره سازی ریزنگاشت «HIGH RESOLUTION» می توان تصویرها را با جزئیات بیشتری ارائه کند. نقطهها بر روی صفحه کامپیوتر نشانگر یاخته تصویری هستند خطوط کوچک بین دو نقطه با برداری که هم دارای اندازه و هم جهت فضایی است ثبت می شود. VECTOR LINE به طور کلی هر دستگاه کامپیوتر عملیات زیر را انجام می دهد.
1- خواندن دستورالعملها (قسمت ورودی)
2- ضبط کردن دستورالعملها و اطلاعات لازم در حافظه و استفاده به موقع از آنها؛
3- اجرای عملیات منطقی و محاسبات
4- نظارت بر اجرای کلیه و عملیات
5- چاپ یا ظاهر کردن نتایج (قسمت خروجی)
کاربرد کامپیوتر در الگو و دوخت
تعداد محدودی از کارخانجات بزرگ تولید لباس از کامپیوتر استفاده می کنند. بسیاری از آنها معتقدند که با کامپیوتر فقط می توان طرح الگوها را تغییر داد و انها را اصلاح کرد و این دستگاه در برش الگو کاربردی ندارد. برخی از دلائل عدم استفاده از کامپیوتر عبارت است از :
1- شرکت هایی که سرمایه زیادی دارند. و طرفدارتکنولوژی مدرن جدیدند و در صدد بالابردن کیفیت کار هستند علیرغم قیمت بالای این دستگاه به علت درآمد حاصل از آن و تأثیری که بر روی محصولات کارخانه بجا خواهد گذارد این دستگاه را برای تسریع کارهای مربوط به الگو و دوخت می خرند و استفاده می کنند، لیکن تولیدیها و شرکتهای کوچک به علت هزینه سنگین و آموزش نمی توانند از این دستگاه استفاده کنند.
2- بسیاری از طراحان تمایلی به تغییر روش قدیمی و سنتی خود که در آن مهارت تجربه کافی کسب کرده اند ندارند و ترس از روبرو شدن با دستگاه پیچیده ای متشکل از قطعات الکترونی و سازشی با شرایط جدید و مشکلات آموزشی، آنها را از این کار باز می دارد.
3- شرکت ها با مشکل تربیت تکنسین و کمبود افراد متخصص در این زمینه مواجه هستند. آموزش CAD برای برش الگو، سایزبندی و غیر و ... بسیار گران است شرکت های می بایست هزینه سنگینی را متقبل شوند. اگر شرکت ها و تولیدیهای لباس، آماده کردن و اجرای طرح و برش الگو را با کامپیوتر انجام دهند و به افراد آموزش لازم را در این زمینه بدهند، در مدت زمان کوتاهی تأثیر متقابل آن را در انسان و ماشین های دوخت در می یابند. در اینجا نمونه کارهای کامپیوتر را به اختصار توضیح می دهیم.
رسم خطو مستقیم و منحنی و طرح های آزاد
پاک کردن خطوط و یا قسمتهایی از آن، امتداد و گسترش خطوط.
تغییر خطوط به اندازه دلخواه ، یا به طول های ویژه.
اندازه گیری خطوط الگو ، تمام و یا قسمت های مورد نظر.
تغییر محیط شکلها در الگو.
جدا کردن قسمتهای مختلف الگو.
اتصال کامل قسمت های جدا شده یا قسمتی از آنها.
حرکت دادن قسمت هایی از الگو به اطراف.
چرخاندن و قرینه کردن الگوها.
اتصال ساسونها و افزودن گشادی (اوازمان) به الگو.
تکمیل الگو ، افزودن اضافه درز برای دوخت، مشخص کردن علائم روی الگوف چرتها و محل اتصال قسمت عهای مختلف الگو.
دادن اطلاعات لازم در مورد خصوصیات پارچه (طول، عرض، و طرح روی پارچه). مدل لباس، سایزهای مورد لزوم، محاسبه ضایعات پارچه و انتخاب سایزهای مناسب برای جلوگیری از هدر رفتن پارچه و کاهش در قیمت پارچه مصرفی.
طرحهای گرافیکی
شکل صفحه 201
برگه مشخصات طرح و برش
شکل صفحه 202
کاهش قیمت لباس با استفاده از نقشه ای که کامپیوتر ارائه می دهد.
پس از ساختن الگو و سایزبندی، کامپیوتر با استفاده از کلیه اطلاعات برگه مشخصات طرح و برش و مشخصات پارچه، نقشه قرار دادن الگو را بر روی پارچه به نحوی که ضایعات به حداقل برسد، سایزهای مناسب و تعداد آنها برای تولید انبوه، کلیه محاسبات را انجام می دهد. نقشه را می توان بر روی صفحه مانیتور کامپیوتر مشاهده کرد. درتولیدیها، این کار را برشکار در مدت زمانی طولانی انجام می دهد و با جا به جا کردن قطعات چیده شده الگو بر روی پارچه سعی می کند از خرد شدن پارچه جلوگیری کند. تا بر قیمت لباس فزوده نشود. حال آنکه کامپیوتردر مدت زمان کوتاهی، کلیه اطلاعات دقیق و لازم را فراهم می آورد و از اتلاف وقت جلوگیری و بر سرعت کار می افزاید.

ظهور کامپیوتر اگرچه رویدادی علمی بود، اما انقلاب صنعتی را که از بسیاری جهات قابل مقایسه با انقلابهای صنعتی دیگر نیست پدید آورد. کامپیوتر در قرن اخیر در کشورهای صنعتی و پیشرفته به سرعت گسترش یافته و حیطه عمل و حکومت ان تمام فعالیت های انسانی را در برگرفته است. طرز کار و اداره و مدیریت دستگاههای اقتصادی و اجتماعی و آموزشی و اداری و دفاعی پس از اختراع و استفاده از کامپیوتر تحول عظیمی یافت که زندگی بشر را در نیمه دوم قرن بیستم کاملاً تحت تسلط خود در آورد.یکی از جنبه های کاربرد کامپیوتر، تأثیرگذاریبر طراحی پارچه و لباس و سایزبندی و محاسبه ضایعات پارچه هنگام برش و علامت گذاری بر روی الگو برای دوخت است. کامپیوترها به چهار گوره تقسیم می شوند: 1- پردازنده مرکزی MAINFRAME کامپیوتر بزرگی است که ظرفیت آن بسیار بیشتر از یک کامپیوتر کوچک یا ریز کامپیوتر است. 2- کامپیوتر کوچک MINICOMPUTER 3- کامپیوتر خانگکی HOME COMPUTER 4- کامپیوتر شخصی PERSONAL COMPUTER کامپیوتری که در طراحی استفاده می شود، از نوع کامپیوترهای بزرگ با قدرت زیاد POWER of MINI MAINFRAME است. امروزه تعداد این گونه کامپیوترها بسیار افزایش یافته است و با کاهش قیمتهای کامپیوتر CAD کمپانیهای کوچک نیز قادر به تهیه آن شده اند. انواع مختلف نرم افزار و برنامه ها و زبان کامپیوتر و عملیات مربوط را می توان به راههای گوناگون بر روی صفحه مانیتور مشاهده کرد. خطوط پیشکل ، بردار ، برش الگو برای کشیدن یک تصویر صفحه نمایش را به مربع های کوچک زیادی تقسیم می کنمی. و سپس با سیاه کردن برخی از آنها شکل مورد نظر را به دست می آوریم. این مربع های کوچک یخته تصویری می گویند. اطلاعات یاخته تصویری برای ویدئو ، طرح های کشباف، طراحی پارچه های بافته شده در طرح های چاپ پارچه در نساجی بسیار مناسب است، البته پس از سیاه کردن تمام صفحه و سفید کردن بعضی از مربعها، می توان به تصویر (منفی) یک شکل دست یافت، لیکن ما در اینجا برای آسانی کار همه نمونه ها را از تصویرهای (مثبت) انتخاب می کنیم. دستگاههای جدیدتر، نگاره سازی ریزنگاشت «HIGH RESOLUTION» می توان تصویرها را با جزئیات بیشتری ارائه کند. نقطهها بر روی صفحه کامپیوتر نشانگر یاخته تصویری هستند خطوط کوچک بین دو نقطه با برداری که هم دارای اندازه و هم جهت فضایی است ثبت می شود. VECTOR LINE به طور کلی هر دستگاه کامپیوتر عملیات زیر را انجام می دهد. 1- خواندن دستورالعملها (قسمت ورودی)2- ضبط کردن دستورالعملها و اطلاعات لازم در حافظه و استفاده به موقع از آنها؛ 3- اجرای عملیات منطقی و محاسبات 4- نظارت بر اجرای کلیه و عملیات 5- چاپ یا ظاهر کردن نتایج (قسمت خروجی)کاربرد کامپیوتر در الگو و دوخت تعداد محدودی از کارخانجات بزرگ تولید لباس از کامپیوتر استفاده می کنند. بسیاری از آنها معتقدند که با کامپیوتر فقط می توان طرح الگوها را تغییر داد و انها را اصلاح کرد و این دستگاه در برش الگو کاربردی ندارد. برخی از دلائل عدم استفاده از کامپیوتر عبارت است از : 1- شرکت هایی که سرمایه زیادی دارند. و طرفدارتکنولوژی مدرن جدیدند و در صدد بالابردن کیفیت کار هستند علیرغم قیمت بالای این دستگاه به علت درآمد حاصل از آن و تأثیری که بر روی محصولات کارخانه بجا خواهد گذارد این دستگاه را برای تسریع کارهای مربوط به الگو و دوخت می خرند و استفاده می کنند، لیکن تولیدیها و شرکتهای کوچک به علت هزینه سنگین و آموزش نمی توانند از این دستگاه استفاده کنند. 2- بسیاری از طراحان تمایلی به تغییر روش قدیمی و سنتی خود که در آن مهارت تجربه کافی کسب کرده اند ندارند و ترس از روبرو شدن با دستگاه پیچیده ای متشکل از قطعات الکترونی و سازشی با شرایط جدید و مشکلات آموزشی، آنها را از این کار باز می دارد. 3- شرکت ها با مشکل تربیت تکنسین و کمبود افراد متخصص در این زمینه مواجه هستند. آموزش CAD برای برش الگو، سایزبندی و غیر و ... بسیار گران است شرکت های می بایست هزینه سنگینی را متقبل شوند. اگر شرکت ها و تولیدیهای لباس، آماده کردن و اجرای طرح و برش الگو را با کامپیوتر انجام دهند و به افراد آموزش لازم را در این زمینه بدهند، در مدت زمان کوتاهی تأثیر متقابل آن را در انسان و ماشین های دوخت در می یابند. در اینجا نمونه کارهای کامپیوتر را به اختصار توضیح می دهیم. رسم خطو مستقیم و منحنی و طرح های آزاد پاک کردن خطوط و یا قسمتهایی از آن، امتداد و گسترش خطوط. تغییر خطوط به اندازه دلخواه ، یا به طول های ویژه. اندازه گیری خطوط الگو ، تمام و یا قسمت های مورد نظر. تغییر محیط شکلها در الگو. جدا کردن قسمتهای مختلف الگو. اتصال کامل قسمت های جدا شده یا قسمتی از آنها. حرکت دادن قسمت هایی از الگو به اطراف. چرخاندن و قرینه کردن الگوها. اتصال ساسونها و افزودن گشادی (اوازمان) به الگو. تکمیل الگو ، افزودن اضافه درز برای دوخت، مشخص کردن علائم روی الگوف چرتها و محل اتصال قسمت عهای مختلف الگو. دادن اطلاعات لازم در مورد خصوصیات پارچه (طول، عرض، و طرح روی پارچه). مدل لباس، سایزهای مورد لزوم، محاسبه ضایعات پارچه و انتخاب سایزهای مناسب برای جلوگیری از هدر رفتن پارچه و کاهش در قیمت پارچه مصرفی. طرحهای گرافیکی شکل صفحه 201 برگه مشخصات طرح و برش شکل صفحه 202 کاهش قیمت لباس با استفاده از نقشه ای که کامپیوتر ارائه می دهد. پس از ساختن الگو و سایزبندی، کامپیوتر با استفاده از کلیه اطلاعات برگه مشخصات طرح و برش و مشخصات پارچه، نقشه قرار دادن الگو را بر روی پارچه به نحوی که ضایعات به حداقل برسد، سایزهای مناسب و تعداد آنها برای تولید انبوه، کلیه محاسبات را انجام می دهد. نقشه را می توان بر روی صفحه مانیتور کامپیوتر مشاهده کرد. درتولیدیها، این کار را برشکار در مدت زمانی طولانی انجام می دهد و با جا به جا کردن قطعات چیده شده الگو بر روی پارچه سعی می کند از خرد شدن پارچه جلوگیری کند. تا بر قیمت لباس فزوده نشود. حال آنکه کامپیوتردر مدت زمان کوتاهی، کلیه اطلاعات دقیق و لازم را فراهم می آورد و از اتلاف وقت جلوگیری و بر سرعت کار می افزاید.

ظهور کامپیوتر اگرچه رویدادی علمی بود، اما انقلاب صنعتی را که از بسیاری جهات قابل مقایسه با انقلابهای صنعتی دیگر نیست پدید آورد. کامپیوتر در قرن اخیر در کشورهای صنعتی و پیشرفته به سرعت گسترش یافته و حیطه عمل و حکومت ان تمام فعالیت های انسانی را در برگرفته است. طرز کار و اداره و مدیریت دستگاههای اقتصادی و اجتماعی و آموزشی و اداری و دفاعی پس از اختراع و استفاده از کامپیوتر تحول عظیمی یافت که زندگی بشر را در نیمه دوم قرن بیستم کاملاً تحت تسلط خود در آورد.یکی از جنبه های کاربرد کامپیوتر، تأثیرگذاریبر طراحی پارچه و لباس و سایزبندی و محاسبه ضایعات پارچه هنگام برش و علامت گذاری بر روی الگو برای دوخت است. کامپیوترها به چهار گوره تقسیم می شوند: 1- پردازنده مرکزی MAINFRAME کامپیوتر بزرگی است که ظرفیت آن بسیار بیشتر از یک کامپیوتر کوچک یا ریز کامپیوتر است. 2- کامپیوتر کوچک MINICOMPUTER 3- کامپیوتر خانگکی HOME COMPUTER 4- کامپیوتر شخصی PERSONAL COMPUTER کامپیوتری که در طراحی استفاده می شود، از نوع کامپیوترهای بزرگ با قدرت زیاد POWER of MINI MAINFRAME است. امروزه تعداد این گونه کامپیوترها بسیار افزایش یافته است و با کاهش قیمتهای کامپیوتر CAD کمپانیهای کوچک نیز قادر به تهیه آن شده اند. انواع مختلف نرم افزار و برنامه ها و زبان کامپیوتر و عملیات مربوط را می توان به راههای گوناگون بر روی صفحه مانیتور مشاهده کرد. خطوط پیشکل ، بردار ، برش الگو برای کشیدن یک تصویر صفحه نمایش را به مربع های کوچک زیادی تقسیم می کنمی. و سپس با سیاه کردن برخی از آنها شکل مورد نظر را به دست می آوریم. این مربع های کوچک یخته تصویری می گویند. اطلاعات یاخته تصویری برای ویدئو ، طرح های کشباف، طراحی پارچه های بافته شده در طرح های چاپ پارچه در نساجی بسیار مناسب است، البته پس از سیاه کردن تمام صفحه و سفید کردن بعضی از مربعها، می توان به تصویر (منفی) یک شکل دست یافت، لیکن ما در اینجا برای آسانی کار همه نمونه ها را از تصویرهای (مثبت) انتخاب می کنیم. دستگاههای جدیدتر، نگاره سازی ریزنگاشت «HIGH RESOLUTION» می توان تصویرها را با جزئیات بیشتری ارائه کند. نقطهها بر روی صفحه کامپیوتر نشانگر یاخته تصویری هستند خطوط کوچک بین دو نقطه با برداری که هم دارای اندازه و هم جهت فضایی است ثبت می شود. VECTOR LINE به طور کلی هر دستگاه کامپیوتر عملیات زیر را انجام می دهد. 1- خواندن دستورالعملها (قسمت ورودی)2- ضبط کردن دستورالعملها و اطلاعات لازم در حافظه و استفاده به موقع از آنها؛ 3- اجرای عملیات منطقی و محاسبات 4- نظارت بر اجرای کلیه و عملیات 5- چاپ یا ظاهر کردن نتایج (قسمت خروجی)کاربرد کامپیوتر در الگو و دوخت تعداد محدودی از کارخانجات بزرگ تولید لباس از کامپیوتر استفاده می کنند. بسیاری از آنها معتقدند که با کامپیوتر فقط می توان طرح الگوها را تغییر داد و انها را اصلاح کرد و این دستگاه در برش الگو کاربردی ندارد. برخی از دلائل عدم استفاده از کامپیوتر عبارت است از : 1- شرکت هایی که سرمایه زیادی دارند. و طرفدارتکنولوژی مدرن جدیدند و در صدد بالابردن کیفیت کار هستند علیرغم قیمت بالای این دستگاه به علت درآمد حاصل از آن و تأثیری که بر روی محصولات کارخانه بجا خواهد گذارد این دستگاه را برای تسریع کارهای مربوط به الگو و دوخت می خرند و استفاده می کنند، لیکن تولیدیها و شرکتهای کوچک به علت هزینه سنگین و آموزش نمی توانند از این دستگاه استفاده کنند. 2- بسیاری از طراحان تمایلی به تغییر روش قدیمی و سنتی خود که در آن مهارت تجربه کافی کسب کرده اند ندارند و ترس از روبرو شدن با دستگاه پیچیده ای متشکل از قطعات الکترونی و سازشی با شرایط جدید و مشکلات آموزشی، آنها را از این کار باز می دارد. 3- شرکت ها با مشکل تربیت تکنسین و کمبود افراد متخصص در این زمینه مواجه هستند. آموزش CAD برای برش الگو، سایزبندی و غیر و ... بسیار گران است شرکت های می بایست هزینه سنگینی را متقبل شوند. اگر شرکت ها و تولیدیهای لباس، آماده کردن و اجرای طرح و برش الگو را با کامپیوتر انجام دهند و به افراد آموزش لازم را در این زمینه بدهند، در مدت زمان کوتاهی تأثیر متقابل آن را در انسان و ماشین های دوخت در می یابند. در اینجا نمونه کارهای کامپیوتر را به اختصار توضیح می دهیم. رسم خطو مستقیم و منحنی و طرح های آزاد پاک کردن خطوط و یا قسمتهایی از آن، امتداد و گسترش خطوط. تغییر خطوط به اندازه دلخواه ، یا به طول های ویژه. اندازه گیری خطوط الگو ، تمام و یا قسمت های مورد نظر. تغییر محیط شکلها در الگو. جدا کردن قسمتهای مختلف الگو. اتصال کامل قسمت های جدا شده یا قسمتی از آنها. حرکت دادن قسمت هایی از الگو به اطراف. چرخاندن و قرینه کردن الگوها. اتصال ساسونها و افزودن گشادی (اوازمان) به الگو. تکمیل الگو ، افزودن اضافه درز برای دوخت، مشخص کردن علائم روی الگوف چرتها و محل اتصال قسمت عهای مختلف الگو. دادن اطلاعات لازم در مورد خصوصیات پارچه (طول، عرض، و طرح روی پارچه). مدل لباس، سایزهای مورد لزوم، محاسبه ضایعات پارچه و انتخاب سایزهای مناسب برای جلوگیری از هدر رفتن پارچه و کاهش در قیمت پارچه مصرفی. طرحهای گرافیکی شکل صفحه 201 برگه مشخصات طرح و برش شکل صفحه 202 کاهش قیمت لباس با استفاده از نقشه ای که کامپیوتر ارائه می دهد. پس از ساختن الگو و سایزبندی، کامپیوتر با استفاده از کلیه اطلاعات برگه مشخصات طرح و برش و مشخصات پارچه، نقشه قرار دادن الگو را بر روی پارچه به نحوی که ضایعات به حداقل برسد، سایزهای مناسب و تعداد آنها برای تولید انبوه، کلیه محاسبات را انجام می دهد. نقشه را می توان بر روی صفحه مانیتور کامپیوتر مشاهده کرد. درتولیدیها، این کار را برشکار در مدت زمانی طولانی انجام می دهد و با جا به جا کردن قطعات چیده شده الگو بر روی پارچه سعی می کند از خرد شدن پارچه جلوگیری کند. تا بر قیمت لباس فزوده نشود. حال آنکه کامپیوتردر مدت زمان کوتاهی، کلیه اطلاعات دقیق و لازم را فراهم می آورد و از اتلاف وقت جلوگیری و بر سرعت کار می افزاید.


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

دانلود مقدمات داده پردازی

هر اطلاع مفید ولازم درباره چیز یا امری رایک داده می گویندبه شناسنامه خود نگاه کنیدنام، نام خانوادگی،نام پدر ،سال تولد،محل تولد،شماره شناسنامه وسایر اطلاعات آن ،همه درباره شماست
دسته بندی کامپیوتر و IT
فرمت فایل doc
حجم فایل 93 کیلو بایت
تعداد صفحات فایل 53
مقدمات داده پردازی

فروشنده فایل

کد کاربری 1024

مقدمات داده پردازی

تعریف داده(Data)

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

اینها داده های مرتبط با شما هستندوشما را از دیگران متمایز ومجزا می کنند؛ به شما سود می رسانند؛

حقوق شما را محفوظ می دارند وبه دولت امکان می دهند که برای شما برنامه ریزی کندو امکانات فراهم سازد.

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

گفتیم که داده ها باید مفید ولازم باشند.مثالی می زنیم:

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

داده ها با هم ارتباط دارند.

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


داده های نامرتب کاربرد ندارند.

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

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

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

حال،برای هر کتاب اطلاعات مرتبط با آن را در یک سطر این جدول می نویسید:

نام کتاب

نام نویسنده

نام مترجم

نام ناشر

تعداد صفحات

شناسایی وشکار جاسوس

پیتر رایت

محسن اشراقی

مؤسسه اطلاعات

608

ساعت سرمستی

هیوبرت ریوز

دکتر سهامی

نشر قطره

339

البته می توان این جدول را به هر شکل دیگری تهیه کرد و درباره ی هر کتاب اطلاعات دیگری مانند نوبت چاپ،شماره ی شناسایی کتاب و…را نیز در جدول وارد کرد.مهم،اطلاعاتی ست که شما درباره ی هر کتاب مفید و لازم می دانید و داده های شما به شمار می آیند.این جدول،داده های شما را مرتب می کند.به این جدول داده ها(Data Table)می گویند.


جستجو در جدول داده ها

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

در این صورت، به شکل زیر عمل می کنید:

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

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

مه های میکروسافت آفیس(MicrosaftOffice)نام دارد و مجموعه ای از چند برنامه ی ک

اربردی برای ماشینی کردن دفاتر کار است.

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

تعریف پایگاه داده ها

گفتیم که یکی از روشهای آسان اداره ی داده ها،ایجاد جدول مرتبی از آنهاست که به آن جدول داده ها (DataTable)می گویند.

برنامه ی اکسس،دو یا چند جدول داده را،پایگاه داده ها (Database)می نامدو می تواند آن رابه خوبی اداره کند.برنامه ای را که می تواند یک پایگاه داده ها را اداره کند،برنامه ی مدیریت پایگاه داده ها(Database Management Program)می گویند.اکسس،یک برنامه ی مدیریت پایگاه داده هاست.به مجموعه ای از جدولهای داده ها،پایگاه داده ها می گویند.

تعریف فیلد(Field)و رکورد(Record)

همان طور که قبلا گفتیم،اکسس با جدول های داده ها کار می کنیم.هر جدول،از تعدادی سطرو ستون تشکیل شده است.اکسس به هر یک از ستون ها،یک فیلد،(Field) میگویند.بنابراین،جدول کتابخانه ی ما در مثال قبلی 6فیلد دارد.همچنین اکسس،هر سطر جدول داده ها را نیز یک رکورد می خواند.

در همان جدول کتابخانه ها،در مثال قبلی ،شما سه رکوردرا می بینید.به این ترتیب، هر رکورددر آن

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


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

برای این کار،باید در هر یک از جدول های یک فیلد مشترک پیدا کنید.یعنی فیلدی که هم در این جدول و هم در آن جدول موجود باشد.بعد:

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

2ـدر جدول دوم،فیلد مشترک را پیدا می کنیدو در آن داده ای را که یادداشت کرده اید می یابید.حالا رکورد مورد نظررا پیدا کرده ایدوباید در آن به سراغ فیلد نشانی بروید وآن را یادداشت کنید.

به این ترتیب،این دو جدول به هم ربط پیدا می کنند.ربط دادن جدول ها به هم،از طریق یک فیلد مشترک،قدرت مانور شمارا در جستجوی داده هاو نتیجه گیری از آنها بسیار افزایش می دهد ودر حجم جدولها صرفه جویی می کند.زیرا،دیگر لازم نیست که مثلا در مقابل هر رکوردی که برای خرید و فروش مشتری به وجود می آورید،یک بار هم،آدرس او را در همان جدول بنویسیدو می توانید این داده را از جدول دیگری بردارید.به این مدل از پایگاه داده ها،پایگاه داده ها ی ارتباطی (Relational Database).اکسس،از این مدل پایگاه داده ها استفاده میکندو به همین سبب به آن مدیرپایگاه داده های ارتباط (Relational Database Management System) به طور خلاصهRDMBSمی گویند.

تعریف پایگاه داده های ارتباطی

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

جدولها وجود دارد و از طریق آن می توان داده ها را به هم ربط داد.

تعریف کلید

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

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

حالا فرض کنید یک جدول دیگر هم داریدکه یکی از فیلدهای آن نام مشتریست اما فیلدشماره مشتری ندارد.آیا این جدول را هم می توان به جدول اولیوصل کرد؟بله.اگر فیلد نام مشتری در هر دو فایل یکسان تعریف شده باشد،می توان از این فیلد برای اتصال دو جدول داده ها استفاده کرد.بنابراین،فیلد کلید ما در این حالت،فیلد نام مشتری است.وقتی این دو جدول داده ها به هم مرتبط شوند، در حقیقت،به جدول دیگرهم وصل شده اند؛زیرا دو جدول دیگر نیز از طریق یک فیلد مشترک به هم متصل بودند.به این طریق ،هر سه جدول،از طریق فیلدهای دوبه دو مشترک به هم وصل شده اند.بنابراین لازم نیست که فیلد های ارتباط دهنده در هر سه جدول(یا بیشتر)،یکی باشند.بلکه فقط کافیست دو به دو یکی باشند.

چگونه یک پایگاه داده ها بسازیم؟

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

1-کارهایی را که می خواهید با پایگاه داده هاانجام دهید معین کنید:

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

دریافت دارید.بنابراین ،مثلا یکی از عناوین فهرست شما می تواند این باشد:‹‹وارد کردن سفارش مشتری››؛اما لازم نیست جزییاتی مانند محاسبه جمع کلی صورتحساب ویا کسر مقدار تخفیف از مبلغ دریافتی را در این فهرست بگنجانید. اینها اعمال اصلی نیستند.

2-نمودار گردش عملیات را رسم کنید:

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

3-شناسایی داده های لازم:

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

4-گروه بندی داده ها:

در این مرحله، مشخص میکنید که داده ها چگونه باهم گروه بندی می شوند.مثلا شماره مشتری ،نام مشتری،نام خانوادگی مشتری،شماره تلفن مشتری،نشانی مشتری،داده های مرتبط به همهستندومیتواننددر یک گروه جای بگیرند.

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

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

یک جدول دادها را تشکیل دهد.

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

6-ایجاد فرمها وگزارشها:

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

7-آزمایش وتجدید نظر وتصفیه:

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

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


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

دانلود بهینه‌سازی و پردازش پرس و جو

در این تحقیق ما به تکنیک‌های بکار رفته توسط DMBS برای پردازش، بهینه‌سازی و اجرای پرس و جوهای سطح بالا می‌پردازیم پرس و جوی بیان شده در زبان پرس‌و جوی سطح بالا مثل SQL ابتدا باید پویش و تجزیه معتبر شود
دسته بندی کامپیوتر و IT
فرمت فایل doc
حجم فایل 458 کیلو بایت
تعداد صفحات فایل 68
بهینه‌سازی و پردازش پرس و جو

فروشنده فایل

کد کاربری 1024

بهینه‌سازی و پردازش پرس و جو

در این تحقیق ما به تکنیک‌های بکار رفته توسط DMBS برای پردازش، بهینه‌سازی و اجرای پرس و جوهای سطح بالا می‌پردازیم.
پرس و جوی بیان شده در زبان پرس‌و جوی سطح بالا مثل SQL ابتدا باید پویش و تجزیه . معتبر شود. پویشگر (اسکنر) علامت هر زبان، مثل لغات کلیدی SQL، اساس ویژگی، و اساس رابطه، را در متن پرس و جو شناسایی می‌کند،‌ در عوض تجربه کننده، ساختار دستوری پرس و جو را برای تعیین اینکه آیا بر طبق قوانین دستوری زبان پرس و جو تدوین می‌شود یا خیر، چک می‌کند. پرس و جو باید همچنین معتبر شود، با چک کردن اینکه تمام اسامی رابطه و ویژگی معتبر هستند و اسامی معنی‌دار در طرح پایگاه اطلاعاتی ویژها‌ی پرس و جو می‌شوند. نمونه داخلی پرس و جو ایجاد می‌شود،‌‌ که تحت عنوان ساختار داده‌های درختی بنام درخت پرس و جو می‌باشد. ارائه پرس و جو با استفاده از ساختار داده‌های گراف بنام گراف پرس و جو نیز امکان پذیر است. DOMS باید استراتژی اجرایی برای بازیابی نتیجه پرس و جو از فایل‌های پایگاه اطلاعاتی را هدایت کند. پرس و جو استراتژیهای اجرایی بسیاری دارد. و مرحلة انتخاب،‌ مورد مناسبی برای پردازش پرس وجو تحت عنوان بهینه‌سازی پرس و جو شناخته شده است.
تصویر 1، مراحل مختلف پردازش پرس و جوی سطح بالا را نشان می‌دهد. قطعه بر نامه بهینه‌ساز پرس وجو، وظیفه ایجاد طرح اجرایی را بعهده دارد و ژنراتور (تولید کننده) که ، کد را برای اجرای آن طرح ایجاد می‌کند. پردازنده پایگاه اطلاعاتی زمان اجرا وظیفه اجرای که پرس و جو را بعهده دارد،‌ خواه در وضعیت کامپایل شده یا تفسیر شده جهت ایجاد نتیجه پرس و جو. اگر خطای زمان اجرا نتیجه شود،‌ پیام خطا توسط پایگاه اطلاعاتی زمان اجرا ایجاد می‌شود.
اصطلاح بهینه‌سازی نام بی مسمایی است چون در بعضی موارد،‌ طرح اجرایی انتخاب شده، استراتژی بهینه نمی‌باشد، آن فقط استراتژی کارآمد معقول برای اجرای پرس و جو است. یافتن استراتژی بهینه، ضامن صرف زمان زیادی است، بجز برای ساده‌ترین پرس و جوها،‌ ممکن است به اطلاعاتی روی چگونگی اجرای فایل‌ها در فهرست‌های فایل‌ها، اطلاعاتی که ممکن است کاملاً در کاتالوگ DBMS در دسترس نباشد، نیاز باشد. از اینرو،‌ برنامه‌ریزی استراتژی اجرا ممکن است توصیف درست‌تری نسبت به بهینه‌سازی پرس و جو باشد.
برای زبانهای پایگاه اطلاعاتی (دریایی) جهت‌یابی در سطح پایینتر در سیستم‌های قانونی، مثل شبکه DML شبکه‌ای یا MOML سلسله مراتبی،‌ برنامه نویس باید، استراتی اجرای پذیرش و جو را انتخاب کند ضمن اینکه برنامه پایگاه اطلاعاتی را می‌نویسد. اگر DBMS فقط زیان جهت‌یابی را ارائه دهد. فرصت و نیاز محدودی برای بهینه‌سازی پرس وجوی وسیع توسط DBMS وجود دارد، در عوض به برنامه نویس قابلیت انتخاب استراتژی اجرایی بهینه ارائه می‌شود. بعبارت دیگر، زبان پرس و جو در سطح بالا، مثل SQL برای DBMSهای رابطه‌ای یا OQL برای DBMS‌های مقصد،‌ در ماهیت تفریطی‌تر است. چون آنچه نتایج مورد نظر پرس و جو است بغیر از شناسایی جزئیات چگونگی بدست آمدن نتیجه،‌ را تعیین می‌کند. بهینه‌سازی پرس و جو برای پرس و جوهایی ضروی است که در زبان پرس و جوی سطح بالا تعیین می شوند. ما روی توصیف بهینه‌سازی پرس و جو در زمینه ROBMS تمرکز می‌کنیم چون بسیاری از تکنیک‌هایی که توصیف می‌ کنیم برای، برای ODBMSها تطبیق یافته‌اند. DBMS رابطه‌ای باید استراتژیهای اجرای پرس و جوی دیگری را ارزیابی کند و استراتژی بهینه یا کارآمد معقولی را انتخاب کند. هر DBMS ،‌ تعدادی الگاریتم دسترسی به پایگاه اطلاعاتی کلی دارد که علامتهای رابطه‌ای مثل SELECT یا JOIN یا ترکیبی از این عملیات ‌ها را اجرا می‌کند. تنها استراتژیهای اجرایی که می‌توانند توسط الگاریتم‌های دسترسی DBMS اجرا شوند و برای طراحی پایگاه اطلاعاتی فیزیکی ویژه و پرس و جوی خاص بکار روند،‌ می‌توانند توسط قطعه برنامه بهینه‌سازی پرس و جو در نظر گرفته شوند.
ما با بحث کلی چگونگی ترجمه پرس و جوهای SQL به پرس و جوهای جبری رابطه‌ای و در بهینه‌شدن آنها کار را شروع می‌کنیم. بعد ما روی الگاریتم‌ها برای اجرای عملیات‌های رابطه‌ای در بخش 1802 بحث می‌کنیم. بدنبال این مطلب، بررسی از استراتژیهای بهینه‌سازی پرس و جو را ارائه می‌دهیم. دو تکنیک اصلی برای اجرای بهینه‌‌سازی پرس و جو وجود دارد. اولین تکنیک بر اساس قوانین ذهنی جهت ترتیب دادن عملیات‌ها در استراتژی اجرای پرس و جو می‌باشد. ذهن قانونی است که بخوبی در اکثر موارد عمل می‌کند ولی برای کار مناسب در هر مورد کنش تضمین نمی‌شود. قوانین عملیات‌ها را در درخت پرس وجو مجدداً ترتیب می‌دهند. دومین تکنیک شامل برآورد هزینه استراتژیهای اجرای متفاوت و انتخاب طرح اجرایی با پایین‌ترین هزینه برآورد است. دو تکنیک معمولاً در بهینه ساز پرس و جو (باهم ترکیب می‌شوند) بهم ملحق می‌گردند. بررسی مختصری از عوامل در نظر گرفته شده در طول بهینه‌سازی پرس و جو در RDBMS بازرگانی ORACLL= را ارائه می‌دهیم. در بخش بعدی نوعی بهینه‌سازی پرس و جوی معنایی را ارائه می‌دهد که در آن محدودیت‌های شناخته شده برای پرداختن به استراتژیهای اجرایی پرس و جوی کارآمد استفاده می‌شوند.
2 – ترجمه پرس و جوهای SQL به پرس و جوهای رابطه‌ای:
در عمل، SQL زبان پرس وجویی است که در اکثر RDBMS ‌های بازرگانی استفاده می‌شود. پرس وجوی SQL ، ابتدا به عبارت جبری رابطه‌ای توسعه یافته معادل،‌ نمایانگر ساختار داروهای درخت پرس و جو، ترجمه می‌شود و بعد بهینه‌سازی می‌شود. پرس و جوهای SQL به بلوکهای پرس و جو تجزیه می‌شوند،‌ که واحدهای اساسی را تشکیل می‌دهند که می‌توانند به عملکردهای جبری ترجمه شوند و بهینه‌سازی شوند. بلوک پرس و جو شامل عبارت SELECT- FROM-WHERE تکی و بندهای Groop By و HAVING است چنانچه این‌ها بخشی از بلوک باشند. از اینرو،‌ پرس و جوهای تو در تو در پرس و جو بعنوان بلوکهای پرس و جوی مجزا شناسایی می‌شوند. چون SQL شامل عملکردهای گروهی، مثل MAX ،‌ COUNT,SUM می‌باشد، این عملگرها باید در پرس و جوی جبری توسعه یافته‌ای شامل شوند، همانطوریکه در بخش 705 توصیف شد. پرس و جوی SQL در رابطه EMPLOEE در تصویر 705 را در نظر بگیرید:
این پرس و جو شامل، پرس و جوی فرعی تو در تو است و از اینرو به دو بلوک تجزیه می‌شود. بلوک درونی بدین صورت است:
و بلوک بیرونی بدین صورت می باشد:
که C نمایانگر نتیجه حاصله از بلوک درونی است. بلوک درونی به عبارت جبری رابطه‌ای توسعه یافته زیر ترجمه شده است:
و بلوک بیرونی به عبارت زیر ترجمه شده است:
بهینه‌ساز پرس و جو، طرح اجرایی را برای هر بلوک انتخاب می‌کند. ما باید اشاره کنیم به در مثال فوق، بلوک درونی نیاز به ارزیابی شدن دارد تنها زمانی که، حداکثرحقوقی که بعکار می‌رود که بعنوان ثابت C، توسط بلوک بیرونی استفاده می‌شود. ما اینرو پرس و جوی تودرتوی غیرمرتبط نامیدیم (در فصل 8). آن برای بهینه‌سازی پرس و جوهای تو در توی مرتبط پیچیده‌تر، خیلی سخت‌تر است، جایی که متغیر Tuple از بلوک بیرونی در بند WHERE در بلوک درونی ظاهر می‌شود.
1802- الگاریتم های انسانی برای اجرای عملیاتهای پرس و جو:
RDBMS شامل الگاریتم‌هایی برای اجرای انواع مختلف عملیاتهای رابطه‌‌ای است که می‌توانند در استراتژی اجرای پرس و جو نمایان شوند، این عملیات‌ها شامل عملیاتهای جبری بیسیک (اصلی) و توسعه یافته مورد بحث در فصل 7 ، و در بسیاری موارد، الحاقاتی از این عملیات‌ها می‌باشد. برای هر یک از این عملیات ها یا الحاقی از عملیات‌ها، یک یا چند الگاریتم برای اجرای عملیات‌ها در دسترس قرار دارند. الگاریتم ممکن است فقط برای ساختارهای ذخیره خاص مسیرهای دستیابی بکار روند، در اینصورت ،‌ تنها در صورتی استفاده می‌شود که فایل های موجود در عملیات شامل این مسیرهای دستیابی هستند. در این بخش، ما به الگاریتم‌های نمونه بکار رفته برای اجرای SEKECT ، JOIN و دیگر عملیاتهای رابطه‌ای می‌پردازیم. ما بحث مرتب کردن خارجی را در بخش 180201 آغاز می‌کنیم که در قلب عملیاتهای رابطه‌ای قرار دارد که از استراتژیهای ادغام کردن به مرتب کردن استفاده می‌کند. بعد ما به الگاریتم‌هایی برای اجرای عملیات SELECT در بخش 180202 می‌پردازیم،‌ به عملیات ‌JOIN در بخش 180203 و عملیات PRIJECT و عملیاتهای مجموعه در بخش IE 1802 و عملیات‌های گروهی و جمعی در بخش 2 .2 . 18 می‌پردازیم.
1. 2. 18- مرتب کردن خارجی:
مرتب کردن، یکی از الگاریتم‌های اولیه بکار رفته در پردازش پرس و جو است. برای مثال، ‌به هر وقت پرس و جوی SQL ، بعد ORDER BY را تعیین می‌کند، نتیجه پرس و جو باید مرتب گردد. مرتب کردن، مؤلفه کلیدی در الگاریتم‌های مرتب کردن- ادغام کردن (مرتب-ادغام) بکار رفته برای Join و عملیاتهای دیگر، دور الگاریتم‌های حذف کپی برای عملیات PROYECT است. ما روی بعضی از این الگاریتم‌ها در بخش‌ 3. 2. 18 و 4. 02 18 بحث خواهیم کرد. توجه کنید که مرتب کردن در صورتی که اجتناب می‌شود که شاخص مناسب برای امکان دسترسی مرتب شده به ثبت‌ها وجود دارد.
مرتب کردن خارجی به الگاریتم‌های مرتب کردن اشاره می‌کند که برای فایل های بزرگ ثبت ‌های ذخیره شده روی دیسک مناسب هستند که در حافظه اصلی، مثل اکثر فایل های پایگاه اطلاعاتی تناسب نمی‌‌یابد. الگاریتم‌ مرتب کردن خارجی نمونه از استراتژی مرتب- ادغام استفاده می‌کند، که با مرتب کردن- فایل‌های فرعی کوچک بنام اجراها در فایل اصلی شروع می‌شود و بعد اجراها مرتب شده ادغام می‌شوند،‌‍ فایل‌های فرعی مرتب شده بزرگتری ایجاد می‌شوند که بترتیب ادغام می‌شوند. الگاریتم ادغام –مرتب،‌ مثل دیگر الگاریتم های پایگاه اطلاعاتی به فاضی بافر در حافظه اصلی نیاز دارد،‌ جایی که مرتب کردن واقعی و ادغام اجراها انجام می‌ شود. الگاریتم اصلی (سیبک) شرح داده شده در تصویر 1802 ، شامل دو مرحله است: (1) فاز یا مرحله مرتب کردن و (2) مرحله ادغام.
در مرحله مرتب کردن، اجراهای فایلی که می‌تواند در فضای باز موجود تناسب یابد در حافظه اصلی خوانده می‌شوند و با استفاده از الگاریتم مرتب کردن داخلی مرتب می‌شود عقب دیسک بعنوان فایل‌های فرعی مرتب شده متوفی نوشته می‌شود. اندازه اجرا و تعداد اجراهای آغازین توسط تعداد بلوکهای فایل (b) و فضای بافر موجود (NB) بیان می‌شود. برای مثال اگر بلوکو اندازه قایل 1024=b بلوک باشد،‌ بعد یا 205 اجرای آغازین در هر اندازه 5 بلوک است. از اینرو، بعد از مرحله مرتب کردن، 205 اجرای مرتب شده بعنوان فایل‌های فرعی موقتی روی دیسک ذخیره می‌شوند. اجرای مرتب شده بعنوان فایل‌های فرعی موقتی و روی دیسک ذخیره می‌شوند.
در مرحله ادغام شدن، اجراهای مرتب شده،‌ در طول یک یا چند گذر ادغام می‌‌شوند. درجه ادغام شدن تعداد اجراهایی است که می‌توانند با همدیگر در هر گذر ادغام شوند. در هر گذر، یک بلوک بافر، برای حفظ یک بلوک از هر اجرای ادغام شده نیاز می‌باشد، و یک بلوک برای تشکیل یک بلوک نتیجه ادغام لازم است . از اینرو،‌ کوچکتر از و است و تعداد گذرها، است. در مثالها، است. لذا،‌ 205 اجرای مرتب شده آغازین در 25 تا در پایان اولیه گذر ادغام می‌شود: که بعد به 12، بعد 4 بعد یک اجرا ادغام می‌شوند، که بدین معنی است که چهارگذر لازم می‌باشد. حداقل از 2،‌ عملکرد بدترین مورد الگاریتم را ارائه می‌دهد که بدین قرار است:
اولین جمله، تعداد دسترسی‌های بلوک برای مرحله مرتب سازی را نشان می‌دهد، چون هر بلوک فایل دو برابر دسترسی می‌شود، یکبار برای خواندن در حافظه،‌ یکبار برای نوشتن ثبت‌ها دیسک بعد از مرتب کردن. دومین جمله، تعداد دسترسی‌های بلوک برای مرحله ادغام کردن را نشان می‌دهد، با فرض اینکه بدترین مورد از 2 وجود دارد. بطور کلی، ثبت وقایع در مبنای و عبارت برای تعداد دسترسی‌های بلوک نوین قرار می‌شود:
تصویر 1802- شرح الگاریتم ادغام – مرتب کردن برای مرتب کردن خارجی:
2. 2. 18- اجرا و پیاده‌سازی عملیات SELECT :
تعداد Option‌هایی ( انتخاب‌ها) برای اجرای عملیات SELECT وجود دارد، که بعضی به فایل دارای مسیرهای دستیابی خاص بستگی دارند و تنها برای انواع معین شرایط انتخاب بکار می‌رود. ما به الگاریتم‌هایی جهت اجرای SELECT در این بخش می‌پردازیم. ما از عملیاتهای زیر استفاده می‌کنیم که روی پایگاه اطلاعاتی رابطه‌ای در تصویر 507 مشخص شده و بحث ما را روشن می‌سازد:
متدهای جستجو برای انتخاب ساده:
تعدادی الگاریتم های جستجو برای انتخاب ثبت‌ها از فایل امکان‌پذیر می‌باشند،‌ چون ثبت‌‌های فایل نامیده می شوند، چون ثبت‌‌های فایل را برای جستجو و بازیابی ثبت‌هایی که شرایط انتخاب را برآورده می‌سازند، پویش می‌کنند. اگر الگاریتم جستجو شامل کاربرد شاخص باشد،‌ جستحوی شاخص پویش شاخص نامیده می‌شد. متدهای جستجوی زیر ( 1S تا s6 ) مثالهایی از الگاریتم‌های جستجو هستند که می‌توانند برای اجرای عملیات انتخاب بکار روند:
- s1 : جستجوی خطی (روش برنامه‌سازی پر قدرت): بازیابی هر ثبت در فایل، و تست اینکه آیا مقادیر ویژگی آن،‌ شرط انتخاب را براورده می‌سازد یا خیر.
- S2: جستجوی بنیادی (دودویی):‌ اگر شرط انخاب شامل قیاس تساوی روی ویژگی کلیدی باشد که روی آن فایل مرتب می‌شود، جستجوی بنیادی، که نسبت به جستجوی خطی کارآمدتر است، می‌تواند بکار رود. مثال OP1 است چنانچه ssn ، ‌ویژگی کلیدی با شاخص اولیه‌( یا کلید hash) باشد،‌ برای مثال، SNN-‘123456789’ در opt، شاخص اولیه یا کلید hosh) برای بازیابی ثبت استفاده می‌شود، توجه کنید که این شرط، ثبت تکی را بازیابی می‌کند.
- S4: کاربرد شاخص اولیه برای بازیابی ثبت‌های متعدد: اگر شرط انتخاب شدن قیاس تساوی روی ویژگی غیر کلیدی با شاخص خدشه‌سازی باشد،‌ برای مثال در ، شاخص را برای بازیابی کل ثبت‌ها در برآورده ساختن شرط،‌ استفاده کنید.
- S6: بکارگیری شاخص ثانویه (درخت ) روی قیاس تساوی: این متد جستجو می‌تواند برای بازیابی ثبت تکی بکار رود چنانچه فیلد نمایه‌سازی (شاخص‌سازی) کلید باشد یا برای بازیابی ثبت‌های متعدد بکار می‌رود چنانچه فیلد شاخص‌سازی کلید نباشد،‌ این می‌تواند برای مقایساتی شامل یا بکار رود. در بخش 3. 4. 18، ما به چگونگی توسعه فرمول‌هایی می‌پردازیم که هزینه‌دستیابی این متدهای جستجو را در اصطلاحات تعداد دستیابی‌های بلوک و زمان دستیابی برآورد می‌کند. Method S!برای هر فایلی استفاده می‌شود ولی تمام متدهای دیگر به داشتن مسیر دستیابی مناسب روی ویژگی‌بکار رفته در شرط انتخاب بستگی دارند. متدهای S4 و 6،‌ می‌توانند برای بازیابی ثبت‌ها در دامنه معین بکار روند برای مثال پرس و جوها شامل این شرط‌ها، پرس وجوهای دامنه نیامد به می‌شوند.
متدهای جستجو برای انتخاب پیچیده:
اگر شرط عملیات SELECT، شرط تقارنی و مرتبط باشد، در اینصورت اگر از چندین شرط ساده در ارتباط با ارتباط منطقی and مثل op4 فوق تشکیل شود، ‌DBM می‌تواند از متدهای اضافی زیر برای اجرای عملیات استفاده کند:
S7: انتخاب تقارنی یا ارتباطی با استفاده از شاخص اختصاص:‌ اگر ویژگی شامل شده در هر شرط ساده متکی در شرط تقارنی، مسیر دستیابی داشته باشد که به کاربرد یکی از متدهای S2 تا S6 امکان عمل دهد، از آن شرط برای بازیابی ثبت‌های استفاده کنید و بعد کنترل کنید آیا هر ثبت بازیابی شد، شرایط ساده باقیمانده در شرط تقارنی را برآورده می‌کند یا خیر.
S8 : انتخاب تقارنی (ارتباطی) با استفاده از شاخص مرکب: اگر دو یا چند ویژگی در شرایط تساوی در شرط تفاوتی شامل شدند و شاخص مرکب در فیلدهای مرکب وجود داشته باشد، برای مثال اگر شاخص روی کلید مرکب (ESSN, PNO) در فایل Works ON برای OPS ایجاد شده باشد، می توان از شاخص مستقیماً اشاره کرد.

در این تحقیق ما به تکنیک‌های بکار رفته توسط DMBS برای پردازش، بهینه‌سازی و اجرای پرس و جوهای سطح بالا می‌پردازیم. پرس و جوی بیان شده در زبان پرس‌و جوی سطح بالا مثل SQL ابتدا باید پویش و تجزیه . معتبر شود. پویشگر (اسکنر) علامت هر زبان، مثل لغات کلیدی SQL، اساس ویژگی، و اساس رابطه، را در متن پرس و جو شناسایی می‌کند،‌ در عوض تجربه کننده، ساختار دستوری پرس و جو را برای تعیین اینکه آیا بر طبق قوانین دستوری زبان پرس و جو تدوین می‌شود یا خیر، چک می‌کند. پرس و جو باید همچنین معتبر شود، با چک کردن اینکه تمام اسامی رابطه و ویژگی معتبر هستند و اسامی معنی‌دار در طرح پایگاه اطلاعاتی ویژها‌ی پرس و جو می‌شوند. نمونه داخلی پرس و جو ایجاد می‌شود،‌‌ که تحت عنوان ساختار داده‌های درختی بنام درخت پرس و جو می‌باشد. ارائه پرس و جو با استفاده از ساختار داده‌های گراف بنام گراف پرس و جو نیز امکان پذیر است. DOMS باید استراتژی اجرایی برای بازیابی نتیجه پرس و جو از فایل‌های پایگاه اطلاعاتی را هدایت کند. پرس و جو استراتژیهای اجرایی بسیاری دارد. و مرحلة انتخاب،‌ مورد مناسبی برای پردازش پرس وجو تحت عنوان بهینه‌سازی پرس و جو شناخته شده است. تصویر 1، مراحل مختلف پردازش پرس و جوی سطح بالا را نشان می‌دهد. قطعه بر نامه بهینه‌ساز پرس وجو، وظیفه ایجاد طرح اجرایی را بعهده دارد و ژنراتور (تولید کننده) که ، کد را برای اجرای آن طرح ایجاد می‌کند. پردازنده پایگاه اطلاعاتی زمان اجرا وظیفه اجرای که پرس و جو را بعهده دارد،‌ خواه در وضعیت کامپایل شده یا تفسیر شده جهت ایجاد نتیجه پرس و جو. اگر خطای زمان اجرا نتیجه شود،‌ پیام خطا توسط پایگاه اطلاعاتی زمان اجرا ایجاد می‌شود.

اصطلاح بهینه‌سازی نام بی مسمایی است چون در بعضی موارد،‌ طرح اجرایی انتخاب شده، استراتژی بهینه نمی‌باشد، آن فقط استراتژی کارآمد معقول برای اجرای پرس و جو است. یافتن استراتژی بهینه، ضامن صرف زمان زیادی است، بجز برای ساده‌ترین پرس و جوها،‌ ممکن است به اطلاعاتی روی چگونگی اجرای فایل‌ها در فهرست‌های فایل‌ها، اطلاعاتی که ممکن است کاملاً در کاتالوگ DBMS در دسترس نباشد، نیاز باشد. از اینرو،‌ برنامه‌ریزی استراتژی اجرا ممکن است توصیف درست‌تری نسبت به بهینه‌سازی پرس و جو باشد. برای زبانهای پایگاه اطلاعاتی (دریایی) جهت‌یابی در سطح پایینتر در سیستم‌های قانونی، مثل شبکه DML شبکه‌ای یا MOML سلسله مراتبی،‌ برنامه نویس باید، استراتی اجرای پذیرش و جو را انتخاب کند ضمن اینکه برنامه پایگاه اطلاعاتی را می‌نویسد. اگر DBMS فقط زیان جهت‌یابی را ارائه دهد. فرصت و نیاز محدودی برای بهینه‌سازی پرس وجوی وسیع توسط DBMS وجود دارد، در عوض به برنامه نویس قابلیت انتخاب استراتژی اجرایی بهینه ارائه می‌شود. بعبارت دیگر، زبان پرس و جو در سطح بالا، مثل SQL برای DBMSهای رابطه‌ای یا OQL برای DBMS‌های مقصد،‌ در ماهیت تفریطی‌تر است. چون آنچه نتایج مورد نظر پرس و جو است بغیر از شناسایی جزئیات چگونگی بدست آمدن نتیجه،‌ را تعیین می‌کند. بهینه‌سازی پرس و جو برای پرس و جوهایی ضروی است که در زبان پرس و جوی سطح بالا تعیین می شوند. ما روی توصیف بهینه‌سازی پرس و جو در زمینه ROBMS تمرکز می‌کنیم چون بسیاری از تکنیک‌هایی که توصیف می‌ کنیم برای، برای ODBMSها تطبیق یافته‌اند. DBMS رابطه‌ای باید استراتژیهای اجرای پرس و جوی دیگری را ارزیابی کند و استراتژی بهینه یا کارآمد معقولی را انتخاب کند. هر DBMS ،‌ تعدادی الگاریتم دسترسی به پایگاه اطلاعاتی کلی دارد که علامتهای رابطه‌ای مثل SELECT یا JOIN یا ترکیبی از این عملیات ‌ها را اجرا می‌کند. تنها استراتژیهای اجرایی که می‌توانند توسط الگاریتم‌های دسترسی DBMS اجرا شوند و برای طراحی پایگاه اطلاعاتی فیزیکی ویژه و پرس و جوی خاص بکار روند،‌ می‌توانند توسط قطعه برنامه بهینه‌سازی پرس و جو در نظر گرفته شوند. ما با بحث کلی چگونگی ترجمه پرس و جوهای SQL به پرس و جوهای جبری رابطه‌ای و در بهینه‌شدن آنها کار را شروع می‌کنیم. بعد ما روی الگاریتم‌ها برای اجرای عملیات‌های رابطه‌ای در بخش 1802 بحث می‌کنیم. بدنبال این مطلب، بررسی از استراتژیهای بهینه‌سازی پرس و جو را ارائه می‌دهیم. دو تکنیک اصلی برای اجرای بهینه‌‌سازی پرس و جو وجود دارد. اولین تکنیک بر اساس قوانین ذهنی جهت ترتیب دادن عملیات‌ها در استراتژی اجرای پرس و جو می‌باشد. ذهن قانونی است که بخوبی در اکثر موارد عمل می‌کند ولی برای کار مناسب در هر مورد کنش تضمین نمی‌شود. قوانین عملیات‌ها را در درخت پرس وجو مجدداً ترتیب می‌دهند. دومین تکنیک شامل برآورد هزینه استراتژیهای اجرای متفاوت و انتخاب طرح اجرایی با پایین‌ترین هزینه برآورد است. دو تکنیک معمولاً در بهینه ساز پرس و جو (باهم ترکیب می‌شوند) بهم ملحق می‌گردند. بررسی مختصری از عوامل در نظر گرفته شده در طول بهینه‌سازی پرس و جو در RDBMS بازرگانی ORACLL= را ارائه می‌دهیم. در بخش بعدی نوعی بهینه‌سازی پرس و جوی معنایی را ارائه می‌دهد که در آن محدودیت‌های شناخته شده برای پرداختن به استراتژیهای اجرایی پرس و جوی کارآمد استفاده می‌شوند. 2 – ترجمه پرس و جوهای SQL به پرس و جوهای رابطه‌ای: در عمل، SQL زبان پرس وجویی است که در اکثر RDBMS ‌های بازرگانی استفاده می‌شود. پرس وجوی SQL ، ابتدا به عبارت جبری رابطه‌ای توسعه یافته معادل،‌ نمایانگر ساختار داروهای درخت پرس و جو، ترجمه می‌شود و بعد بهینه‌سازی می‌شود. پرس و جوهای SQL به بلوکهای پرس و جو تجزیه می‌شوند،‌ که واحدهای اساسی را تشکیل می‌دهند که می‌توانند به عملکردهای جبری ترجمه شوند و بهینه‌سازی شوند. بلوک پرس و جو شامل عبارت SELECT- FROM-WHERE تکی و بندهای Groop By و HAVING است چنانچه این‌ها بخشی از بلوک باشند. از اینرو،‌ پرس و جوهای تو در تو در پرس و جو بعنوان بلوکهای پرس و جوی مجزا شناسایی می‌شوند. چون SQL شامل عملکردهای گروهی، مثل MAX ،‌ COUNT,SUM می‌باشد، این عملگرها باید در پرس و جوی جبری توسعه یافته‌ای شامل شوند، همانطوریکه در بخش 705 توصیف شد. پرس و جوی SQL در رابطه EMPLOEE در تصویر 705 را در نظر بگیرید: این پرس و جو شامل، پرس و جوی فرعی تو در تو است و از اینرو به دو بلوک تجزیه می‌شود. بلوک درونی بدین صورت است: و بلوک بیرونی بدین صورت می باشد: که C نمایانگر نتیجه حاصله از بلوک درونی است. بلوک درونی به عبارت جبری رابطه‌ای توسعه یافته زیر ترجمه شده است: و بلوک بیرونی به عبارت زیر ترجمه شده است: بهینه‌ساز پرس و جو، طرح اجرایی را برای هر بلوک انتخاب می‌کند. ما باید اشاره کنیم به در مثال فوق، بلوک درونی نیاز به ارزیابی شدن دارد تنها زمانی که، حداکثرحقوقی که بعکار می‌رود که بعنوان ثابت C، توسط بلوک بیرونی استفاده می‌شود. ما اینرو پرس و جوی تودرتوی غیرمرتبط نامیدیم (در فصل 8). آن برای بهینه‌سازی پرس و جوهای تو در توی مرتبط پیچیده‌تر، خیلی سخت‌تر است، جایی که متغیر Tuple از بلوک بیرونی در بند WHERE در بلوک درونی ظاهر می‌شود. 1802- الگاریتم های انسانی برای اجرای عملیاتهای پرس و جو: RDBMS شامل الگاریتم‌هایی برای اجرای انواع مختلف عملیاتهای رابطه‌‌ای است که می‌توانند در استراتژی اجرای پرس و جو نمایان شوند، این عملیات‌ها شامل عملیاتهای جبری بیسیک (اصلی) و توسعه یافته مورد بحث در فصل 7 ، و در بسیاری موارد، الحاقاتی از این عملیات‌ها می‌باشد. برای هر یک از این عملیات ها یا الحاقی از عملیات‌ها، یک یا چند الگاریتم برای اجرای عملیات‌ها در دسترس قرار دارند. الگاریتم ممکن است فقط برای ساختارهای ذخیره خاص مسیرهای دستیابی بکار روند، در اینصورت ،‌ تنها در صورتی استفاده می‌شود که فایل های موجود در عملیات شامل این مسیرهای دستیابی هستند. در این بخش، ما به الگاریتم‌های نمونه بکار رفته برای اجرای SEKECT ، JOIN و دیگر عملیاتهای رابطه‌ای می‌پردازیم. ما بحث مرتب کردن خارجی را در بخش 180201 آغاز می‌کنیم که در قلب عملیاتهای رابطه‌ای قرار دارد که از استراتژیهای ادغام کردن به مرتب کردن استفاده می‌کند. بعد ما به الگاریتم‌هایی برای اجرای عملیات SELECT در بخش 180202 می‌پردازیم،‌ به عملیات ‌JOIN در بخش 180203 و عملیات PRIJECT و عملیاتهای مجموعه در بخش IE 1802 و عملیات‌های گروهی و جمعی در بخش 2 .2 . 18 می‌پردازیم. 1. 2. 18- مرتب کردن خارجی: مرتب کردن، یکی از الگاریتم‌های اولیه بکار رفته در پردازش پرس و جو است. برای مثال، ‌به هر وقت پرس و جوی SQL ، بعد ORDER BY را تعیین می‌کند، نتیجه پرس و جو باید مرتب گردد. مرتب کردن، مؤلفه کلیدی در الگاریتم‌های مرتب کردن- ادغام کردن (مرتب-ادغام) بکار رفته برای Join و عملیاتهای دیگر، دور الگاریتم‌های حذف کپی برای عملیات PROYECT است. ما روی بعضی از این الگاریتم‌ها در بخش‌ 3. 2. 18 و 4. 02 18 بحث خواهیم کرد. توجه کنید که مرتب کردن در صورتی که اجتناب می‌شود که شاخص مناسب برای امکان دسترسی مرتب شده به ثبت‌ها وجود دارد. مرتب کردن خارجی به الگاریتم‌های مرتب کردن اشاره می‌کند که برای فایل های بزرگ ثبت ‌های ذخیره شده روی دیسک مناسب هستند که در حافظه اصلی، مثل اکثر فایل های پایگاه اطلاعاتی تناسب نمی‌‌یابد. الگاریتم‌ مرتب کردن خارجی نمونه از استراتژی مرتب- ادغام استفاده می‌کند، که با مرتب کردن- فایل‌های فرعی کوچک بنام اجراها در فایل اصلی شروع می‌شود و بعد اجراها مرتب شده ادغام می‌شوند،‌‍ فایل‌های فرعی مرتب شده بزرگتری ایجاد می‌شوند که بترتیب ادغام می‌شوند. الگاریتم ادغام –مرتب،‌ مثل دیگر الگاریتم های پایگاه اطلاعاتی به فاضی بافر در حافظه اصلی نیاز دارد،‌ جایی که مرتب کردن واقعی و ادغام اجراها انجام می‌ شود. الگاریتم اصلی (سیبک) شرح داده شده در تصویر 1802 ، شامل دو مرحله است: (1) فاز یا مرحله مرتب کردن و (2) مرحله ادغام.در مرحله مرتب کردن، اجراهای فایلی که می‌تواند در فضای باز موجود تناسب یابد در حافظه اصلی خوانده می‌شوند و با استفاده از الگاریتم مرتب کردن داخلی مرتب می‌شود عقب دیسک بعنوان فایل‌های فرعی مرتب شده متوفی نوشته می‌شود. اندازه اجرا و تعداد اجراهای آغازین توسط تعداد بلوکهای فایل (b) و فضای بافر موجود (NB) بیان می‌شود. برای مثال اگر بلوکو اندازه قایل 1024=b بلوک باشد،‌ بعد یا 205 اجرای آغازین در هر اندازه 5 بلوک است. از اینرو، بعد از مرحله مرتب کردن، 205 اجرای مرتب شده بعنوان فایل‌های فرعی موقتی روی دیسک ذخیره می‌شوند. اجرای مرتب شده بعنوان فایل‌های فرعی موقتی و روی دیسک ذخیره می‌شوند. در مرحله ادغام شدن، اجراهای مرتب شده،‌ در طول یک یا چند گذر ادغام می‌‌شوند. درجه ادغام شدن تعداد اجراهایی است که می‌توانند با همدیگر در هر گذر ادغام شوند. در هر گذر، یک بلوک بافر، برای حفظ یک بلوک از هر اجرای ادغام شده نیاز می‌باشد، و یک بلوک برای تشکیل یک بلوک نتیجه ادغام لازم است . از اینرو،‌ کوچکتر از و است و تعداد گذرها، است. در مثالها، است. لذا،‌ 205 اجرای مرتب شده آغازین در 25 تا در پایان اولیه گذر ادغام می‌شود: که بعد به 12، بعد 4 بعد یک اجرا ادغام می‌شوند، که بدین معنی است که چهارگذر لازم می‌باشد. حداقل از 2،‌ عملکرد بدترین مورد الگاریتم را ارائه می‌دهد که بدین قرار است: اولین جمله، تعداد دسترسی‌های بلوک برای مرحله مرتب سازی را نشان می‌دهد، چون هر بلوک فایل دو برابر دسترسی می‌شود، یکبار برای خواندن در حافظه،‌ یکبار برای نوشتن ثبت‌ها دیسک بعد از مرتب کردن. دومین جمله، تعداد دسترسی‌های بلوک برای مرحله ادغام کردن را نشان می‌دهد، با فرض اینکه بدترین مورد از 2 وجود دارد. بطور کلی، ثبت وقایع در مبنای و عبارت برای تعداد دسترسی‌های بلوک نوین قرار می‌شود: تصویر 1802- شرح الگاریتم ادغام – مرتب کردن برای مرتب کردن خارجی: 2. 2. 18- اجرا و پیاده‌سازی عملیات SELECT : تعداد Option‌هایی ( انتخاب‌ها) برای اجرای عملیات SELECT وجود دارد، که بعضی به فایل دارای مسیرهای دستیابی خاص بستگی دارند و تنها برای انواع معین شرایط انتخاب بکار می‌رود. ما به الگاریتم‌هایی جهت اجرای SELECT در این بخش می‌پردازیم. ما از عملیاتهای زیر استفاده می‌کنیم که روی پایگاه اطلاعاتی رابطه‌ای در تصویر 507 مشخص شده و بحث ما را روشن می‌سازد: متدهای جستجو برای انتخاب ساده: تعدادی الگاریتم های جستجو برای انتخاب ثبت‌ها از فایل امکان‌پذیر می‌باشند،‌ چون ثبت‌‌های فایل نامیده می شوند، چون ثبت‌‌های فایل را برای جستجو و بازیابی ثبت‌هایی که شرایط انتخاب را برآورده می‌سازند، پویش می‌کنند. اگر الگاریتم جستجو شامل کاربرد شاخص باشد،‌ جستحوی شاخص پویش شاخص نامیده می‌شد. متدهای جستجوی زیر ( 1S تا s6 ) مثالهایی از الگاریتم‌های جستجو هستند که می‌توانند برای اجرای عملیات انتخاب بکار روند: - s1 : جستجوی خطی (روش برنامه‌سازی پر قدرت): بازیابی هر ثبت در فایل، و تست اینکه آیا مقادیر ویژگی آن،‌ شرط انتخاب را براورده می‌سازد یا خیر. - S2: جستجوی بنیادی (دودویی):‌ اگر شرط انخاب شامل قیاس تساوی روی ویژگی کلیدی باشد که روی آن فایل مرتب می‌شود، جستجوی بنیادی، که نسبت به جستجوی خطی کارآمدتر است، می‌تواند بکار رود. مثال OP1 است چنانچه ssn ، ‌ویژگی کلیدی با شاخص اولیه‌( یا کلید hash) باشد،‌ برای مثال، SNN-‘123456789’ در opt، شاخص اولیه یا کلید hosh) برای بازیابی ثبت استفاده می‌شود، توجه کنید که این شرط، ثبت تکی را بازیابی می‌کند. - S4: کاربرد شاخص اولیه برای بازیابی ثبت‌های متعدد: اگر شرط انتخاب شدن قیاس تساوی روی ویژگی غیر کلیدی با شاخص خدشه‌سازی باشد،‌ برای مثال در ، شاخص را برای بازیابی کل ثبت‌ها در برآورده ساختن شرط،‌ استفاده کنید. - S6: بکارگیری شاخص ثانویه (درخت ) روی قیاس تساوی: این متد جستجو می‌تواند برای بازیابی ثبت تکی بکار رود چنانچه فیلد نمایه‌سازی (شاخص‌سازی) کلید باشد یا برای بازیابی ثبت‌های متعدد بکار می‌رود چنانچه فیلد شاخص‌سازی کلید نباشد،‌ این می‌تواند برای مقایساتی شامل یا بکار رود. در بخش 3. 4. 18، ما به چگونگی توسعه فرمول‌هایی می‌پردازیم که هزینه‌دستیابی این متدهای جستجو را در اصطلاحات تعداد دستیابی‌های بلوک و زمان دستیابی برآورد می‌کند. Method S!برای هر فایلی استفاده می‌شود ولی تمام متدهای دیگر به داشتن مسیر دستیابی مناسب روی ویژگی‌بکار رفته در شرط انتخاب بستگی دارند. متدهای S4 و 6،‌ می‌توانند برای بازیابی ثبت‌ها در دامنه معین بکار روند برای مثال پرس و جوها شامل این شرط‌ها، پرس وجوهای دامنه نیامد به می‌شوند.متدهای جستجو برای انتخاب پیچیده: اگر شرط عملیات SELECT، شرط تقارنی و مرتبط باشد، در اینصورت اگر از چندین شرط ساده در ارتباط با ارتباط منطقی and مثل op4 فوق تشکیل شود، ‌DBM می‌تواند از متدهای اضافی زیر برای اجرای عملیات استفاده کند: S7: انتخاب تقارنی یا ارتباطی با استفاده از شاخص اختصاص:‌ اگر ویژگی شامل شده در هر شرط ساده متکی در شرط تقارنی، مسیر دستیابی داشته باشد که به کاربرد یکی از متدهای S2 تا S6 امکان عمل دهد، از آن شرط برای بازیابی ثبت‌های استفاده کنید و بعد کنترل کنید آیا هر ثبت بازیابی شد، شرایط ساده باقیمانده در شرط تقارنی را برآورده می‌کند یا خیر. S8 : انتخاب تقارنی (ارتباطی) با استفاده از شاخص مرکب: اگر دو یا چند ویژگی در شرایط تساوی در شرط تفاوتی شامل شدند و شاخص مرکب در فیلدهای مرکب وجود داشته باشد، برای مثال اگر شاخص روی کلید مرکب (ESSN, PNO) در فایل Works ON برای OPS ایجاد شده باشد، می توان از شاخص مستقیماً اشاره کرد.

در این تحقیق ما به تکنیک‌های بکار رفته توسط DMBS برای پردازش، بهینه‌سازی و اجرای پرس و جوهای سطح بالا می‌پردازیم. پرس و جوی بیان شده در زبان پرس‌و جوی سطح بالا مثل SQL ابتدا باید پویش و تجزیه . معتبر شود. پویشگر (اسکنر) علامت هر زبان، مثل لغات کلیدی SQL، اساس ویژگی، و اساس رابطه، را در متن پرس و جو شناسایی می‌کند،‌ در عوض تجربه کننده، ساختار دستوری پرس و جو را برای تعیین اینکه آیا بر طبق قوانین دستوری زبان پرس و جو تدوین می‌شود یا خیر، چک می‌کند. پرس و جو باید همچنین معتبر شود، با چک کردن اینکه تمام اسامی رابطه و ویژگی معتبر هستند و اسامی معنی‌دار در طرح پایگاه اطلاعاتی ویژها‌ی پرس و جو می‌شوند. نمونه داخلی پرس و جو ایجاد می‌شود،‌‌ که تحت عنوان ساختار داده‌های درختی بنام درخت پرس و جو می‌باشد. ارائه پرس و جو با استفاده از ساختار داده‌های گراف بنام گراف پرس و جو نیز امکان پذیر است. DOMS باید استراتژی اجرایی برای بازیابی نتیجه پرس و جو از فایل‌های پایگاه اطلاعاتی را هدایت کند. پرس و جو استراتژیهای اجرایی بسیاری دارد. و مرحلة انتخاب،‌ مورد مناسبی برای پردازش پرس وجو تحت عنوان بهینه‌سازی پرس و جو شناخته شده است. تصویر 1، مراحل مختلف پردازش پرس و جوی سطح بالا را نشان می‌دهد. قطعه بر نامه بهینه‌ساز پرس وجو، وظیفه ایجاد طرح اجرایی را بعهده دارد و ژنراتور (تولید کننده) که ، کد را برای اجرای آن طرح ایجاد می‌کند. پردازنده پایگاه اطلاعاتی زمان اجرا وظیفه اجرای که پرس و جو را بعهده دارد،‌ خواه در وضعیت کامپایل شده یا تفسیر شده جهت ایجاد نتیجه پرس و جو. اگر خطای زمان اجرا نتیجه شود،‌ پیام خطا توسط پایگاه اطلاعاتی زمان اجرا ایجاد می‌شود. اصطلاح بهینه‌سازی نام بی مسمایی است چون در بعضی موارد،‌ طرح اجرایی انتخاب شده، استراتژی بهینه نمی‌باشد، آن فقط استراتژی کارآمد معقول برای اجرای پرس و جو است. یافتن استراتژی بهینه، ضامن صرف زمان زیادی است، بجز برای ساده‌ترین پرس و جوها،‌ ممکن است به اطلاعاتی روی چگونگی اجرای فایل‌ها در فهرست‌های فایل‌ها، اطلاعاتی که ممکن است کاملاً در کاتالوگ DBMS در دسترس نباشد، نیاز باشد. از اینرو،‌ برنامه‌ریزی استراتژی اجرا ممکن است توصیف درست‌تری نسبت به بهینه‌سازی پرس و جو باشد. برای زبانهای پایگاه اطلاعاتی (دریایی) جهت‌یابی در سطح پایینتر در سیستم‌های قانونی، مثل شبکه DML شبکه‌ای یا MOML سلسله مراتبی،‌ برنامه نویس باید، استراتی اجرای پذیرش و جو را انتخاب کند ضمن اینکه برنامه پایگاه اطلاعاتی را می‌نویسد. اگر DBMS فقط زیان جهت‌یابی را ارائه دهد. فرصت و نیاز محدودی برای بهینه‌سازی پرس وجوی وسیع توسط DBMS وجود دارد، در عوض به برنامه نویس قابلیت انتخاب استراتژی اجرایی بهینه ارائه می‌شود. بعبارت دیگر، زبان پرس و جو در سطح بالا، مثل SQL برای DBMSهای رابطه‌ای یا OQL برای DBMS‌های مقصد،‌ در ماهیت تفریطی‌تر است. چون آنچه نتایج مورد نظر پرس و جو است بغیر از شناسایی جزئیات چگونگی بدست آمدن نتیجه،‌ را تعیین می‌کند. بهینه‌سازی پرس و جو برای پرس و جوهایی ضروی است که در زبان پرس و جوی سطح بالا تعیین می شوند. ما روی توصیف بهینه‌سازی پرس و جو در زمینه ROBMS تمرکز می‌کنیم چون بسیاری از تکنیک‌هایی که توصیف می‌ کنیم برای، برای ODBMSها تطبیق یافته‌اند. DBMS رابطه‌ای باید استراتژیهای اجرای پرس و جوی دیگری را ارزیابی کند و استراتژی بهینه یا کارآمد معقولی را انتخاب کند. هر DBMS ،‌ تعدادی الگاریتم دسترسی به پایگاه اطلاعاتی کلی دارد که علامتهای رابطه‌ای مثل SELECT یا JOIN یا ترکیبی از این عملیات ‌ها را اجرا می‌کند. تنها استراتژیهای اجرایی که می‌توانند توسط الگاریتم‌های دسترسی DBMS اجرا شوند و برای طراحی پایگاه اطلاعاتی فیزیکی ویژه و پرس و جوی خاص بکار روند،‌ می‌توانند توسط قطعه برنامه بهینه‌سازی پرس و جو در نظر گرفته شوند. ما با بحث کلی چگونگی ترجمه پرس و جوهای SQL به پرس و جوهای جبری رابطه‌ای و در بهینه‌شدن آنها کار را شروع می‌کنیم. بعد ما روی الگاریتم‌ها برای اجرای عملیات‌های رابطه‌ای در بخش 1802 بحث می‌کنیم. بدنبال این مطلب، بررسی از استراتژیهای بهینه‌سازی پرس و جو را ارائه می‌دهیم. دو تکنیک اصلی برای اجرای بهینه‌‌سازی پرس و جو وجود دارد. اولین تکنیک بر اساس قوانین ذهنی جهت ترتیب دادن عملیات‌ها در استراتژی اجرای پرس و جو می‌باشد. ذهن قانونی است که بخوبی در اکثر موارد عمل می‌کند ولی برای کار مناسب در هر مورد کنش تضمین نمی‌شود. قوانین عملیات‌ها را در درخت پرس وجو مجدداً ترتیب می‌دهند. دومین تکنیک شامل برآورد هزینه استراتژیهای اجرای متفاوت و انتخاب طرح اجرایی با پایین‌ترین هزینه برآورد است. دو تکنیک معمولاً در بهینه ساز پرس و جو (باهم ترکیب می‌شوند) بهم ملحق می‌گردند. بررسی مختصری از عوامل در نظر گرفته شده در طول بهینه‌سازی پرس و جو در RDBMS بازرگانی ORACLL= را ارائه می‌دهیم. در بخش بعدی نوعی بهینه‌سازی پرس و جوی معنایی را ارائه می‌دهد که در آن محدودیت‌های شناخته شده برای پرداختن به استراتژیهای اجرایی پرس و جوی کارآمد استفاده می‌شوند. 2 – ترجمه پرس و جوهای SQL به پرس و جوهای رابطه‌ای: در عمل، SQL زبان پرس وجویی است که در اکثر RDBMS ‌های بازرگانی استفاده می‌شود. پرس وجوی SQL ، ابتدا به عبارت جبری رابطه‌ای توسعه یافته معادل،‌ نمایانگر ساختار داروهای درخت پرس و جو، ترجمه می‌شود و بعد بهینه‌سازی می‌شود. پرس و جوهای SQL به بلوکهای پرس و جو تجزیه می‌شوند،‌ که واحدهای اساسی را تشکیل می‌دهند که می‌توانند به عملکردهای جبری ترجمه شوند و بهینه‌سازی شوند. بلوک پرس و جو شامل عبارت SELECT- FROM-WHERE تکی و بندهای Groop By و HAVING است چنانچه این‌ها بخشی از بلوک باشند. از اینرو،‌ پرس و جوهای تو در تو در پرس و جو بعنوان بلوکهای پرس و جوی مجزا شناسایی می‌شوند. چون SQL شامل عملکردهای گروهی، مثل MAX ،‌ COUNT,SUM می‌باشد، این عملگرها باید در پرس و جوی جبری توسعه یافته‌ای شامل شوند، همانطوریکه در بخش 705 توصیف شد. پرس و جوی SQL در رابطه EMPLOEE در تصویر 705 را در نظر بگیرید: این پرس و جو شامل، پرس و جوی فرعی تو در تو است و از اینرو به دو بلوک تجزیه می‌شود. بلوک درونی بدین صورت است: و بلوک بیرونی بدین صورت می باشد: که C نمایانگر نتیجه حاصله از بلوک درونی است. بلوک درونی به عبارت جبری رابطه‌ای توسعه یافته زیر ترجمه شده است: و بلوک بیرونی به عبارت زیر ترجمه شده است: بهینه‌ساز پرس و جو، طرح اجرایی را برای هر بلوک انتخاب می‌کند. ما باید اشاره کنیم به در مثال فوق، بلوک درونی نیاز به ارزیابی شدن دارد تنها زمانی که، حداکثرحقوقی که بعکار می‌رود که بعنوان ثابت C، توسط بلوک بیرونی استفاده می‌شود. ما اینرو پرس و جوی تودرتوی غیرمرتبط نامیدیم (در فصل 8). آن برای بهینه‌سازی پرس و جوهای تو در توی مرتبط پیچیده‌تر، خیلی سخت‌تر است، جایی که متغیر Tuple از بلوک بیرونی در بند WHERE در بلوک درونی ظاهر می‌شود. 1802- الگاریتم های انسانی برای اجرای عملیاتهای پرس و جو: RDBMS شامل الگاریتم‌هایی برای اجرای انواع مختلف عملیاتهای رابطه‌‌ای است که می‌توانند در استراتژی اجرای پرس و جو نمایان شوند، این عملیات‌ها شامل عملیاتهای جبری بیسیک (اصلی) و توسعه یافته مورد بحث در فصل 7 ، و در بسیاری موارد، الحاقاتی از این عملیات‌ها می‌باشد. برای هر یک از این عملیات ها یا الحاقی از عملیات‌ها، یک یا چند الگاریتم برای اجرای عملیات‌ها در دسترس قرار دارند. الگاریتم ممکن است فقط برای ساختارهای ذخیره خاص مسیرهای دستیابی بکار روند، در اینصورت ،‌ تنها در صورتی استفاده می‌شود که فایل های موجود در عملیات شامل این مسیرهای دستیابی هستند. در این بخش، ما به الگاریتم‌های نمونه بکار رفته برای اجرای SEKECT ، JOIN و دیگر عملیاتهای رابطه‌ای می‌پردازیم. ما بحث مرتب کردن خارجی را در بخش 180201 آغاز می‌کنیم که در قلب عملیاتهای رابطه‌ای قرار دارد که از استراتژیهای ادغام کردن به مرتب کردن استفاده می‌کند. بعد ما به الگاریتم‌هایی برای اجرای عملیات SELECT در بخش 180202 می‌پردازیم،‌ به عملیات ‌JOIN در بخش 180203 و عملیات PRIJECT و عملیاتهای مجموعه در بخش IE 1802 و عملیات‌های گروهی و جمعی در بخش 2 .2 . 18 می‌پردازیم. 1. 2. 18- مرتب کردن خارجی: مرتب کردن، یکی از الگاریتم‌های اولیه بکار رفته در پردازش پرس و جو است. برای مثال، ‌به هر وقت پرس و جوی SQL ، بعد ORDER BY را تعیین می‌کند، نتیجه پرس و جو باید مرتب گردد. مرتب کردن، مؤلفه کلیدی در الگاریتم‌های مرتب کردن- ادغام کردن (مرتب-ادغام) بکار رفته برای Join و عملیاتهای دیگر، دور الگاریتم‌های حذف کپی برای عملیات PROYECT است. ما روی بعضی از این الگاریتم‌ها در بخش‌ 3. 2. 18 و 4. 02 18 بحث خواهیم کرد. توجه کنید که مرتب کردن در صورتی که اجتناب می‌شود که شاخص مناسب برای امکان دسترسی مرتب شده به ثبت‌ها وجود دارد. مرتب کردن خارجی به الگاریتم‌های مرتب کردن اشاره می‌کند که برای فایل های بزرگ ثبت ‌های ذخیره شده روی دیسک مناسب هستند که در حافظه اصلی، مثل اکثر فایل های پایگاه اطلاعاتی تناسب نمی‌‌یابد. الگاریتم‌ مرتب کردن خارجی نمونه از استراتژی مرتب- ادغام استفاده می‌کند، که با مرتب کردن- فایل‌های فرعی کوچک بنام اجراها در فایل اصلی شروع می‌شود و بعد اجراها مرتب شده ادغام می‌شوند،‌‍ فایل‌های فرعی مرتب شده بزرگتری ایجاد می‌شوند که بترتیب ادغام می‌شوند. الگاریتم ادغام –مرتب،‌ مثل دیگر الگاریتم های پایگاه اطلاعاتی به فاضی بافر در حافظه اصلی نیاز دارد،‌ جایی که مرتب کردن واقعی و ادغام اجراها انجام می‌ شود. الگاریتم اصلی (سیبک) شرح داده شده در تصویر 1802 ، شامل دو مرحله است: (1) فاز یا مرحله مرتب کردن و (2) مرحله ادغام.در مرحله مرتب کردن، اجراهای فایلی که می‌تواند در فضای باز موجود تناسب یابد در حافظه اصلی خوانده می‌شوند و با استفاده از الگاریتم مرتب کردن داخلی مرتب می‌شود عقب دیسک بعنوان فایل‌های فرعی مرتب شده متوفی نوشته می‌شود. اندازه اجرا و تعداد اجراهای آغازین توسط تعداد بلوکهای فایل (b) و فضای بافر موجود (NB) بیان می‌شود. برای مثال اگر بلوکو اندازه قایل 1024=b بلوک باشد،‌ بعد یا 205 اجرای آغازین در هر اندازه 5 بلوک است. از اینرو، بعد از مرحله مرتب کردن، 205 اجرای مرتب شده بعنوان فایل‌های فرعی موقتی روی دیسک ذخیره می‌شوند. اجرای مرتب شده بعنوان فایل‌های فرعی موقتی و روی دیسک ذخیره می‌شوند. در مرحله ادغام شدن، اجراهای مرتب شده،‌ در طول یک یا چند گذر ادغام می‌‌شوند. درجه ادغام شدن تعداد اجراهایی است که می‌توانند با همدیگر در هر گذر ادغام شوند. در هر گذر، یک بلوک بافر، برای حفظ یک بلوک از هر اجرای ادغام شده نیاز می‌باشد، و یک بلوک برای تشکیل یک بلوک نتیجه ادغام لازم است . از اینرو،‌ کوچکتر از و است و تعداد گذرها، است. در مثالها، است. لذا،‌ 205 اجرای مرتب شده آغازین در 25 تا در پایان اولیه گذر ادغام می‌شود: که بعد به 12، بعد 4 بعد یک اجرا ادغام می‌شوند، که بدین معنی است که چهارگذر لازم می‌باشد. حداقل از 2،‌ عملکرد بدترین مورد الگاریتم را ارائه می‌دهد که بدین قرار است: اولین جمله، تعداد دسترسی‌های بلوک برای مرحله مرتب سازی را نشان می‌دهد، چون هر بلوک فایل دو برابر دسترسی می‌شود، یکبار برای خواندن در حافظه،‌ یکبار برای نوشتن ثبت‌ها دیسک بعد از مرتب کردن. دومین جمله، تعداد دسترسی‌های بلوک برای مرحله ادغام کردن را نشان می‌دهد، با فرض اینکه بدترین مورد از 2 وجود دارد. بطور کلی، ثبت وقایع در مبنای و عبارت برای تعداد دسترسی‌های بلوک نوین قرار می‌شود: تصویر 1802- شرح الگاریتم ادغام – مرتب کردن برای مرتب کردن خارجی: 2. 2. 18- اجرا و پیاده‌سازی عملیات SELECT : تعداد Option‌هایی ( انتخاب‌ها) برای اجرای عملیات SELECT وجود دارد، که بعضی به فایل دارای مسیرهای دستیابی خاص بستگی دارند و تنها برای انواع معین شرایط انتخاب بکار می‌رود. ما به الگاریتم‌هایی جهت اجرای SELECT در این بخش می‌پردازیم. ما از عملیاتهای زیر استفاده می‌کنیم که روی پایگاه اطلاعاتی رابطه‌ای در تصویر 507 مشخص شده و بحث ما را روشن می‌سازد: متدهای جستجو برای انتخاب ساده: تعدادی الگاریتم های جستجو برای انتخاب ثبت‌ها از فایل امکان‌پذیر می‌باشند،‌ چون ثبت‌‌های فایل نامیده می شوند، چون ثبت‌‌های فایل را برای جستجو و بازیابی ثبت‌هایی که شرایط انتخاب را برآورده می‌سازند، پویش می‌کنند. اگر الگاریتم جستجو شامل کاربرد شاخص باشد،‌ جستحوی شاخص پویش شاخص نامیده می‌شد. متدهای جستجوی زیر ( 1S تا s6 ) مثالهایی از الگاریتم‌های جستجو هستند که می‌توانند برای اجرای عملیات انتخاب بکار روند: - s1 : جستجوی خطی (روش برنامه‌سازی پر قدرت): بازیابی هر ثبت در فایل، و تست اینکه آیا مقادیر ویژگی آن،‌ شرط انتخاب را براورده می‌سازد یا خیر. - S2: جستجوی بنیادی (دودویی):‌ اگر شرط انخاب شامل قیاس تساوی روی ویژگی کلیدی باشد که روی آن فایل مرتب می‌شود، جستجوی بنیادی، که نسبت به جستجوی خطی کارآمدتر است، می‌تواند بکار رود. مثال OP1 است چنانچه ssn ، ‌ویژگی کلیدی با شاخص اولیه‌( یا کلید hash) باشد،‌ برای مثال، SNN-‘123456789’ در opt، شاخص اولیه یا کلید hosh) برای بازیابی ثبت استفاده می‌شود، توجه کنید که این شرط، ثبت تکی را بازیابی می‌کند. - S4: کاربرد شاخص اولیه برای بازیابی ثبت‌های متعدد: اگر شرط انتخاب شدن قیاس تساوی روی ویژگی غیر کلیدی با شاخص خدشه‌سازی باشد،‌ برای مثال در ، شاخص را برای بازیابی کل ثبت‌ها در برآورده ساختن شرط،‌ استفاده کنید. - S6: بکارگیری شاخص ثانویه (درخت ) روی قیاس تساوی: این متد جستجو می‌تواند برای بازیابی ثبت تکی بکار رود چنانچه فیلد نمایه‌سازی (شاخص‌سازی) کلید باشد یا برای بازیابی ثبت‌های متعدد بکار می‌رود چنانچه فیلد شاخص‌سازی کلید نباشد،‌ این می‌تواند برای مقایساتی شامل یا بکار رود. در بخش 3. 4. 18، ما به چگونگی توسعه فرمول‌هایی می‌پردازیم که هزینه‌دستیابی این متدهای جستجو را در اصطلاحات تعداد دستیابی‌های بلوک و زمان دستیابی برآورد می‌کند. Method S!برای هر فایلی استفاده می‌شود ولی تمام متدهای دیگر به داشتن مسیر دستیابی مناسب روی ویژگی‌بکار رفته در شرط انتخاب بستگی دارند. متدهای S4 و 6،‌ می‌توانند برای بازیابی ثبت‌ها در دامنه معین بکار روند برای مثال پرس و جوها شامل این شرط‌ها، پرس وجوهای دامنه نیامد به می‌شوند.متدهای جستجو برای انتخاب پیچیده: اگر شرط عملیات SELECT، شرط تقارنی و مرتبط باشد، در اینصورت اگر از چندین شرط ساده در ارتباط با ارتباط منطقی and مثل op4 فوق تشکیل شود، ‌DBM می‌تواند از متدهای اضافی زیر برای اجرای عملیات استفاده کند: S7: انتخاب تقارنی یا ارتباطی با استفاده از شاخص اختصاص:‌ اگر ویژگی شامل شده در هر شرط ساده متکی در شرط تقارنی، مسیر دستیابی داشته باشد که به کاربرد یکی از متدهای S2 تا S6 امکان عمل دهد، از آن شرط برای بازیابی ثبت‌های استفاده کنید و بعد کنترل کنید آیا هر ثبت بازیابی شد، شرایط ساده باقیمانده در شرط تقارنی را برآورده می‌کند یا خیر. S8 : انتخاب تقارنی (ارتباطی) با استفاده از شاخص مرکب: اگر دو یا چند ویژگی در شرایط تساوی در شرط تفاوتی شامل شدند و شاخص مرکب در فیلدهای مرکب وجود داشته باشد، برای مثال اگر شاخص روی کلید مرکب (ESSN, PNO) در فایل Works ON برای OPS ایجاد شده باشد، می توان از شاخص مستقیماً اشاره کرد.


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

دانلود شرح زبان سی شارپ و قابلیت های تحت وب آن (دات نت)

‍C یکی از زبانهای جدید برنامه‌سازی شی‌گرا است که با ارائة رهیافت ComponentBased به طراحی و توسعه نرم‌افزار می‌پردازد آنچه ما در حال حاضر از زبانهای برنامه‌سازی ComponentBased در اختیار داریم و آنچه که C در اختیار ما قرار می‌دهد، افق جدیدی به سوی تولید و طراحی نرم‌افزارهای پیشرفته را در روی ما قرار می‌دهند
دسته بندی برنامه نویسی
فرمت فایل doc
حجم فایل 146 کیلو بایت
تعداد صفحات فایل 95
شرح زبان سی شارپ و قابلیت های تحت وب آن (دات نت)

فروشنده فایل

کد کاربری 1024

شرح زبان سی شارپ و قابلیت های تحت وب آن (دات نت)

مقدمه

‍C# یکی از زبانهای جدید برنامه‌سازی شی‌گرا است که با ارائة رهیافت Component-Based به طراحی و توسعه نرم‌افزار می‌پردازد. آنچه ما در حال حاضر از زبانهای برنامه‌سازی Component-Based در اختیار داریم و آنچه که C# در اختیار ما قرار می‌دهد، افق جدیدی به سوی تولید و طراحی نرم‌افزارهای پیشرفته را در روی ما قرار می‌دهند.

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

زبان برنامه‌سازی C#، به همراه تکنولوژی جدید شرکت نرم‌افزاری مایکروسافت یعنیNET. ارائه گردید، از این رو از تکنولوژیNET. این شرکت بهره می‌برد. پس در ابتدا به بیان مطالبی درباره محیطNET. می‌پردازیم.


فصل اول:تکنولوژیNET.

چراNET

در گذشته زبانهای برنامه‌سازی، سیستم‌های عامل و محیط‌های اجرایی نرم‌افزار‌ها برای دوره‌ای خاص ساخته می‌شدند. هنگامیکه برنامه‌ها از محیط‌های رومیزی(Desktop) به اینترنت منتقل می‌شدند، ابزارهای موجود نیازمند API هایی اضافی و قابلیتهای دیگری بودند. بیشتر این قابلیتها در کنار زبانهای برنامه‌سازی بعنوان ابزارهایی جهت رفع این نیازمندیها ارائه می‌شدند. هرچند این ابزارهای اضافی بصورت قابل توجهی نیازمندیها را حل کرده و باعث رسیدن اینترنت به وضعیت کنونی شدند، اما همچنان مسائل بسیاری وجود داشت که نیاز به حل شدن داشتند.

NET. به منظور پشتیبانی از کاربردهای عصر جدید اینترنت ساخته شد. مواردی همچون گسترش، امنیت و versioning، که از مسایل مهممی بودند، توسط NET. پوشش داده شدند. قسمت مرکزیNET. بخش CLR (Common Language Runtime) است که یک موتور اجرایی مجازی است که از توسعه، امنیت و ارتقای نسخه کد پشتیبانی می‌نماید. در گذشته چنین امکاناتی برای کدهای کامپایل شده فراهم نبود. بدلیل اینکهNET. توانست بر این مشکلات اساسی فائق آید، راه حل قدرتمندتری جهت ساخت برنامه‌های تحت اینترنت به شمار می‌رود.

NET. چیست؟

NET. محیطی جهت ساخت برنامه‌های توزیع شده است که شامل ابزارهایی نظیر ""کتابخانه کلاسهای پایه"(BCL: Base Class Library)، CLR و زبانهای برنامه‌نویسی است. این ابزارها امکان ساخت انواع مختلفی از نرم‌افزارها، از قبیل فرمهای ویندوز، ADONET.، ASPNET. و سرویسهای وب، را فراهم می‌آورند.

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

ADONET. مجموعه‌ای از کلاسهای شی‌گرایی است که جهت ساخت مولفه‌های داده و سطوح دسترسی داده در برنامه‌های n-tiered مورد استفاده قرار می‌گیرد.

ASPNET. شامل مدل برنامه‌نویسی فرمهای وب است که بوسیلة آن برنامه‌های تحت وب ساخته شده و تحت اینترنت قابلیت اجرا پیدا کرده و از طریق مرورگر(Browser) قابل دسترسی می‌باشند. این روش مدل بهبود یافته برنامه‌سازی وب است که در آن کدها در سرور کامپایل می‌شوند ولی همانند صفحات HTML در کامپیوتر مشتری اجرا می‌شوند.

سرویسهای وب، رهیافتی جدید، مستقل از platform و استاندارد، جهت ایجاد ارتباط و فعالیت بین سیستمهای ناهمگون در اینترنت، می‌باشند. سرویسهای وبNET.، از زیر ساخت شی‌گرایی برنامه‌نویسی ASPNET. استفاده می‌کنند، اما همچنان از استانداردهای باز و مدلی بر پایة پیغام(Message Based Model) استفاده می‌نمایند. استفاده از استانداردهای باز از قبیل XML، WSDL و UDDI باعث می‌شوند تا سرویسهای وب با سایر سرویسهای وب استاندارد که پیاده‌سازی‌هایی متفاوت دارند، بدون توجه به محیط و platform آنها، ارتباط برقرار نمایند.

این چند نمونه، اندکی از انواع مختلف نرم‌افزارهایی بودند که می‌توان تحتNET. به پیاده‌سازی آنها پرداخت.

کتابخانه‌های کلاس‌های پایه(Base Class Library: BCL)

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

NET. Namespaces

Namespace

Description

System

The most commonly used types.

System.CodeDom

Allows creating types that automate working with source code, that is, compilers and code creation tools.

System.Collections

Collection types such as ArrayList, Hashtable, and Stack.

System.ComponentModel

Supports building reusable components.

System.Configuration

Types for working with various kinds of XML configuration files.

System.Data

Most of the types for ADONET. database programming. Other types are in namespaces that are specific to a database or data interface.

System.Diagnostics

Process, EventLog, and Performance Counter types.

System.DirectoryServices

Managed interface for accessing Windows Active Directory Services.

System.Drawing

GDI+ types.

System.EnterpriseServices

COM+ types.

System.Globalization

Types for culture-specific support of calendars, formatting, and languages.

System.IO

Directory, File, and Stream types.

System.Management

APIs for performing WMI tasks.

System.Messaging

Types for working with message queues.

SystemNET.

Access to networking protocol types.

System.Reflection

Reflection APIs for inspecting assembly metadata.

System.Resources

Types for culture-specific resource management.

System.Runtime

COM Interop, Remoting, and Serialization support.

System.Security

Code access security, role-based security, and cryptography types.

System.ServiceProcess

Types for building Windows Services.

System.Text

Text encoding/decoding, byte array from/to string translation, the StringBuilder class, and regular expressions.

System.Timers

Timer types.

System.Threading

Threads and synchronization types.

System.Web

HTTP Communications, ASPNET., and Web Services types.

System.Windows

Windows Forms types.

System.XML

All XML support types, including XML Schema, XmlTextReaders/XmlTextWriters, XPath, XML Serialization, and XSLT.

جدول 1-1 Namespaceهای مهم و رایج

هر Namespace مجموعه‌ای از کلاسهای از پیس ساخته شدةNET. است که می‌توان از آنها در برنامه‌های مختلف استفاده نمود.

(Common Language Runtime)CLR

CLR یک موتور اجرایی است که با هدف اصلی اجرای هدایت شدة کدها درNET. ایجاد گردیده است. CLR به مدیریت اجرا، ارتقای نسخه و امنیت تمامی کدها درNET. می‌پردازد. به همین دلیل کدهایNET. یا C# اغلب تحت عنوان کدهای مدیریت شده، شناخته می‌شوند.(Managed Code) تمامی کدهایی که به CLR مرتبت هستند، تحت عنوان "مدیریت شده" و کدهایی توسط CLR مدیریت نشده‌اند، بلکه مستقیماً به کد ماشین تبدیل می‌شوند، تحت عنوان "مدیریت نشده" بیان می‌شوند.

کدهای مدیریت شده، به کد ماشین کامپایل نمی‌شوند، بلکه به زبان سطح میانی مایکروسافت(MSIL) کامپایل شده و مورد استفاده قرار می‌گیرند. این زبان سطح میانی را می‌توان زبانی شبیه به زبان اسمبلی تصور کرد. IL در حافظه بارگذاری می‌شود و بلافاصله بوسیلة CLR در حافظه به کد ماشین کامپایل می‌گردد.

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

مسئلة مهم دیگر در مورد CLR، نحوة بارگذاری(Load) و اجرای برنامه توسط آن است. به محض اینکه برنامةNET. شروع به اجرا می‌کند، ویندوز اسمبلیNET. راتشخیص داده و CLR را اجرا می‌کند. سپس CLR نقطه شروع برنامه را شناسایی و پروسة تعیین انواع که در آن، محل قرارگیری انواع مختلف بکار رفته در برنامه مشخص می‌شود را، اجرا می‌کند. اسمبلی شناسایی شده در پروسة Loader بارگذاری می‌گردد.


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

دانلود حافظه RAM

قبل از اینکه Cpu بتواند برنامه‌ها را اجرا کند، دستورات و اطلاعات آن برنامه باید داخل حافظة Ram کامپیوتر منتقل و مستقر شوند
دسته بندی کامپیوتر و IT
فرمت فایل doc
حجم فایل 25 کیلو بایت
تعداد صفحات فایل 20
حافظه RAM

فروشنده فایل

کد کاربری 1024

حافظه RAM

آنچه در این فصل می آموزید:

/ کنترل میزان مصرف حافظه در سیستم

/ اجرای برنامه های ارزیابی و سنجش حافظه

/نمایش اطلاعات حافظة ویندوز به کمک برنامة Sandra

/ آماده شدن برای ارتقا حافظة سیستم

/ عیب یابی نصب حافظه در سیستم

/ حذف کاربرد حافظة بسط یافته و حافظة توسعه یافته در محیط ویندوز

/ کنترل مقدار فیزیکی مصرف RAM در محیط ویندوز

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

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

درک مفهوم لایه‌های ذخیره‌سازی

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

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


جریان اطلاعات از حافظة RAM به پردازنده (‌CPU)

هرگاه Cpu برای اجرای عملیات به اطلاعات یا دستوری نیاز داشته باشد ابتدا آنها را داخل حافظه میانجی L1 جستجو می‌کند. اگر اطلاعات مورد نیاز را آنجا پیدا نکند به سراغ حافظه میانجی L2 خواهد رفت. اگر اطلاعات مورد نیاز را آنجا هم پیدا نکند پس Cpu باید نشانی آدرس آن اطلاعات را از طریق گذرگاه سیستم به حافظه Ram ارسال نماید. درخواست اطلاعات از Cpu باندا به تراشة کنترل کنندة حافظه می‌رسد.

کنترل کنندة حافظه از آدرس رسیده استفاده می‌کند و اطلاعات یا دستور مورد نیاز Cpu را پیدا می‌کند. پس از اینکه کنترل کنندة حافظه این اطلاعات را پیدا می کند آن را از طریق گذرگاه سیستم به Cpu ارسال می‌کند.

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

سازماندهی حافظة RAM توسط کامپیوترهای شخصی

در حافظة Ram اطلاعات ( Data ) و دستوراتی ( Instructions ) ذخیره می شوند که Cpu برای اجرای عملیات به آنها نیاز دارد. می دانید که هر برنامه شامل دستوراتی است که به زبان صفر و یک ها نوشته شده ( یا ترجمه شده) اند. بنابراین در حافظة Ram نیز اطلاعات به شکل صصفرها و یک ها ذخیره می شوند. می توانید حافظة Ram را به شکل چند ردیف از مکانهای ذخیره سازی تصور نمایید.

برنامه نویسان تصور دیگری از حافظة Ram دارند.

آنها مجموعه بیت ها را در یک « لغت» ( Word) گروه بندی می کنند. به همین دلیل پردازنده هایی که از گذرگاه اطلاعات 32 بیتی استفاده می کنند در واقع از لغات 32 بیتی استفاده می کنند. پردازنده هایی که از گذرگاه اطلاعات 64 بیتی استفاده می کنند از بغات 64 بیتی استفاده می کنند. اما در پشت صحنه واقعیت این است که برنامه ها می توانند به بایت های انفرادی داخل حافظة Ram دسترسی داشته باشند. در شکل زیر نمایی از ساختار حافظة Ram را مشاهده می کنید که مکان هر بایت یک آدرس منحصربه فرد دارد. Cpu برای بازخوانی اطلاعات از حافظه Ram یا ثبت اطلاعات رد حافظة Ram باید آدرس مکانهای ذخیره سازی در این حافظه را بداند.

در فصل 12 جزییات مربوط به تبادل اطلاعات از طریق گذرگاه های کامپیوتر بین تراشه ها را می آموزید. هر گاه سیستم (‌System bus ) ارتباط بین حافظة Ram و Cpu را برقرار نمودده و شامل سیستم هایی است که اطلاعات بر روی آنها حرکت می کنند. تعداد بیت های موجود در گذرگاه آدرس مشخص کنندة مقدار حافظه ای هستند که کامپیوتر شخصی می تواند به آنها دسترسی داشته باشد. به عنوان مثال اگر در یک سیستم از گذرگاه آدرس 32 بیتی استفاده شود پس 232 یعنی 4 گیگابایت را می توان آدرس دهی نمود.

یا در یک سیستم که از گذرگاه آدرس 64 بیتی استفاده می شود پس 264 9551616، 737، 18446744 خانة حافظه را می توان آدرس دهی نمود.


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

دانلود تحلیل الگوریتم شاخه و قید موازی آسنکرون

در این مقاله توضیحی درباره کامپیوترهای موازی می‌دهیم و بعد الگوریتمهای موازی را بررسی می‌کنیم ویژگیهای الگوریتم branch bound را بیان می‌کنیم و الگوریتمهای bb موازی را ارائه می‌دهیم
دسته بندی کامپیوتر و IT
فرمت فایل doc
حجم فایل 28 کیلو بایت
تعداد صفحات فایل 32
تحلیل الگوریتم شاخه و قید موازی آسنکرون

فروشنده فایل

کد کاربری 1024

تحلیل الگوریتم شاخه و قید موازی آسنکرون

1- خلاصه:

در این مقاله توضیحی درباره کامپیوترهای موازی می‌دهیم و بعد الگوریتمهای موازی را بررسی می‌کنیم. ویژگیهای الگوریتم branch & bound را بیان می‌کنیم و الگوریتمهای b&b موازی را ارائه می‌دهیم و دسته‌ای از الگوریتمهای b&b آسنکرون برای اجرا روی سیستم MIMD را توسعه می‌دهیم. سپس این الگوریتم را که توسط عناصر پردازشی ناهمگن اجرا شده است بررسی می‌کنیم.

نمادهای perfect parallel و achieved effiency را که بطور تجربی معیار مناسبی برای موازی‌سازی است معرفی می‌کنیم زیرا نمادهای قبلی speed up (تسریع) و efficiency (کارایی) توانایی کامل را برای اجرای واقعی الگوریتم موازی آسنکرون نداشتند. و نیز شرایی را فراهم کردیم که از آنومالیهایی که به جهت موازی‌سازی و آسنکرون بودن و یا عدم قطعیت باعث کاهش کارایی الگوریتم شده بود، جلوگیری کند.

2- معرفی:

همیشه نیاز به کامپیوترهای قدرتمند وجود داشته است. در مدل سنتی محاسبات، یک عنصر پردازشی منحصر تمام taskها را بصورت خطی (Seqventia) انجام میدهد. به جهت اجرای یک دستورالعمل داده بایستی از محل یک کامپیوتر به محل دیگری منتقل می‌شد، لذا نیاز هب کامپیوترهای قدرتمند اهمیت روز افزون پیدا کرد. یک مدل جدید از محاسبات توسعه داده شد، که در این مدل جدید چندین عنصر پردازشی در اجرای یک task واحد با هم همکاری می‌کنند. ایده اصل این مدل بر اساس تقسیم یک task به subtask‌های مستقل از یکدیگر است که می‌توانند هر کدام بصورت parallel (موازی) اجرا شوند. این نوع از کامپیوتر را کامپیوتر موازی گویند.

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

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

دوماً: هر کامپیوتر موازی که عملاً ساخته می‌شود شامل تعداد معینی عناصر پردازشی (Processing element) است. به محض آنکه تعداد taskها فراتر از تعداد عناصر پردازشی برود، بعضی از sub task ها بایستی بصورت خطی اجرا شوند و بعنوان یک فاکتور ثابت در تسریع کامپیوتر موازی تصور می‌شود.

الگوریتمهای B&B مسائل بهینه سازی گسسته را به روش تقسیم فضای حالت حل می‌کنند. در تمام این مقاله فرض بر این است که تمام مسائل بهینه سازی مسائل می‌نیمم کردن هستند و منظور از حل یک مسئله پیدا کردن یک حل ممکن با مقدار می‌نیمم است. اگر چندین حل وجود داشته باشد، مهم نیست کدامیک از آنها پیدا شده.

الگوریتم B&B یک مسئله را به زیر مسئله‌های کوچکتر بوسیله تقسیم فضای حالت به زیر فضاهای (Subspace) کوچکتر، تجزیه می‌کند. هر زیر مسئله تولید شده یا حل است و یا ثابت می‌شود که به حل بهینه برای مسئله اصلی (Original) نمی‌انجامد و حذف می‌شود. اگر برای یک زیر مسئله هیچ کدام از این دو امکان بلافاصله استنباط نشود، آن زیر مسئله به زیرمسئله‌های کوچکتر دوباره تجزیه می‌شود. این پروسه آنقدر ادامه پیدا می‌کند تا تمام زیر مسئله‌های تولید شده یا حل شوند یا حذف شوند.

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

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

با این حال اگر قدرت محاسبه یک کامپیوتر موازی با اضافه کردن عناصر پردازشی اضافه افزایش پیدا کند. اجرای الگوریتم b&b بطور آشکاری تغییر می‌کند (به عبارت دیگر ترتیبی که در آن زیر برنامه‌ها انشعاب پیدا می‌کنند تغییر می‌کند). بنابراین حل مسائل بهینه‌سازی گسسته سرسع بوسیله یک کامپیوتر موازی نه تنها باعث افزایش قدرت محاسبه کامپیوتر موازی شده است بلکه باعث گسترش الگوریتمهای موازی نیز گشته است.

3- کامپیوترهای موازی (Parallel computers):

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

- کامپیوترهای SISD، که یک عنصر پردازشی وجود دارد و توان انجام فقط یک عمل را در یک زمان دارد.

- کامپیوترهای MIMD، دارای چندین عنصر پردازشی هستند که بطور موازی دستورالعمل‌های متفاوت را روی دیتاهای متفاوت انجام می‌دهند.

- کامپیوترهای SIMD، همه عناصر پردازشی‌شان یک دستور یکسان را در یک زمان بر روی داده‌های متفاوتی انجام می‌دهند. اگر چه امکان پنهان کردن عناصر پردازشی وجود دارد. عنصر پردازشی پنهان شده نتیجه عملی را که انجام داده ذخیره نمی‌کند.

سیستمهای SIMD بر اساس نحوه ارتباط و اتصال عناصر پردازشی به یکدیگر خود به بخشهایی تقسیم می‌شوند: اگر تمام عناصر پردازشی به یکدیگر متصل باشند و از طریق یک حافظه مشترک ارتباط داشته باشند، به آن tightly coupled system گویند.

و اگر عناصر پردازش حافظه مشترک نداشته باشند اما از طریق شبکه‌ای بهم متصل باشند و بروش message passing با هم ارتباط داشته باشند، به آن loosely coupled system گویند.

حافظه مشترک در tightly coupled system ها هم نقطه قوت و هم نقطه ضعف این سیستمها است. امکان به اشتراک گذاشتن راحت و سریع اطلاعات بین عناصر پردازشی مختلف را فراهم می‌کند. ارتباط به عملیات ساده read و wite روی حافظه مشترک خلاصه می‌شود و هر عنصر پردازشی مستقیماً با دیگر عناصر پردازشی ارتباط برقرار می‌کند. با این حال، اگر تعداد عناصر پردازشی متصل به حافظه مشترک افزایش یابد، حافظه مشترک تبدیل به گلوگاه (Bottleneck) می‌شود.

بنابراین تعداد عناصر پردازشی در یک سیستم tightly coupled محدود است. به جهت اینکه تمام عناصر پردازشی بایستی به ان حافظه مشترک متصل باشند، این سیستمها بصورت کامل از پیش ساخته هستند و امکان اضافه کردن عناصر پردازش به سیستم وجود ندارد.

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

در مقابل compactness بودن سیستمهای tightly coupled ، عناصر پردازشی در یک سیستم loosely coupled می‌توانند در تمام نقاط توزیع شوند. لذا فاصله فیزیکی که یک پیام باید طی کند، بیشتر می‌شود. به جهت این حقیقت که عناصر پردازشی برای ارتباط در یک شبکه از یک پروتکل استفاده می‌کنند، lossely coupled system می‌توانند شامل انواع مختلفی از عناصر پردازشی باشند. امکان اضافه کردن عناصر پردازشی اضافه‌تری به سیستم وجود دارد. در حالت کلی عناصر پردازشی خودشان یک کامپیوتر کاملی هستند.

مثالی از سیستمهای loosely coupled، Distributed Processing utilities Package است که بعداُ به تفضیل درباره آنها توضیح می‌دهیم.

4- الگوریتمهای موازی (Parallel Algorithm):

یک الگوریتم موازی شامل sub taskهایی است که باید انجام شود. بعضی از این sub taskها بصورت موازی اجرا می‌شوند، اما گاهی sub taskهایی هم وجود دارد که باید بصورت خطی اجرا شوند. اجرای هر sub task توسط یک پروسس مجزا انجام می‌شود. از ویژگیهای مهم یک الگوریتم موازی نحوه محاوره این پروسسها، سنکرون بودن و قطعی بودن الگوریتم است. دو پروسس با یکدیگر محاوره (interact) دارند، اگر خروجی یکی از آندو پروسس ورودی دیگری باشد. نحوه محاوره دو پروسس می‌تواند بطور کامل مشخص شده باشد یا نباشد. اگر مشخص شده باشد، این دو پروسس فقط زمانی می‌توانند ارتباط داشته باشند که هر دو مایل به انجام ارتباط باشند. اگر گیرنده هنوز آماده ارتباط نباشد، فرستنده نمی‌تواند اقدامی انجام دهد.

در حین اجرای یک الگوریتم سنکرون تمام پروسسها باید قبل از محاوره با یکدیگر همزمان شوند. سنکرون شدن در اینجا یعنی قبل از آغاز subtask جدید، آنها باید منتظر کامل شدن عمل دیگر پروسسها باشند. وقتی یک الگوریتم آسنکرون اجرا می‌شود، پروسسها لازم نیست که منتظر یکدیگر شوند تا taskهایشان را تمام کنند. البته این امکان وجود دارد که یک الگوریتم آسنکرون تا حدی سنکرون شود.

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


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

دانلود مقاله روانشناسی: چگونگی مدیریت رفتار کودک پرخاشگر (ترجمه مقاله معتبر زبان اصلی)

مقدمههرفرد،شرایط و هر کودک،خاص هستندبرای مثال برخی از والدین در کنترل و مواجهه با خشم خودشان دچار مشکل هستندآن ها به محضی که مشکلی را می بینند یا می شنوند به این ور و آن ور می پرند،و به کودک سیلی می زننداین تنها منجر به بدتر شدن وضعیت می شود زیرا اگر شما واکنش پرخاشگرانه نشان دهید،کودک شما می آموزد که پرخاشگری همان چیزی است که با آن می توان مشکلات
دسته بندی روانشناسی و علوم تربیتی
فرمت فایل zip
حجم فایل 18 کیلو بایت
تعداد صفحات فایل 5
مقاله روانشناسی: چگونگی مدیریت رفتار کودک پرخاشگر (ترجمه مقاله معتبر زبان اصلی)

فروشنده فایل

کد کاربری 4457

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

در این فایل فقط متن ترجمه شده وجود دارد.


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

دانلود تحقیق روانشناسی: شش راز نشانه های افسردگی پنهان (ترجمه زبان اصلی)

مقدمهبسیاری از مردم سعی دارند شیوه ای را در زندگی پیش بگیرند که بر اساس آن افسردگی خود را پنهان کنندبنابراین،بسیاری از افرادی که افسردگی پنهان دارند،می توانند افسردگی شان را به شکلی حرفه ای پنهان کنند،بر نشانه ها نقابی بزنند و آنها را بپوشانند،و آن ها را به صورت یک چهره شاد برای دیگران نمایش دهند
دسته بندی روانشناسی و علوم تربیتی
فرمت فایل zip
حجم فایل 13 کیلو بایت
تعداد صفحات فایل 3
تحقیق روانشناسی: شش راز نشانه های افسردگی پنهان (ترجمه زبان اصلی)

فروشنده فایل

کد کاربری 4457

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

در این فایل فقط متن ترجمه شده وجود دارد.


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

دانلود پاورپوینت مهندسی مواد: شیشه های خود تمییز شونده

شیشه های خود تمیز شونده از سال 2002 در بازار در دسترس بوده انددر ساخت این شیشه ها از پوشش های فوتوکاتالیتیکی استفاده می شود که بسیار پایدارندو نیاز به تجدید و بازسازی دوباره ندارند اساس این شیشه ها بر پایه خاصیت فوتوکاتالیتیکی یک لایه نازک از مواد با ساختار نانو مثلا تیتانیم اکسید بر روی سطح شیشه است و برای عمل خود تمیز شوندگی نور uv به عنوان پ
دسته بندی پاورپوینت
فرمت فایل zip
حجم فایل 2081 کیلو بایت
تعداد صفحات فایل 31
پاورپوینت مهندسی مواد: شیشه های خود تمییز شونده

فروشنده فایل

کد کاربری 4457

پاورپوینتی کامل به همراه نمودارها و عکس ها و توضیحات جامع و کامل و طرحی زیبا.وِیژه ارائه درکلاس و کارعملی و تحقیقی در گرایش مهندسی مواد و متالوژی.


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