دسته بندی | کامپیوتر و IT |
بازدید ها | 37 |
فرمت فایل | doc |
حجم فایل | 469 کیلو بایت |
تعداد صفحات فایل | 33 |
انتقال داده ها، شبکه های کامپیوتری و سیستم های توزیع شده
در دنیای امروز که میتوان آن را عصر اطلاعات نامید، انتقال دادهها (Data Commonication) و شبکههای کامپیوتری (Computer Networks) که حاصل پیوند دو صنعت کامپیوتر و مخابرات است، از اهمیت ویژهای برخوردار میباشد. هدف از پیدایش شبکههای کامپیوتری، اتصال کامپیوترهای مستقل از طریق یک فناوری واحد و قوانین مشخص به منظور انتقال دادهها و اشتراک منابع است. منظور از انتقال دادهها، ارسال و دریافت دادهها به صورت پیوسته آنالوگ یا گسسته دیجیتال بر روی رسانههای مختلف انتقال مانند زوج سیم به هم تابیده، فیبر نوری، هوا و غیره میباشد.
توجه کنید که اینترنت و وب، هیچکدام یک شبکه کامپیوتری نمیباشند. اینترنت (Internet)، شبکه شبکهها است و از به هم پیوستن هزاران شبکه نامتجانس و گوناگون که هر کدام از آنها فناوری و قوانین مخصوص به خودش را دارد به وجود آمده است. اما وب گسترده جهانی (WWW. World Winde Web) نمونهای از یک سیستم توزیع شده است. یک سیستم توزیع شده، مجموعهای از چندین کامپیوتر مستقل است که از دید کاربر به صورت یک سیستم نامرئی (Transparent)، متمرکز (Centeralized) و متجانس به نظر میرسد و کاربر به جای نگرانی در مورد به خاطر سپردن آدرسها (مثلا آدرس اینترنتی IP)، هر چیز را از طریق نام آن فراخوانی مینماید (مثلا در وب همه چیز به صورت سند یا صفحه وب است و از طریق نام URL قابل دستیابی است و این نامها به صورت خودکار توسط خدمتگزارهای نام حوزه به آدرس IP تبدیل میشوند.) همچنین دقت کنید که وب، میان افزار (Middleware) است و یک لایه نرمافزاری میباشد که در یک محیط ناهمگن بر روی سیستم عاملهای متنوع مستقل قرار دارد، اما ایده سیستمهای عامل توزیع شده، وظیفه ایجاد یک تصویر متمرکز از کامپیوترهای مستقل را بر عهده سیستم عامل واحد توزیع شده میسپارد.
کاربردهای شبکه
امروزه با گسترش اینترنت و جهانی شدن وب، کاربردهای شبکههای کامپیوتری از تنوع زیادی برخوردار است که برای نمونه، چند مورد از آنها عبارتند از: جستجو و تحقیق و دسترسی به اطلاعات به روز پراکنده در دنیا، تجارت الکترونیکی، خرید، فروش و حراج کالا، آموزش از راه دور و دانشگاه مجازی، دولت الکترونیکی، درمان از راه دور، کنفرانس صوتی و تصویری از راه دور، کنترل، مدیریت و نظارت بر سیستمهای صنعتی از راه دور، پست الکترونیکی، پیامرسانی فوری، گروههای خبری، گفتگو و گپ زدن، بازی و سرگرمی تعاملی، پخش فیلمهای درخواستی، کمک به ایجاد واقعیت مجازی و دهها کاربرد دیگر.
اجزای شبکه
شبکههای انتقال داده از سه بخش عمده تشکیل میشوند:
کامپیوترهای میزبان (Host) که هدف اصلی ایجاد شبکه، اتصال کامپیوترهای میزبان به یکدیگر است.
پردازندههای واسط مانند هابها (Hub)، تکرار کنندهها (Repeater)، پلها (Bridge)، سوئیچها (Switch) و مسیریابهای (Router) میانی که وظیفه مدیریت شبکه و هدایت ارسال دادهها از مبدأ و مقصد را بر عهده دارند. مدل ریاضی شبکههای کامپیوتری یک گراف است که در آن، گرهها (Nodes) همان پردازندههای واسط هستند.
لینکهای ارتباطی (Link) که در واقع رسانههای انتقال داده هستند و با اتصال گرههای شبکه به یکدیگر انتقال دادهها را بر عهده دارند.
پردازندههای واسط و لینکهای ارتباطی زیر شبکه انتقال داده (Communication Subnet) را تشکیل میدهند.
1-1 طبقهبندی شبکهها
شبکههای کامپیوتری از نظر اندازه و گستردگی جغرافیایی به 5 دسته تقسیم میشوند:
شبکههای شخصی (PAN: Personal Area Networks) که بر روی میز کار یا فاصله چند متری یک شخص هستند. مانند ارتباط بیسیم اجزای کامپیوتر با کامپیوتر شخصی (PC) و دستیار دیجیتالی (PDA) و یا حتی کامپیوتر پوشیدنی (Wearable Computer) شخص.
شبکههای محلی (LAN: Local Area Networks) که دارای گستردگی در حد یک ساختمان یا یک کمپ کوچک میباشند.
شبکههای شهری (MAN: Metropolitan Area Networks) که دارای گستردگی در حد یک شهر میباشند.
شبکههای گسترده (WAN: Wide Area Networks) که دارای گستردگی بیش از حد یک شهر ( در حد استان، کشور یا قاره) میباشند.
شبکههای جهانی که همان شبکه شبکهها یا اینترنت است.
انواع فناوری انتقال
به طور کلی دو نوع فناوری انتقال داده وجود دارد:
نقطه به نقطه (Point to point) یا همتا به همتا (Peer to peer) یا تک پخشی (Unicast) که دادههای ارتباطی از طریق لینکها و گرههای میانی به طور مستقیم بین دو ماشین مبدأ و مقصد مبادله میشود. (مانند شبکههای تلفنی)
انتشاری (Broadcast) که به آن داده پراکن یا پخشی نیز میگویند و در آن همه ماشینها به یک کانال مشترک متصل شده و دادهها بر روی کانال انتقال داده منتشر میشود و کلیه ماشینها به دادهها روی کانال دسترسی دارند (مانند انتشار رادیویی). این ماشینها با توجه به آدرس مقصد بستهها آنها را برداشته یا دور میاندازند.
البته در بعضی از شبکههای انتشاری امکان ارسال دادهها از مبدأ به گروهی از مقصدها وجود دارد که به آن پخش گروهی یا چند پخشی (Multicast) یا (Point to Mutltipoint) گویند.
همبندی (Topology)
منظور از همبندی یا توپولوژی نحوه اتصال گرههای تشکیل دهنده گراف شبکه از طریق لینکهای ارتباطی است. ساختار و توپولوژی شبکههای کامپیوتری بر اساس ماهیت کانالهای (Channel) انتقال داده و فناوری انتقال به دو دسته اصلی (نقطه به نقطه و انتشاری) تقسیم میشود.
انواع توپولوژی Point to point
چندین نوع توپولوژی در شبکههای نقطه به نقطه مورد استفاده قرار میگیرد، مانند:
انواع توپولوژی Broadceast
چندین نوع توپولوژی در شبکههای انتشاری مورد استفاده قرار میگیرد، مانند:
2-1 روند پیشرفت شبکههای کامپیوتری
در ابتدا طراحی شبکههای کامپیوتری به صورت موردی و خاص و با معماریهای گوناگون و ناسازگار با یکدیگر انجام میشد و هر شرکت معماری و روش غیر استاندارد خودش را داشت. بنابراین قابلیت اتصال به کامپیوترهای شرکتهای دیگر وجود نداشت و به همین دلیل به آنها شبکههای بسته (Closed Networks) گفته میشد. برای مثال شکل 1 دو کامپیوتر را نشان میدهد که به طور مستقیم به یکدیگر متصل شدهاند. اینگونه شبکهها از نوع شبکههای خصوصی با وسعت یک شرکت (Enterprise Networks) بودند.
دسته بندی | برنامه نویسی |
بازدید ها | 27 |
فرمت فایل | doc |
حجم فایل | 33 کیلو بایت |
تعداد صفحات فایل | 41 |
آموزش کار با PHP
مقدمه
PHP یک زبان اسکریپتی سمت سرور (Server Side) می باشد که امروزه بیش از نصفی از وبسایتهای مطرح جهان، از آن برای حفظ و نگهداری داده ها و ایجاد سایتهای دینامیک و به روز استفاده می کنند.
PHP هم همانند تمامی زبانهای برنامه نویسی Server Side، ترجمه شده و در نهایت به صورت کدهای HTML در اختیار کاربر قرار می گیرد. از این رو کد شما، از دید دیگران پنهان می ماند.
اما فرق PHP با دیگر زبانها چیست؟ یکی از مهمترین رقیبهای PHP، توسط مایکروسافت تحت عنوان ASP که در نسخه جدید به ASP.NET تغییر نام داده است، به وجود آمده و هنوز بحث سر آن است که کدامیک از آنها قویتر و مناسب تر است.
در این مقاله نمی خواهم بگویم که کدام یک بهتر است. هر کس عقاید مربوط به خود را دارد. در زیر به مقایسه این دو زبان می پردازم:
همان طور که مشاهده کردید، هر کدام از آنها دارای معایب و مزایایی هستند و انتخاب آنها، کاملا به عهده خود شماست.
نصب PHP
نصب PHP بر روی ویندوز و IIS کار بسیار آسانی است. اما از آنجا که در این مقاله، علاوه بر آشنایی با PHP، مروری بر پایگاه داده ی MySQL داریم، نیازمند MySQL نیز هستیم. اگر بخواهید تک تک آنها را از اینترنت دانلود کرده و آنها را جداگانه نصب و پیکربندی کنید، می بایست وقت بسیاری را صرف کنید. دانلود آنها (آن هم با یک مودم و اینترنتی که بیش تر از 4KB/S نمی رود) کار بسیار زمان بری است. همچنین برای پیکربندی آنها نیز، مستلزم انجام کارهای نه چندان خوشایند هستید!
بدین منظور، من به شما یک راه ساده تر را پیشنهاد می کنم. XAMPP!
XAMPP یک مجموعه نرم افزاری بسیار جالب است که علاوه بر حجم کم آن (تنها 13MB)، تمامی پکیجهای مورد نیاز شما را شامل می شود:
این در حالی است که فقط خود MySQL به تنهایی، حجمی بیشتر از 10MB دارد.
من از پکیج XAMPP mini win32 Version 1.2 در کامپیوتر خودم استفاده می کنم. آن را می توانید از آدرس زیر دانلود کنید.
http://www.apachefriends.org/download.php?minixampp-win32-1.2.exe
چگونگی نصب XAMPP
نکته: قبل از انجام این عملیات، وب سرور IIS خود (و یا دیگر وب سرورها) را غیر فعال (Disable, Stop) کنید.
پس از دریافت XAMPP آن را در جای مورد نظر خود نصب (Extract) کنید. فرق نمی کند که کجا باشد.
سپس به پوشه ای که XAMPP را در آنجا Extract نموده اید، بروید. فایل setup_xampp.bat را باز کرده تا صفحه سیاهی نمایان شود. عدد 1 را وارد کرده و کلید Enter را فشار دهید تا مراحل نصب آغاز شود.
پس از آنکه نصب به پایان رسید، می بایست سرور شوید. برای اینکار دو فایل apache_start.bat و mysql_start.bat را اجرا کرده و دیگر کاری به آنها نداشته باشید. آنها را Minimize کرده و مابقی کارها را انجام دهید.
حال مرورگر دلخواه خود را باز کرده و عبارت http://localhost (یا http://127.0.0.1) را تایپ نمایید. با انجام اینکار می بایست صفحه بنفش رنگی نمایان شود.
چگونگی اجرا کردن اسکریپتهای PHP به وسیله XAMPP
اسنادی را که خواهان اجرای آن به وسیله XAMPP هستید، می بایست درون پوشه htdocs کپی نمایید. ولی در نوشتن آدرس آن در مرورگر، نیازی به نوشتن این پوشه نیست. به عنوان مثال فایل %XAMPP%\htdocs\weblog\index.php را در مرورگر می بایست به صورت http://localhost/weblog/index.php اجرا نمود...
شروع کار با PHP
در برنامه نویسی هیچ چیز لذت بخش تر از کد نویسی نیست. همین حالا برنامه Notepad خود را باز کرده و کدهای زیر را در آن بنویسید:
این فایل را در محل %XAMPP%\htdocs\PHP\phpinfo.php ذخیره کرده و به وسیله مرورگر خود، آدرس http://localhost/PHP/phpinfo.php را اجرا نمایید. با انجام این کار، صفحه ای که مشخصات PHP نصب شده بر روی سیستم را به شما نشان می دهد، نمایان خواهد شد.
آشنایی با PHP
همان طور که در مثال بالا مشاهده کردید، کد زیر با بقیه کدهای HTML فرق داشت:
?>
این تکه کدی است که به وسیله PHP نوشته شده است. برای نوشتن کدهای PHP، می بایست آنها را در بین تگهای ?> و و قرار داد. همچنین یک راه میانبر نیز است که به صورت =SOMETHING?> به کار می رود. در این مقاله از همان روش ?> و عبارات (Statements)
به طور کلی در PHP، عبارات به دو دسته زیر تقسیم می شوند:
در انتهای هر عبارت PHP، یک علامت سمی کالن (;) قرار می گیرد. به وسیله این علامت، PHP متوجه می شود که یک عبارت به اتمام رسیده و عبارت دیگری در حال شروع است. به مثالهای زیر توجه کنید:
echo("Hello World!");
echo("Mojtaba");
?>
echo("Hellow World"); echo("Mojtaba");
?>
هر دو کد بالا صحیح است. چرا که بعد از اتمام هر یک از عبارت PHP، یک علامت سمی کالن قرار داده شده است. برنامه نویسان معمولا از کد بالایی استفاده می کنند. چرا که در آن، هر یک از کدهای PHP در یک خط مجزا قرار گرفته و در نتیجه نگهداری کد آسان تر خواهد شد. حال به کد زیر توجه کنید:
echo("Hello World!")
echo("Mojtaba")
?>
اجرای این کد سبب خطا می شود. چرا که عبارت در آن از هم جدا نشده است و عبارتی همانند عبارت echo("Hello World") echo("Mojtaba") برای PHP ناآشناست.
تا به اینجای کار، عبارت تک خطی مورد بررسی قرار گرفتند و اما عبارات چند خطی. عبارات چندخطی که به کد بلاک (Code Block) معروف است، در PHP توسط آکولادها { } احاطه می شوند. این عبارات با همدیگر اجرا می شوند. به عنوان مثال در یک عبارت شرطی (عبارات شرطی در جلوتر مورد بررسی قرار می گیرند)، برای PHP تعیین می کنیم که اگر شرط درست بود، این سری عبارات و در غیر این صورت، سری دیگری عبارات را اجرا نماید:
دسته بندی | کامپیوتر و IT |
بازدید ها | 14 |
فرمت فایل | doc |
حجم فایل | 200 کیلو بایت |
تعداد صفحات فایل | 23 |
پورت موازی
در زمان اتصال یک چاپگر به کامپیوتر از پورت موازی استفاده می گردد. با اینکه اخیرا" استفاده از پورت های USB رایج شده است ولی همچنان استفاده از پورت موازی برای اتصال چاپگر به کامپیوتر بسیار متداول است .
از پورت های موازی می توان برای اتصال تجهیزات جانبی زیر استفاده کرد
مبانی پورت های موازی
پورت موازی ، توسط شرکت IBM و بمنظور اتصال یک چاپگر به کامپیوتر طراحی گردید. زمانیکه شرکت IBM در اندیشه طراحی و ارائه کامپیوترهای شخصی بود، ضرورت استفاده از چاپگرهای شرکت" سنترونیکس" نیز احساس گردید.شرکت IBM تصمیم نداشت که از همان پورتی که توسط چاپگرهای سنترونیک استفاده می گردید، در طراحی خود استفاده نماید.
مهندسین شرکت IBM از یک کانکتور 25 پین (DB-25) بهمراه یک کانکتور 36 پین برای ایجاد یک کابل خاص بمنظور اتصال چاپگر به کامپیوتر استفاده کردند. سایر تولید کنندگان چاپگر نیز در ادامه از استاندارد سنترونیک تبعیت و به مرور زمان استاندارد فوق در سطح جهان مطرح و مورد استفاده قرار گرفت .
زمانیکه کامپیوترهای شخصی اطلاعاتی را برای چاپگر و یا هر وسیله دیگری که به پورت موازی متصل است، ارسال می نمایند ، در هر لحظه هشت بیت ارسال خواهد شد.. هشت بیت فوق بصورت موازی برای دستگاه ارسال خواهند شد. پورت موازی استاندارد، قادر به ارسال 50 تا 100 کیلوبایت در هر ثانیه است .نحوه عملکرد چاپگر به شرح زیر است :
- پین یک، حامل سیگنال Strobe بوده و دارای ولتاژی بین 2/8 و پنج است . زمانیکه کامپیوتر اطلاعاتی ( یک بایت داده ) ارسال می دارد ولتاژ به نیم ولت افت پیدا خواهد کرد.افت ولتاژ فوق به چاپگر اعلام می نماید که داده هائی ارسال شده است .
- پین دوتا نه حامل داده است .بمنظور مشخص نمودن اینکه یک بیت دارای مقدار یک است ولتاژ پنج ارسال از طریق پین مربوطه ارسال ( شارژ) خواهد شد.بر روی پینی که شامل مقدار ( داده ) صفر است شارژی ( ولتاژ) قرار نخواهد گرفت .
- پین ده ، اطلاعات لازم در خصوص نحوه عملکرد چاپگر را برای کامپیوتر، ارسال می نماید . نحوه پیاده سازی پین فوق نظیر پین "یک" است .زمانیکه ولتاژ موجود بر روی پین فوق به نیم ولت تنزل پیدا نماید، کامپیوتر اطلاعات لازم در خحصوص فرآیند چاپ را از چاپگر اخذ خواهد کرد .( کامپیوتر به این اطمینان خواهد رسید که چاپگر اطلاعات را دریافت نموده است )
- در صورتیکه چاپگر مشغول باشد، پین شماره یازده شارژ می گردد. زمانیکه ولتاژ نیم ولت بر روی پین فوق قرار بگیرد به کامپیوتر اغلام خواهد شد که چاپگر آماده دریافت اطلاعات است .
- در صورتیکه چاپگر دارای کاغذ نباشد ، از طریق پین شماره دوازده به کامپیوتر آگاهی لازم داده خواهد شد.
- زمانیکه بر روی پین شماره سیزده شارژی وجود داشته باشد، آماده بودن چاپگر به کامپیوتر اعلام می گردد.
- کامپیوتر از طریق پین شماره چهارده و با استفاده از یک ولتاژ پنچ ولت سیگنال Auto Feed را برای چاپگر ارسال می دارد.
- در صورتیکه چاپگر دارای مشکلی باشد ولتاژ پین شماره پانزده به نیم ولت کاهش و کامپیوتر از بروز اشکال در چاپگر آگاهی پیدا می نماید.
- زمانیکه یک کار آماده چاپ باشد، کامپیوتر از پین شماره شانزده برای مقداردهی اولیه چاپگر ( کاهش ولتاژ) استفاده می نماید.
- کامپیوتر از پین شماره هیفده برای Offline نمودن از راه دور چاپگر استفاده می نماید، بدین منظور برای چاپگر یک شارژ ارسال خواهد شد.
- پین های شماره هیجده تا بیست و پنج Ground بوده و از آنها بعنوان یک سیگنال مرجع برای شارژ های پایین تر از نیم ولت استفاده می گردد.