مقدمه :
جاوا شباهتهایی به سیپلاسپلاس دارد، ولی قابلیت انتقال آن بهتر است و استفاده از آن ساده تر از ++C است. همچنین مدیریت حافظه نیز توسط خود ماشین مجازی جاوا انجام میشود. طراحی این زبان به گونه ایست که دارای اطمینان بسیاری بوده و وابسته به سیستم عامل خاصی نیست. و دلیل این موضوع این است که جاوا یک ماشین مجازی در سیستم شما راه میاندازد و برنامهها را در آن ماشین مجازی اجرا میکند. این ماشین مجازی «ماشین مجازی جاوا» یا به اختصار JVM نامیده میشود. البته راه انداختن یک ماشین مجازی باعث دو مشکل میشود. هنگامی که نرمافزار شما در یک ماشین مجازی اجرا میشود سرعت کمتری خواهد داشت، همچنین شما نیاز دارید قبل از اجرای برنامههای جاوا یکبار سیستم مجازی جاوا را که حجم نسبتاً بالایی دارد، از اینترنت بارگذاری و یا از جای دیگری تهیه و نصب کنید ولی مزیت آن عدم وابستگی به سیستم عامل مقصد است.
تاریخچه زبان جاوا
زبان جاوا در سال ۱۹۹۱ ایجاد شد و در ابتدا Oak نام گرفت. پیدایش آن از پروژه ای به نام Green منشا گرفت که زیر نظرJames Gosling و با هدف اتوماسیون وسایل خانگی دنبال می شد. و Oak را در برنامه ریزی این دستگاه ها به عنوان زبانی قدرتمند به کار گرفتند. ولی تا سال ۱۹۹۴ این پروژه در ناامیدی دنبال می شد، تا اینکه این تیم توسعه پس از تغییر رویه اینترنت را در اهداف کار خود گنجاند.
Oak به Java تغییر نام داده شد تا بتواند به عنوان نشان تجاری ثبت شود. Netscape Navigator ۲.۰ در سپتامبر سال ۱۹۹۵ از این زبان، که به صورت Applet بکار می رفت، پشتیبانی کرد و Microsoft در اواخر سال ۱۹۹۵ آن را بکار گرفت.
از آن زمان به بعد توانایی های این زبان رو به فزونی گذاشت. در سال ۱۹۹۶ شرکت Sun Microsystems نگارش ۱.۰ از Java Development Kit را توسعه داد. و سال بعد نگارش ۱.۱ از JavaBeans پشتیبانی کرد. در سال ۱۹۹۷ شرکت Sun بر علیه Microsoft شکایت کرد و این شرکت را متهم به نقض توافقنامه مربوط به استفاده از Java در Internet Explorer کرد. بعد از این سان JDK ۱.۲ و Swing را، که ابزار پیشرفته تری نسبت به (AWT (Abstract Windowing Toolkit برای ایجاد رابط گرافیکی کاربر(GUI) فراهم می کرد، ارایه کرد. در حال حاضر JDK در نگارش ۵.۰ وبا ویژگی های جدیدی در دسترس است. و با نام J۲SE) Java ۲ Standard Edition) نیز شناخته می شود. در کنار آن J۲EE Java ۲ Enterprise Edition (که درحال حاضر در نگارش ۱.۴ است) برای کاربردهای تجاری ارایه شد. J۲EE تکنولوژی هایی از قبیل Enterprise JavaBeans EJB), Servlets, JavaServer Pages) و … را در بر می گیرد.
Java زبانی برای برنامه های توزیع شده است و زبانی شناخته شده در سطح جهانی است که به کاربر امکان تعامل (interaction) با یک صفحه وب را می دهد و برخلاف صفحات ایستای HTML فراتر از خواندن ویا فقط پر کردن یک فرم، برای کاربر امکان بازی، چت، انجام محاسبات درصفحات گسترده، و حتی دریافت اخباری که به صورت همزمان به روز رسانی می شوند و خیلی چیزهای دیگر را فراهم می کند. Java همچنین مستقل از سیستم عامل است. به این معنی که شما یک برنامه را یکبار می نویسید و این برنامه بر روی هر سیستم عاملی که ماشین مجازی جاوا (Java Virtual Machine) یا به اختصار JVM بر روی آن نصب باشد به همان شکل و بدون نیاز به هیچگونه تغییری قابل اجرا خواهد بود. Java زبانی ساده، کاملا شی گرا، با امنیت بالا و دارای امکانات چندبندی (Multi-threading) است. از نگارش ۱.۲ به بعد ابزارهای Swing، جاوا را به زبانی آسان و جذاب برای ایجاد یک GUI کاربر پسند تبدیل کرده اند.
از نقطه نظر دیگر می توان گفت: که جاوا یک زبان مستقل از سیستم عامل نیست بلکه همانند یک سیستم عامل مستقل و کوچک عمل می کند. همان طور که درWindows زبان های برنامه نویسی امکان اجرا در بستر (Platform) مربوط به Windows/Intel را دارند، برنامه های جاوا امکان اجرا در Java/JVM را دارند. و همانند Windows، جاوا هم یک بستر نرم افزاری، تجاری و منحصر به یک شرکت است.
کپی
جاوا در مقایسه با سایر زبانها همچون سیپلاسپلاس یا Basic یا Fortran زبان نسبتاً جدیدی است. شرکت سان میکروسیستمز (یا به اختصار سان) در سال 1991 یک پروژه تحقیقاتی به نام Green را آغاز کرد. هدف این پروژه ایجاد یک زبان جدید شبیه به C++ بود که نویسنده اصلی آن، جیمز گاسلینگ، آن را بلوط Oak می نامید. اما بعدها به دلایل مشکلات حقوقی نام آن به جاوا تغییر کرد. پروژه گرین به دلیل مشکلات بازاریابی در شرف لغو شدن بود تا اینکه گسترش وب در سال 1993 باعث نمایش تواناییهای وافر جاوا در این عرصه گشت. و به اینگونه بود که سان در می 1995 جاوا را رسما افتتاح کرد.
برنامههای جاوا و اپلتها
جاوا برای نوشتن انواع برنامههای کاربردی مناسب است. با جاوا میتوان انواع برنامههای زیر را نوشت:
• برنامههای تحت وب؛
• برنامهنویسی سیستمهای کوچک مانند موبایل، پاکت پیسی و ...؛
• برنامههای کاربردی بزرگ (Enterprise)؛
• برنامههای رومیزی (Desktop)؛
• و غیره.
قابلیت خاصی در جاوا وجود دارد بنام اپلت. اپلتها امکانات فراوانی برای نوشتن برنامههای تحت وب در اختیار برنامه نویسان قرار میدهند که دیگر زبانهای برنامه نویسی فاقد آن هستند.[نیاز به ذکر منبع] البته وجود ماشین مجازی جاوا برای اجرای اپلت لازم است.
از برتریهای جاوا نسبت به زبانهای مایکروسافتی مثل سیشارپ که بسیار شبیه این زبان هست میتوان موارد زیر را نام برد:[نیاز به ذکر منبع]
1 - سیستم عامل: هر چقدر زبانهای .net قوی باشند تنها بر روی پلت فرم ویندوز اجرا میشوند و برخی ویندوز را سیستم عامل غیر قابل اعتمادی در برنامه نویسی Enterprise می دانند.[نیاز به ذکر منبع] ولی جاوا از این نظر انتخابی خوب است. (هنوز پروژه mono به نتایج پایانی خود نرسیده)
2- قابلیت حمل: جاوا بر روی پلتفرمهای گوناگونی قابل اجرا است، از ATM و ماشین رختشویی گرفته تا سرورهای سولاریس با قابلیت پشتیبانی از 1024 cpu برای پردازش.
3- جاوا بیشتر از یک زبان است: جاوا فقط یک زبان نیست و انجمنهایی متشکل از بزرگان صنایع و برنامهنویسان زیادی مشغول به توسعه و ایجاد استانداردهای جدید و به روز هستند.
تکنولوژیهای اصلی جاوا در حال حاضر
• برنامهنویسی برای سیستمهای رومیزی (J2SE)
• برنامهنویسی سمت سرور (J2EE) که به تازگی به JAVA EE 5 تغییر نام داده است.
• برنامهنویسی برای سیستمهای موبایل و رایانههای کوچک (J2ME)
توزیعهای جاوا
در حال حاضر چهار توزیع کننده عمده جاوا وجود دارند:
سان میکروسیستمز: توزیع کننده اصلی جاوا و مبدع آن می باشد. در اکثر موارد هنگامی که گفته میشود جاوا منظور توزیع سان می باشد. تاکنون 7 توزیع از این شرکت ارائه شده اند. جاوا 1.0 - 1.1 - که به جاوا 1 مشهورند. جاوا 1.2 – 1.3. 1.4 و 1.5 که به جاوا 2 مشهورند اخیرا نیز توزیع 1.6 از جاوا با کدرمز ماستانگ به صورت آزمایشی منتشر شده است. قابل ذکر است توزیعهای جاوا بر روی اکثر سیستم عاملها مانند ویندوز، یونیکس و سولاریس، لینوکس و موارد مشابه عرضه شده است.
GNU Java یا gcj کمپایلر کدباز جاوا می باشد. این توزیع از سوی موسسه نرم افزارهای آزاد منتشر شده و فعلا تنها در سیستم عاملهای لینوکس قابل استفاده است. این کمپایلر توانایی ایجاد کد اجرایی (در مقابل بایت کد توزیع سان) را داراست.
مایکروسافت J# این در حقیقت یک توزیع جاوا نیست. بلکه زبانی مشابه می باشد که توسط مایکروسافت و در چارچوب .net ارائه شده است. انتظار اینکه در سیستم عاملی غیر از ویندوز هم اجرا شود را نداشته باشید.
AspectJ این نیز یک زبان مجزا نیست. بلکه یک برنامه الحاقی می باشد که امکان برنامه نویسی Aspect Oriented را به جاوا می افزاید. این برنامه توسط بنیاد برنامه نویسی جلوه گرا و به صورت کد باز ارائه شده است.
نقاط ضعف
مهمترین ایرادی که برنامه نویسان سایر زبانها به زبان جاوا می گیرند سرعت اجرایی بسیار پایین جاوا است. یک برنامه جاوا به صورت بایتکد می باشد و باید در ماشین مجازی جاوا اجرا گردد. به همین دلیل سرعت اجرای پایینی را در مقابل زبانهای قدرتمندی همچون ++C دارد. به صورت دیگر یک برنامه C به طور متوسط تا 10 برابر سریعتر از برنامه مشابه جاوا اجرا میگردد. جاوا علی رقم شیء گرا بودن در بخشی از قسمتها برای ایجاد انعطاف بیشتر یا بازاریابی بهتر برخی اصول شی گرایی را نادیده گرفته است. از جمله این قسمتها قابلیت بازتابش Reflection می باشد. هدف اصلی بازتابش این است که استفاده مجدد از کدها و گسترش کدهای موجود و مهمتر از همه نوشتن برنامههای الحاقی آسان گردد ولی این مهم با زیر پا گذاشتن بعضی اصول ممکن شده است. برای نمونه با کمک بازتابش به راحتی میتوان متدهای خصوصی دیگر کلاسها را فراخوانی کرد! زبان جاوا در مقابل زبانی مثل ++C ساده تر و یادگیری ان آسانتر است. این آسانتر بودن به سادگی به دست نیامده است بلکه با حذف بسیاری از موارد که باعث قدرتمند تر بودن زبان ++C بودهاند ایجاد شده است. مهمترین این موارد اشاره گرها و وراثت چندگانه بودهاند که در زبان جاوا یافت نمی شوند. از آنجایی که جاوا زبانی با عدم وابستگی به بستر می باشد پس استفاده از توابع سیستم عامل را در برنامه نمی پذیرد. به همین صورت نمیتوان از واسطهای برنامه نویسی غیر از جاوا در آن استفاده نمود.
یک اشتباه متداول
برخی مردم به علت شباهت اسمی، جاوا و جاوااسکریپت را با هم اشتباه میگیرند. در حالیکه این دو زبان گرچه در ظاهر و کلمات شبیهند ولی بطور ساختاری با یکدیگر متفاوتند. جاوا اسکریپت محصول شرکت نت اسکیپ است.
ماشین مجازی جاوا :
برای اجرای برنامه های نوشته شده و کامپایل شده به زبان جاوا نیاز به سکویی یا برنامه ای است که به آن ماشین مجازی جاوا (Java Virtual Machine) یا به اختصار JVM گفته میشود. این ماشین کدهای کامپایل شده به زبان جاوا را گرفته و آنها را اجرا میکند. شاید این جمله را شنیده باشید که کدهای زبان جاوا بر روی هر ماشین قابل اجرا میباشند و اصطلاحا جاوا Multi Platform است. برای مشخص شدن موضوع مثال زیر را بررسی کنید:
مثال:
شخصی که دستگاهی با سیستم عامل ویندوز دارد، از سایت سان JVM مربوط به سیستم عامل ویندوز را نصب میکند. سپس برنامه ای را به زبان جاوا مینویسد و آن را کمپایل مینماید. پس از آن برنامه کمپایل شده را برای دوست خود که دستگاه دیگری با سیستم عامل لینوکس دارد ارسال میکند. این شخص قبلا JVM مخصوص سیستم عامل لینوکس را از سایت سان برداشته و بر روی دستگاه خود نصب نموده است. به همین دلیل هیچکدام از این دو نفر لازم نیست نگران باشد که سیستم عامل دستگاهایشان با یکدیگر متفاوت است.
همانطور که از مثال مشخص است کدهای جاوا یکبار کامپایل میشوند و همه جا اجرا میشوند و این شعار جاوا است:
یک بار کامپایل کنید و همه جا اجرا کنید.
و یا Complie Once Run Any Where
پس در حقیق راز این قابلیت جاوا وجود ماشینهای مجازی مختلف برای سیستم عاملهای مختلف است.
منابع
• Sun MicroSystems Documentation on JDK 1.5
• Dietell & Dietell , Java How to Program, 6th Ed. Prentice Hall, 2005
• Bruce Eckel, Thinking in Java, 3rd Edition, www.BruceEckel.com
سیستم عامل ویندوز قادر به اجرا کردن applet یا تکه های برنامه نویسی شده به وسیله زبان برنامه نویسی جاوارا به دلیل فقدان ابزار های لازم ندارد.از این رو تا قبل از سای 2001 نرم افزار مجازی ساز آنرا با نام microsoft java virtual machie ایجاد کرد.
اما با رشد و کاربرد این نرم افزار دیگر جوابگو نبود و به ابزار های بیشتر از یک مجازی ساز نیاز مند گردید.
از این رو شرکت مبتکر و مشهور این زبان برنامه نویسی sun که دارای سیستم عاملی نبتنی بر جاوا میباشد با نام sun solaris و سرور های خاص خود،این نرم افزار را که ابزار های لازم برای اجرای کامل زبان برنامه نویسی جاوا میباشد را در دسترس عموم قرار داده است.
نسخه فعلی آخرین بروز رسانی را نیز در بر دارد.
برای بر قراری ارتباط بر خط بدون داشتن پیغام بر یاهو و نیز بازی بر خط سرویس یاهو ویا برای اتصال به digi chat نیاز به مفسر و ابزار های جاوا میباشد.
مفاهیمپایه فنآوریاطلاعات فهمیدن مفاهیم پایه سختافزار. نرمافزار و فنآوری اطلاعات
کامپیوتر در زبانفارسی بهرایانهترجمه شده است و درنگاه اول بهدوقسمت سختافزار و نرمافزار تقسیم میشود
1-سختافزار :منظور وسایل جانبی، قطعات فیزیکی ، مدارها ،دیودها،
2-نرمافزار : منظوربرنامههایی است که سختافزاررابهکارمیاندازد.
دریک نگاه مقدماتی بهسختافزار میتوان آنرا شامل 5 قسمت دانست:
1-Main Memory “ حافظه اصلی “
2- secondary Memory “ حافظهجانبی “
سختافزار 3-Input Devices “ دستگاههای ورودی “
4-Centeral Processing Unit “ واحد پردازشگرمرکزی “
5-Output Devices “ دستگاههای خروجی”
رابطه بین آنهارا میتوان با نمودارزیرنشانداد:
data : یا دادهها چنین مسیری را طی میکنند:
دادهها از طریق دستگاههای ورودی بهمنظور پردازش وارد میشوند و در حافظه اصلی قرار میگیرند اگر قرار است دادهها بهمدت طولانی در سیستم بماند تا نوبت پردازش آن برسد در حافظه جانبی ذخیره میشود.سپس وقتی نوبت پردازش آن رسید وارد حافظه اصلی شده و از طریق پردازشگر، مورد پردازش قرار میگیرد. نتیجه وارد حافظه اصلی شده و در صورتیکه لازم باشد مدتی در سیستم بماند تا نوبت نمایش آن در خروجی برسد در حافظه جانبی ذخیره میشود..وقتی نوبت نمایش آن رسید به حافظه اصلی منتقل شده و در خروجی نمایش داده میشود.
مقایسه کار کامپیوتر با بدن انسان:
انسان با حواس پنجگانه اطلاعات را دریافت مینماید.(دستگاه ورودی)
آنرا در حافظه خود ذخیره مینماید.(حافظه اصلی)
اگر بخواهد آنرا در مدت طولانی نگاه دارد در دفترچه یادداشت مینویسد(حافظه جانبی)
موقع استفاده از دفترچه یادداشت، مجدداً در حافظه میآورد.
مغز آنرا تجزیه و تحلیل میکند و تصمیم مناسب میگیرد.(واحد پردازش مرکزی)
تصمیم مغز به اعضا ء بدن انسان ابلاغ میشود و انسان عکسالعمل نشان میدهد..
(دستگاه خروجی)
دو اصطلاح داده و اطلاعات را در علم کامپیوتر زیاد میشنویم:
data یا داده:به کاراکترها ، علایم ، اشکالی میگویند که هیچ معنی خاصی به مخاطب خود ارائه نمیدهد مثل عدد 021
information یا اطلاعات : به دادهای گفته میشود که دارای توصیف ، معنای تعریف شدهای باشد مثلاً کد بین شهری تهران = 021
فنآوری اطلاعات technology” “ information
تمام جنبههای مدیریت و پردازش اطلاعات مخصوصاً در داخل یک سازمان یا کمپانی موضوع وسیع it را تشکیل میدهد.. مرکزیت مدیریت اطلاعات با کامپیوترهاست. بههمین دلیل در مفاهیم پایه فنآوری اطلاعات کامپیوتر را نیز مطالعه میکنیم.
انفورماتیک: واژهای فرانسوی است که از ترکیب دو کلمه انفورماسیون و اتوماتیک بهوجود آمده اسنت. در مورد کاربرد این واژه اتفاق نظر کامل نیست. ولی در کشورهای غربی بیشتر بهمعنی “ علوم آگاهی “ یا “ علوم کاربردی کامپیوتر” بهکار میرود. و معادل آمریکایی آن it است.
فناوری اطلاعات، با طیفی از تعابیر گسترده مواجه است که گاهی حوزه بهکارگیری آن بسار جزئی است و گاهی بهصورت ها لهای کلیه فعالیتهای بشری را در بر میگیرد.
تعاریف رایج از انفورماتیک در ایران:
انفورماتیک از تقاطع سه تکنولژی ، کامپیوتر ، اطلاعات ، ارتباطات بهرهگیری میکند.
هدف از بهکار بردن فن انفورماتیک آماده ساختن و پرورش حجمی از اطلاعات است، بهطوریکه این اطلاعات در جای درست و در زمان درست و در اختیار افراد مناسب قرار گیرد.
-4 تکنولژی اصلی و اولیه جهان صنعتی برای تولید کالا و ارائه خدمات عبارت است از:
مواد اولیه، کارگر ، انرژی ، انفورماتیک. تکنولژی چهارم در واقع از سه تکنولژی اول خلق شده و برای کمک بهآنها استفاده میشود.
-انجمن انفورماتیک ایران واژه انفورماتیک را” خودکاری آگاهانه “ تعریف کرده است
-خودکاری : جمعآوری ، دستهبندی ، ذخیرهسازی، دستیابی و استخراج اطلاعات بهطوریکه حداقل نیروی انسانی ممکن بهکار گرفتهشود.
1-micro computer
2 - computer mini
3-main frame
دستهبندی کامپیوترها 4-super computer
5-network
6-laptops
1-micro computer یا pc personal computer “ “ یا کامپیوتر شخصی : تمام تجهیزات در اختیار یک نفر است و روی یک میز جا میگیرد.
2-mini computer : از pc بزرگتر است سریعترکار میکند مقدار بیشتری داده را ذخیره میکند.معمولاً بیش از یک کاربر بهصورت همزمان از آن استفاده میکنند.
3main frame -: ظرف یک ثانیه مساله ای راحل میکند که ساعتها وقت یک mini computer را میگیرد یا حتی روزها وقتmicro computer را میگیردگاهی چند صد کاربرهمزمان دارد.
4-super computer : توان محاسباتی بسیار بالایی دارند. معمولاًبرای علوم پیچیده مثل نجوم “ محاسبات نجومی”وعلوم فضایی و تحقیق در مسائل ژنتیک یا محاسبات هستهای بهکارمیروند.تعداد کاربران آنها پارامترمهمی در تقسیمبندی نیست ولی اخیراً سوپرکامپیوترهایی ساختهشده است که در هر ثانیه 200 میلیارد دستورالعمل را انجام میدهد.
5- Network : گروهی از کامپیوترها شامل 2 یا بیشتر سیستمهای کامپیوتری کهبه یکدیگر متصل شدهاند.
انواع اتصالات: توپولژی شبکه:
Fs : “File server “ : معمولاً دادهها و نرمافزارها روی آن قرار میگیرد و بقیه کامپیوترها با دسترسی بهآن از دادهها و نرمافزارها استفاده میکنند.
در روشBus : یک کابل بهعنوان Bus ، کل مسیر شبکه را طی میکند. هر کامپیوتر بهطور مستقیم یا توسط یک کابل جانبی بهباس متصل است.
در روش ستارهای : Fs در مرکز و کامپیوترها در اطراف آن هستند.
در روش حلقوی : کامپیوترها با یک کابل بهیکدیگر متصل میشوند. هر یک میتواند File server اصلی باشد. اگر یک کامپیوتر خراب شد کل شبکه از کار میافتد.
6-کامپیوتر کیفی : “ laptops”
یک کامپیوتر کوچک قابل حملو نقل و بهاندازهای کوچک است که در کیف جا میگیرد و گاهی بهآن Network computer میگویند.
یک کامپیوتر شخصی بسیار کوچک که وزن آن از 6 پوند کمتر است. جدا از وزن آن یک کامپیوتر شخصی است که صفحه نمایش آن از فنآوری دیگری استفاده میکند.این فنآوری Flat –panel-technologies گفته میشود که صفحه نمایش غیرحجم و سبک وزن تولید میکند جنس آن از کریستال مایع یا “liquid crystal Display” است . کیفیت آنها بسیار با یکدیگر متفاوت است. بیشتر آنها به تفکیک VGA محدود میشوند تصاویر بسیار Sharp تولید میکند ولی بهسرعت تصویر عوض نمیشود از نظر توانایی همان فدرت Pc معمولی را دارند Cpu ، حافظه ، دیسک مانند Pc معمولی است ولی قرار دادن آنها در یک بستهکوچک بسیار گران تمام میشود قیمت آنها دو برابر Pc معمولی است آنها با باطری کار میکنند احتیاج به اتصال بهبرق ندارند ولی پس از چند ساعت باید شارژ شوند.
ترمینال : شامل Keyboard، Monitor است و ارتباط شما را با کامپیوتر برقرار میکند
تقسیمبندیترمینالها
1- Intelligent Terminal : دستگاهی که شامل حافظه اصلی و یک Cpu است .
2- Smart terminal : توان پردازش دارد ولی نه بهاندازه ترمینال باهوش
3- terminal Dumb : ترمینال معمو لی
در شبکه ترمینال یک Pc یا Workstation است که به Main frame وصل شده است Pc معمولاً یک برنامه Emulator ترمینال را اجرا میکند و frame Main فکر میکند که آن مانند هر ترمینال دیگر است.
انواع ترمینالهای باهوش “Intelligent”
Vt100 “Video terminal 100”
Vt200
Tn3270 Vt100 اولین ترمینالی است که یک پردازشگر همهمنظوره را برای کنترل کدهای جدید Ansi بهکاربرد این کنترل کدها بهوسیله Dec در سال 1978 معرفی شد کهبهسرعت مشهور شد و کنترل کدهای آن عملاً استاندارد شد مخصوصاً Ibm آنرا پذیرفت.
Intelligent terminal : “ترمینالی شامل مانیتور و صفحه کلید “ که شامل قدرت پردازش است . ترمینال باهوش شامل حافظه و یک پردازنده برای انجام نمایش خاص است. برعکس ترمینال گنگ توان پردازش ندارد و بایستی کاملاً متکی بهکامپیوتر مرکزی باشد.
Smart terminal : کمی توان پردازش دارد ولی نهبهاندازه ترمینال باهوش ، آنها مدارهای منطقی برای انجام عملیات نمایش مثل چشمکزدن و پررنگ نشاندادن دارند.
Dumb terminal : اصلاً توان پردازشندارند.
پایانه گنگ : وسایلی (شامل یک صفحه نمایش و یک صفحهکلید) بودند کهبهسادگی ورودی را از کاربر پذیرفتند و نتایج را نمایش میدهند دراین حالت تمام عملیات پردازش و نگهداری دادهها توسط کامپیوتر Server انجاممیشود.
پایانه هوشمند : کاربران شبکه از پایانه هوشمند استفاده میکنند پایانههای هوشمند کامپیوترهایی از نوع Pc هستند کهخود نیزدارای قابلیت پردازش و نگهداری اطلاعات بهصورت “ محلی “ هستند.
اجزاء اصلی یک 1-اجزاء داخل Case
کامپیوتر شخصی 2- اجزاء خارج Case
اجزاء داخل Case : پردازشگر، حافظه , Rom) (Ram Mother board , کارت گرافیکی , کارت شبکه , کارت صوتی : Hard disk
اجزاء خارج Case Keyboard , Mouse : , Monitor
1-عمودی روی سطح میز قرار میگیرد: Tower unit
Case 2-افقی روی سطح میز قرار میگیرد : unit Desktop
در بعضی کتابها : واحد کنترل Cpu=AlU+
AlU:arithmetic and logic unit
: control unit واحد کنترل
واحد کنترل: هر دستور کامپیوتری از حافظه خارج میشود پس از تشخیص نوع، دستور ، مدارات خاصی شروع بهکار میکنند تا دستور مورد نظر اجرا شود واحد کنترل تشخیص میدهد که چه مداراتی باید کار کنند تا عمل خواسته شده اجرا شود.
Cpu : داخل Case است .
پردازشگر اصلی: ریزپردازندههای معروف توسط شرکت Intel ساختهشدهاست. انواع ریزپردازندهها کهتوسط Intel ساختهشده .
کامپیوترهای XT : technology Extended 8086 8088
80186
کامپیوترهای AT : technology advanced 80286
80386
80486
80586
آدرس از Cpu بهحافظهاصلی RAM روی یک مجموعه از سیمها بهنام bus address فرستاده میشود.محتوای حافظه به CPU طی مجموعه سیمهای دیگری بهنام data bus منتقل میشود.
بعد از پردازشگر 486 کامپیوترهای Pentium بهبازار ارائهشدکه به سرعت تکامل یافت. :
pentium pro که 3.3 میلیون ترانزیستور دارد و در سال 1993 ارائهشد.
II pentium که 5 .7 میلیون ترانزیستور دارد و با سرعتهایی بین 266-233 مگاهرتز و 333-300 مگاهرتز و 32 کیلوبایت cache سطح 1 و 512 کیلوبایت cache سطح 2 ارائه شد.
III pentium : 70 دستورالعمل جدید برای امکانات چندرسانهای و سهبعدی دارد.
pentium IV : که 144 دستورالعمل جدید برای محاسبات اعشاری بادقت بسیار بالا و1.4 تا 1.5 گیگاهرتز سرعت دارد.
حافظه : اطلاعات در حافظه بهصورت 0و1 ذخیره میشود. 0 یا 1 بیت گفته میشود واحدهای بزرگتر از بیت :
بایت، کیلوبایت، مگابایت ، گیگابایت ، ترابایت است.
بهصورت زیر:
1 بایت = 8 بیت
1 کیلوبایت= 210 بایت = 1024 بایت
1 مگابایت = 220 بایت = 1024*1024 بایت
1 گیگابایت = 230 بایت = 1024*1024*1024 بایت
1 ترابایت = 240 بایت = 1024*1024*1024*1024 بایت
1-Integer
2-Floating point
اطلاعات در حافظه 3-کاراکتر
4- اطلاعات صوتی
5-اطلاعات تصویری
کاراکتر : جدول AscII یا EBCDIC
اطلاعات صوتی : با ذخیره مختصات نقاط
اطلاعات تصویری : صفحه تصویر بهنقاط یا pixel تقسیم میشود.
مثلاً 800*600 هر نقطه بایت (100 ) یا 3 بیت
برای 8 رنگ مطرح میشود.
کامپیوترهای Digital تمام اطلاعات را عددی ذخیره میکنند.
یک دستورالعمل در ماشین معمولاً
31 12 11 7 6 0
سلسله مراتب حافظه را میتوان چنین نمایش داد:
محوطه موقت حافظه
محوطه دائمی حافظه
Ram : حافظه با دستیابی مستقیم Random Access Memory
Rom : حافظه تنها خواندنی Read only Memory
اطلاعاتی که در Ram ذخیره میشود بههر ترتیبی میتواند دستیابی شود و نوشتهشود یا پاکشود.
اطلاعاتی که در Rom ذخیره میشود نیز دستیابی مستقیم است و این اطلاعات دائمی است نمیتواند پاک شود یا دوبارهنویسی شود.
1- static Ram
انواع Ram 2-Dynamic Ram
در DRAM مدار برای یک بیت شامل یک ترانزیستور کهبهصورت سویچ عمل میکند. و یک capacitor (خازن) و یک دستگاه است که میتواند شارژ (charge) را ذخیره نماید.
بیت 1 در DRAM با یک خازن شارژ شده ذخیره میشود.
بیت 0 در DRAM با یک خازن شارژ نشده ذخیره میشود.
برای ذخیره بیت 1 در DRAM ، ترانزیستور در آن مکان روشن میشود معنیاش آن است که سویچ بسته است و اجازه میدهد جریان بهداخل خازن برود و آنرا شارژ کند آنگاه ترانزیستور خاموش میشود معنیاش آن است که سویچ باز است و خازن را شارژ شده نگاه میدارد.
ذخیره صفر، شارژ از خازن خارج میشود در حالیکه ترانزیستور روی on است و سپس ترانزیستور خاموش میشود برای خواندن یک مقدار در یک bit location DRAM، یک کاشف مدار (detector circuit) معین میکند که آیا شارژ در خازن هست یا خیر.
در SRAM ، مدار برای یک بیت شامل جندین ترانزیستوراست که مداوم اطلاعات ذخیرهشده را refreshمیکند . کامپیوتر اطلاعات را در SRAM سریعتر از DRAM بازیابی میکند ولی مدارهای داخل SRAM توان بیشتری مصرف میکنند مدار یک SRAM bit بزرگتر است بنابراین یک SRAM chip بیتهایی کمتر از یک DRAM chip با همان اندازه ذخیره میکنند.بههمین دلیل SRAM وقتی استفاده میشود که سرعت دستیابی مهمتر از اندازه حافظه یا مصرف توان است.
زمانیکه cpu صرف خواندن یانوشتن یک بیت در حافظه میکند برای کارایی کامپیوتر مهم است این زمان، زمان دستیابی نام دارد. زمان دستیابی DRAM فعلی بین 60 و 80 نانوثانیه ( بیلونیم ثانیه) است.
زمان دستیابی SRAM ، 4 مرتبه سریعتر از DRAM است .
حافظه داخلی هر ماشین به واحدهای قابل آدرس بیت یا word تقسیم میشود.
وقتی کامپیوتر یک دستور خواندن را اجرا میکند قسمتی از دستورالعمل مشخص میکند چه آدرسی در حافظه مورد دستیابی قرار میگیرد. آدرس از CPU بهحافظهاصلی (RAM) روی یک مجموعه از سیمها بهنام address bus فرستاده میشود مدارهای کنترلی این آدرس را بهکار میگیرند تا بیتها را در مکان مشخص RAM انتخاب کنند. محتوایآنها به CPUطی مجموعه سیمهای دیگری بهنام data bus برگردانده میشود.
ROM : نوعی دیگر از حافظه داخلی برای ذخیره مجموعه پایه از دستورالعملهاست که این (Basic input –output system) Bios گفتهمیشود و آن چیزی است که کامپیوتر وقتی روشن میشود ابتدا بهآن نیاز دارد. اطلاعات بهصورت دائمی روی chip های کامپیوتر در شکل مدارهای hard wired الکترونیکی ذخیره میشود.
ثبات: ساختمان حافظه اصلی زا دارد و برای اجرای دستورات ماشین بهکار گرفته میشود.
Cache: حتی با bus سریع و عریض انتقال اطلاعات از Memory card بهCpu بیشتر از زمان پردازش CPU روی Data زمان میبرد.
cache برای آن است که Data ئی که بیشتر مورد نیاز CPU است آماده نگاه دارد. مقدار کمی از حافظه بهعنوان Primary یا سطح 1 درست در کتار CPU است میزان این حافظه بین 2 کیلوبایت و 64 کیلوبایت است.
ثانویه یا سطح 2 : روی Memory card در کنار CPU است این Cache ارتباط مستقیم با Cpu دارد یک ic اختصاصی روی Mother board که کنترلکننده L2 است کاربرد Cache سطح 2 بهوسیله CPU را مرتب میکند بر طبق CPU ، اندازه Cache سطح 2 از 256 کیلوبایت تا 2 مگابایت است. در بیشتر سیستمها اطلاعات مورد نیاز CPU از طریق Cache ، 95 % تا مین میشود. که در انتظار CPU برای آوردن data از Main memory بسیار موثر است .
- بعضی سیستمهای ارزانقیمت ، همه را بهصورت Cache سطح 2 ، اجرا میکنند، بسیاری از CPU ها با کارایی بالا Cache سطح 2 را در داخل خود CPU ایجاد میکنند اندازه Cache سطح 2 و اینکه آیا Onboard ( روی CPU ) است فاکتور اصلی کارایی CPU است.
ثبات: آنها سلولهای حافظه هستند که در CPU ساخته شدهاند و شامل اطلاعات خاص مورد نیاز CPU هستند مخصوصاً ALU .
حافظه جانبی: حافظهجانبی بهفرممغناطیسی یا نوری یا ترکیبی از مغناطیس و نور بهنام Magneto-optical تقسیمبندی میشود.
یک حافظه مغناطیسی مواد و مکانیسمی شبیه آنجه برای Audio tape مورد استفاده قرار میگیرد استفادهمیکند.
حافظه نوری از لیزر برای ذخیره و باریابی از یک دیسک پلاستیکی استفاده میکند حافظه مغناطیسی- نوری از حافظه نوری و تکنولژی بازیابی همراه با یک Magnetic media استفاده میکند.
الف-نوارمغناطیسی شکلی از حافظه مغناطیسی کامپیوتر است ولی بهجای ذخیره یک سیگنال پیوسته مشابه Analogo audio tape از نقاط گسستهای استفاده میکند که مغناطیس شدهاند یا نشدهاند مطابق با 1 و صفر سیستمهای کامپیوتری معمولاً نوار مغناطیسی را با تشکیلات ماشینی مشابه نوارهای آنالوگ “ نوار ویدئو” بهکار میگیرند “ شکل ظاهر مانند نوار ضبط صوت”.
ب-دیسک مغناطیسی: از یک دیسکگردان همراه با مواد مغناطیسی استفاده میکنند همانطور که دیسک میچرخد، یک لمسکننده الکترومغناطیسی حساس کهبهنام نوک خواندن-نوشتن موسوم است روی سطح دیسک جستجو میکند و نقاط مغناطیسی خواندن و نوشتن روی شیارهای دایرهای متحدالمرکز قرار میگیرد. دیسک مغناطیسی در فرم Hard یا Flappy دستهبندی میشود این تقسیمبندی براساس انعطافی است کهمواد سازنده دارند.
فرمت این مقاله به صورت Word و با قابلیت ویرایش میباشد
تعداد صفحات این مقاله 59 صفحه
پس از پرداخت ، میتوانید مقاله را به صورت انلاین دانلود کنید
دانلود مقاله جاوا