دسته بندی | کامپیوتر و IT |
بازدید ها | 16 |
فرمت فایل | 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) بودند.
دسته بندی | کامپیوتر و IT |
بازدید ها | 8 |
فرمت فایل | doc |
حجم فایل | 1040 کیلو بایت |
تعداد صفحات فایل | 24 |
تاریخچه فتوشاپ
سالها پیش در پاییز سال 1987, Thomas knoll، دانشجوی دکترای رشته ) (Computer Visionدر حال کار روی برنامهای بود که بتواند تصاویر طیف خاکستری کامپیوتری را روی مانیتورهای سیاهوسفید نقشهبیتی به نمایش درآورد. این برنامه به نوعی سرگرمی دوره دانشجویی نول محسوب میشد که فارغ از درسهای دوره دکتری، در خانه خود و روی کامپیوتر مک پلاس خانگیاش روی آن کار میکرد. این کد برنامه به هیچ وجه مربوط به رساله پایاننامه نول نمیشد و خود او نیز در اوایل کار هرگز فکر نمیکرد که این برنامه ساده او قرار است روزی به بزرگترین نرمافزار ویرایش تصویر تبدیل شود.
این برنامه نظر John، برادر نول را جلب کرد. جان در آن زمان در شرکت بزرگ (Industrial Light and Magic ILM)در مارین کانتری کالیفرنیا مشغول به کار بود. ILM مرکز جلوههای ویژه تصویری در شرکت عظیم لوکاس فیلم بود که در آن زمان بزرگترین و معتبرترین شرکت فیلمسازی به شمار میرفت. با تهیه فیلم جنگهای ستارهای، لوکاس فیلم ثابت کرده بود که جلوههای تصویری کارآمد میتوانند با ترکیب شخصیتهای خیالی و داستانی دور از ذهن، به یک پدیده در دنیای سینما تبدیل شوند.
در پی موفقیت عظیم آن فیلم، همه در پی یافتن راهحلهای دیجیتالی برای چنین مقاصدی بودند و به همین علت جان نیز به محض اطلاع از پروژه برادرش، از او خواست که از برنامهاش برای تولید تصاویر دیجیتالی استفاده کند. این برنامه ساده Display نام داشت و نمایش تصاویر دیجیتالی توسط این برنامه نتیجه خوبی را به دنبال داشت که نقطه سرآغاز کار این دو برادر شد. خود جان چنین تعریف میکند:
"من نمیدونستم چطور میشه از Display استفاده کرد. وقتی برای اولین بار یک عکس سیاه و سفید رو با اون باز کردم، از جان پرسیدم آیا میتونه کد برنامه رو جوری تغییر بده که تصاویر رو با فرمتهای دیگه هم ذخیره کنه؟! اگهDisplay میتونست چنین کاری کنه اونوقت من میتونستم با اون از عکس برنامههای دیگه خروجی بگیرم. من چندتا عکس رو که از کامپیوترهای لایت اند مجیک آورده بودم، توی Display باز کردم. اما روی کامپیوتر من خیلی تیره نمایش داده شدند. بنابراین دوباره از توماس پرسیدم: میتونی کاری کنی که این عکسها کمی روشنتر بشن یا مثلا مقدار شفافیت اونها رو تغییر بدی؟"
همین سوال ساده سرآغاز کار بر روی نرمافزاری شد که امروزه آن را با نام فتوشاپ میشناسیم.
جان توسط پدرش که در دانشگاه میشیگان سمت استادی داشت، ترتیب سفارش یک کامپیوتر Macintosh II را که اولین مدل رنگی محسوب میشد داد. به محض خریداری این کامپیوتر، نول دوباره شروع به کار روی برنامه کرد، به نوعی که بتواند روی مانیتورهای رنگی نیز کار کند. آن دو به مدت چند ماه به طور مداوم روی این پروژه کار کردند تا بتوانند قابلیتهای نمایشی آن را افزایش دهند. در همان زمان به اصرار جان، توماس کدهای مخصوص خواندن و ذخیرهکردن فرمتهای مختلف رنگدانهها را به برنامهاش اضافه کرد که همان کدها سالها بعد تبدیل به فیلترها plug-inتصویرهای نقشه بیتی شدند.
توماس پس از مدتی کار روی برنامهاش موفق به ساخت ابزار منحصر به فرد محدوده انتخاب (Selection Tools) شد که بدون اینکه لبههای زمخت و ناهموار ایجاد کند، قابلیت جدا کردن مناطق رنگی را داشت. او همچنین توانست قابلیتهای فوقالعادهای مثل Levelها را برای تنظیم تنالیته تصویر، Hue and Saturation را برای تنظیمات رنگی و نیز قابلیتهای رنگآمیزی را برای تغییر رنگ مناطق مورد نظر در تصاویر نقشه بیتی فراهم کند.
در تابستان 1988 بود که جان بالاخره به این نتیجه رسید که کاربرد برنامه ساخته شده به حدی از انتظار رسیده است که بتوان از آن به عنوان یک محصول تجاری استفاده کرد. توماس از این فکر جان شگفت زده شد:" جداً فکر میکنی بتونیم این برنامه رو به کسی بفروشیم؟ من که فکرش رو نمیکنم. " جان با خوشبینی برادرش را متقاعد کرد که این کار اصلا دور از ذهن نیست و به او قول داد که سعیاش را میکند تا از برنامه ساخته شده، یک نرمافزار تجاری بسازد.
جان راست میگفت. فروش چنین برنامهای به همین سادگیها نبود و کار بسیار زیادتری لازم داشت تا به چنین نتیجهای برسد. اما جان دست بردار نبود.
در همان زمان بود که جان در نشریه MacWeek آگهی تبلیغ نرمافزار ویرایشگری را دید که PhotoMac نام داشت. دیدن آن آگهی باعث شد که جان بیشتر در فکر فروش نرمافزار خودشان بیفتد. به همین علت برای تحقیق پیرامون نرمافزار جدید راهی همایش SIGGRAPH شد. نتیجه همایش برای او رضایتبخش بود. طوری که خود او میگوید"ما هیچ نگرانیای از آن نرمافزار نداشتیم. برنامه ما قابلیتهای بزرگی داشت که PhotoMac فاقد آنها بود" و درحقیقت تعجب کرده بود که برنامهای با چنین قابلیتهای سطح پایینی میتواند فروخته شود! توماس بارها و بارها نام برنامه خودشان را تغییر داد و هر بار که نام جدیدی برای آن برمیگزید چیز دیگری نظرش را جلب میکرد و باعث میشد دوباره آن را تغییر دهد. دقیقا مشخص نیست نام فتوشاپ از کجا گرفته شد.
به نظر میرسد این نام را یکی از افراد مورد اعتماد او به وی پیشنهاد داد و در حقیقت این نام آخرین نامی بود که برگزیده شد و روی نرمافزار مورد نظر باقی ماند.
پس از نامگذاری نرمافزار، جان شروع کرد به گشتن به دنبال شرکتی که روی فتوشاپ سرمایهگذاری کند. اولین شرکتی که با آنها وارد مذاکره شدSuperMacبود که اختلافات مالی موجب جلوگیری از رسیدن به توافق نهایی بین آنها شد. Aldus در حال کار روی یک پروژه خانگی بود و Adobe نیز علیرغم علاقهمندیای که به همکاری نشان داد اما روند کار آنها به سرعتی نبود که بتوانند به راحتی وارد مذاکره شوند. در آن زمانی که جان در دره سیلیکون به دنبال شرکتی برای همکاری میگشت، توماس نیز بهطور تمام وقت در حال کار روی فتوشاپ بود تا بتواند امکانات و قابلیتهای بیشتری را به آن اضافه کند. در این زمان جان نیز برای اینکه بتواند امکان استفاده از نرمافزار را برای عموم سادهتر کند، یک راهنمای ساده برای آن تهیه کرد که میتوانست نحوه کار با نرمافزار را به خوبی تشریح کند.
زحمات این دو بالاخره نتیجه داد و توانستند با شرکت Barneyscan وارد مذاکره شوند. این شرکت در آن زمان سازنده اسکنرهای نقشهبیتی بود و قصد داشت با خرید فتوشاپ و استفاده از آن در جهت بالابردن کارایی اسکنرهای خود، فروش سختافزارهای خود را افزایش دهد. اقدامات اولیه انجام شد و اولین نسخه نرمافزار به عنوان یک برنامه الحاقی برای اسکنرها به بازار آمد. از نسخه فتوشاپ چیزی در حدود دویست کپی به فروش رفت که هرچند قابل ملاحظه نبود، اما بههرحال اولین فروش تجاری برنامه خانگی برادران نول به شمار میرفت.
در همین زمان جان، نرمافزار خودش را به مهندسان شرکت اپل نشان داد.
دسته بندی | کامپیوتر و IT |
بازدید ها | 8 |
فرمت فایل | doc |
حجم فایل | 200 کیلو بایت |
تعداد صفحات فایل | 23 |
پورت موازی
در زمان اتصال یک چاپگر به کامپیوتر از پورت موازی استفاده می گردد. با اینکه اخیرا" استفاده از پورت های USB رایج شده است ولی همچنان استفاده از پورت موازی برای اتصال چاپگر به کامپیوتر بسیار متداول است .
از پورت های موازی می توان برای اتصال تجهیزات جانبی زیر استفاده کرد
مبانی پورت های موازی
پورت موازی ، توسط شرکت IBM و بمنظور اتصال یک چاپگر به کامپیوتر طراحی گردید. زمانیکه شرکت IBM در اندیشه طراحی و ارائه کامپیوترهای شخصی بود، ضرورت استفاده از چاپگرهای شرکت" سنترونیکس" نیز احساس گردید.شرکت IBM تصمیم نداشت که از همان پورتی که توسط چاپگرهای سنترونیک استفاده می گردید، در طراحی خود استفاده نماید.
مهندسین شرکت IBM از یک کانکتور 25 پین (DB-25) بهمراه یک کانکتور 36 پین برای ایجاد یک کابل خاص بمنظور اتصال چاپگر به کامپیوتر استفاده کردند. سایر تولید کنندگان چاپگر نیز در ادامه از استاندارد سنترونیک تبعیت و به مرور زمان استاندارد فوق در سطح جهان مطرح و مورد استفاده قرار گرفت .
زمانیکه کامپیوترهای شخصی اطلاعاتی را برای چاپگر و یا هر وسیله دیگری که به پورت موازی متصل است، ارسال می نمایند ، در هر لحظه هشت بیت ارسال خواهد شد.. هشت بیت فوق بصورت موازی برای دستگاه ارسال خواهند شد. پورت موازی استاندارد، قادر به ارسال 50 تا 100 کیلوبایت در هر ثانیه است .نحوه عملکرد چاپگر به شرح زیر است :
- پین یک، حامل سیگنال Strobe بوده و دارای ولتاژی بین 2/8 و پنج است . زمانیکه کامپیوتر اطلاعاتی ( یک بایت داده ) ارسال می دارد ولتاژ به نیم ولت افت پیدا خواهد کرد.افت ولتاژ فوق به چاپگر اعلام می نماید که داده هائی ارسال شده است .
- پین دوتا نه حامل داده است .بمنظور مشخص نمودن اینکه یک بیت دارای مقدار یک است ولتاژ پنج ارسال از طریق پین مربوطه ارسال ( شارژ) خواهد شد.بر روی پینی که شامل مقدار ( داده ) صفر است شارژی ( ولتاژ) قرار نخواهد گرفت .
- پین ده ، اطلاعات لازم در خصوص نحوه عملکرد چاپگر را برای کامپیوتر، ارسال می نماید . نحوه پیاده سازی پین فوق نظیر پین "یک" است .زمانیکه ولتاژ موجود بر روی پین فوق به نیم ولت تنزل پیدا نماید، کامپیوتر اطلاعات لازم در خحصوص فرآیند چاپ را از چاپگر اخذ خواهد کرد .( کامپیوتر به این اطمینان خواهد رسید که چاپگر اطلاعات را دریافت نموده است )
- در صورتیکه چاپگر مشغول باشد، پین شماره یازده شارژ می گردد. زمانیکه ولتاژ نیم ولت بر روی پین فوق قرار بگیرد به کامپیوتر اغلام خواهد شد که چاپگر آماده دریافت اطلاعات است .
- در صورتیکه چاپگر دارای کاغذ نباشد ، از طریق پین شماره دوازده به کامپیوتر آگاهی لازم داده خواهد شد.
- زمانیکه بر روی پین شماره سیزده شارژی وجود داشته باشد، آماده بودن چاپگر به کامپیوتر اعلام می گردد.
- کامپیوتر از طریق پین شماره چهارده و با استفاده از یک ولتاژ پنچ ولت سیگنال Auto Feed را برای چاپگر ارسال می دارد.
- در صورتیکه چاپگر دارای مشکلی باشد ولتاژ پین شماره پانزده به نیم ولت کاهش و کامپیوتر از بروز اشکال در چاپگر آگاهی پیدا می نماید.
- زمانیکه یک کار آماده چاپ باشد، کامپیوتر از پین شماره شانزده برای مقداردهی اولیه چاپگر ( کاهش ولتاژ) استفاده می نماید.
- کامپیوتر از پین شماره هیفده برای Offline نمودن از راه دور چاپگر استفاده می نماید، بدین منظور برای چاپگر یک شارژ ارسال خواهد شد.
- پین های شماره هیجده تا بیست و پنج Ground بوده و از آنها بعنوان یک سیگنال مرجع برای شارژ های پایین تر از نیم ولت استفاده می گردد.
دسته بندی | کامپیوتر و IT |
بازدید ها | 6 |
فرمت فایل | doc |
حجم فایل | 84 کیلو بایت |
تعداد صفحات فایل | 22 |
تاریخچه لینوکس
آغاز داستان
در سال 1991 در حالی که جنگ سرد رو به پایان میرفت و صلح در افقها هویدا میشد، در دنیای کامپیوتر، آینده بسیار روشنی دیده میشد. با وجود قدرت سخت افزارهای جدید، محدودیت های کامپیوترها رو به پایان میرفت. ولی هنوز چیزی کم بود...
و این چیزی نبود جز فقدانی عمیق در حیطه سیستم های عامل.
داس، امپراطوری کامپیوترهای شخصی را در دست داشت. سیستم عامل بی استخوانی که با قیمت 50000 دلار از یک هکر سیاتلی توسط بیل گیتز (Bill Gates) خریداری شده بود و با یک استراتژی تجاری هوشمند، به تمام گوشه های جهان رخنه کرده بود. کاربران PC انتخاب دیگری نداشتند. کامپیوترهای اپل مکینتاش بهتر بودند. ولی قیمتهای نجومی، آنها را از دسترس اکثر افراد خارج می ساخت.
خیمه گاه دیگر دنیای کامپیوترها، دنیای یونیکس بود. ولی یونیکس به خودی خود بسیار گرانقیمت بود. آنقدر گرانقیمت که کاربران کامپیوترهای شخصی جرات نزدیک شدن به آنرا نداشتند. کد منبع یونیکس که توسط آزمایشگاههای بل بین دانشگاهها توزیع شده بود، محتاطانه محافظت میشد تا برای عموم فاش نشود. برای حل شدن این مسئله، هیچیک از تولید کنندگان نرم افزار راه حلی ارائه ندادند.
بنظر میرسید این راه حل به صورت سیستم عامل MINIX ارائه شد. این سیستم عامل، که از ابتدا توسط اندرو اس. تاننباوم (Andrew S. Tanenbaum) پروفسور هلندی، نوشته شده بود به منظور تدریس عملیات داخلی یک سیستم عامل واقعی بود. این سیستم عامل برای اجرا روی پردازنده های 8086 اینتل طراحی شده بود و بزودی بازار را اشباع کرد.
بعنوان یک سیستم عامل، MINIX خیلی خوب نبود. ولی مزیت اصلی آن، در دسترس بودن کد منبع آن بود. هرکس که کتاب سیستم عامل تاننباوم را تهیه میکرد، به 12000 خط کد نوشته شده به زبان C و اسمبلی نیز دسترسی پیدا میکرد. برای نخستین بار، یک برنامه نویس یا هکر مشتاق میتوانست کد منبع سیستم عامل را مطالعه کند. چیزی که سازندگان نرم افزارها آنرا محدود کرده بودند. یک نویسنده بسیار خوب، یعنی تاننباوم، باعث فعالیت مغزهای متفکر علوم کامپیوتری در زمینه بحث و گفتگو برای ایجاد سیستم عامل شد. دانشجویان کامپیوتر در سرتاسر دنیا با خواندن کتاب و کدهای منبع، سیستمی را که در کامپیوترشان در حال اجرا بود، درک کردند.
و یکی از آنها لینوس توروالدز (Linus Torvalds) نام داشت.
کودک جدید در افق
در سال 1991، لینوس بندیکت توروالدز (Linus Benedict Torvalds) دانشجوی سال دوم علوم کامپیوتر دانشگاه هلسینکی فنلاند و یک هکر خود آموخته بود. این فنلاندی 21 ساله، عاشق وصله پینه کردن محدودیت هایی بود که سیستم را تحت فشار قرار میدادند. ولی مهمترین چیزی که وجود نداشت یک سیستم عامل بود که بتواند نیازهای حرفه ای ها را براورده نماید. MINIX خوب بود ولی فقط یک سیستم عامل مخصوص دانش آموزان بود و بیشتر به عنوان یک ابزار آموزشی بود تا ابزاری قدرتمند برای بکار گیری در امور جدی.
در این زمان برنامه نویسان سرتاسر دنیا توسط پروژه گنو (GNU) که توسط ریچارد استالمن (Richard Stallman) آغاز شده بود، تحریک شده بودند. هدف این پروزه ایجاد حرکتی برای فراهم نمودن نرم افزارهای رایگان و در عین حال با کیفیت بود. استالمن خط مشی خود را از آزمایشگاه معروف هوش مصنوعی دانشگاه MIT با ایجاد برنامه ویرایشگر emacs در اواسط و اواخر دهه 70 آغاز نمود. تا اوایل دهه 80، بیشتر برنامه نویسان نخبه آزمایشگاههای هوش مصنوعی MIT جذب شرکتهای نرم افزاری تجاری شده بودند و با آنها قرارداد های حفظ اسرار امضا شده بود. ولی استالمن دیدگاه متفاوتی داشت. وی عقیده داشت برخلاف سایر تولیدات، نرم افزار باید از محدودیت های کپی و ایجاد تغییرات در آن آزاد باشد تا بتوان روز به روز نرم افزارهای بهتر و کارآمد تری تولید نمود.
با اعلامیه معروف خود در سال 1983، پروژه GNU را آغاز کرد. وی حرکتی را آغاز کرد تا با فلسفه خودش به تولید و ارائه نرم افزار بپردازد. نام GNU مخفف GNU is Not Unix است. ولی برای رسیدن به رویای خود برای ایجاد یک سیستم عامل رایگان، وی ابتدا نیاز داشت تا ابزارهای لازم برای این کار را ایجاد نماید. بنابراین در سال 1984 وی شروع به نوشتن و ایجاد کامپایلر زبان C گنو موسوم به GCC نمود. ابزاری مبهوت کننده برای برنامه نویسان مستقل. وی با جادوگری افسانه ای خود به تنهایی ابزاری را ایجاد نمود که برتر از تمام ابزارهایی که تمام گروههای برنامه نویسان تجاری ایجاد کرده بودند قرار گرفت. GCC یکی از کارآمد ترین و قویترین کامپایلرهایی است که تا کنون ایجاد شده اند.
تا سال 1991 پروزه GNU تعداد زیادی ابزار ایجاد کرده بود ولی هنوز سیستم عامل رایگانی وجود نداشت. حتی MINIX هم لایسنس شده بود. کار بر روی هسته سیستم عامل گنو موسوم به HURD ادامه داشت ولی به نظر نمی رسید که تا چند سال آینده قابل استفاده باشد.
این زمان برای توروالدز بیش از حد طولانی بود...
در 25 آگوست 1991، این نامه تاریخی به گروه خبری MINIX از طرف توروالدز ارسال شد:
از : لینوس بندیکت توروالدز
به: گروه خبری MINIX
موضوع: بیشتر چه چیزی را میخواهید در MINIX ببینید؟
خلاصه: نظرخواهی کوچک در مورد سیستم عامل جدید من
با سلام به تمام استفاده کنندگان از MINIX
من در حال تهیه یک سیستم عامل رایگان فقط به عنوان سرگرمی و نه به بزرگی و حرفه ای GNU برای دستگاههای 386 و 486 هستم. این کار از آوریل شروع شده و درحال آماده شدن است. من مایلم تا نظرات کاربران را در مورد چیزهایی که در MINIX دوست دارند یا ندارند، جمع آوری کنم. زیرا سیستم عامل من حدودا شبیه آن است. مانند ساختار سیستم فایل مشابه و چیزهای دیگر... من اکنون bash نسخه 1.08 و GCC نسخه 1.40 را به آن منتقل کرده ام و به نظر میرسد که کار میکند. من در عرض چند ماه چیزی آزمایشی درست کرده ام و مایلم بدانم که کاربران بیشتر به چه قابلیتهایی نیاز دارند؟ من از هر پیشنهادی استقبال میکنم. ولی قول نمی دهم همه آنها را اجرا کنم. لینوس
همانطور که در این نامه پیداست، خود توروالدز هم باور نمی کرد که مخلوقش آنقدر بزرگ شود که چنین تحولی در دنیا ایجاد کند. لینوکس نسخه 0.01 در اواسط سپتامبر 1991 منتشر شد و روی اینترنت قرار گرفت. شور و اشتیاقی فراوان حول مخلوق توروالدز شکل گرفت. کدها دانلود شده، آزمایش شدند و پس از بهینه سازی به توروالدز بازگردانده شدند. لینوکس نسخه 0.02 در پنجم اکتبر به همراه اعلامیه معروف توروالدز آماده شد:
از : لینوس بندیکت توروالدز
به: گروه خبری MINIX
موضوع: کدهای منبع رایگان هسته مشابه MINIX
آیا شما از روزهای زیبای MINIX 1.1 محروم شده اید؟ هنگامی که مردها مرد بودند و راه اندازهای دستگاه خود را خودشان مینوشتند؟ آیا شما فاقد یک پروزه زیبا هستید و می میرید تا سیستم عاملی داشته باشید تا بتوانید آنرا مطابق با نیازهای خود در آورید؟ اگر اینگونه است، این نامه برای شما نوشته شده است.
همانطور که ماه پیش گفتم من در حال کار بر بروی یک سیستم عامل رایگان مشابه MINIX برای کامپیوترهای 386 هستم. این سیستم عامل اکنون بجایی رسیده است که قابل استفاده است و مایل هستم که کدهای منبع را در سطح گسترده تر پخش نمایم. این نسخه 0.02 است ولی من موفق شده ام که نرم افزارهای Bash، GCC، GNU-Make، GNU-sed، Compress و غیره را تحت آن اجرا کنم. کدهای منبع این پروژه را میتوانید از آدرس nic.funet.fi با آدرس 128.214.6.100 در دایرکتوری pub/OS/Linux پیدا کنید. این دایرکتوری همچنین دارای چند فایل README و تعدادی باینری قابل اجرا تحت لینوکس است. تمام کدهای منبع ارائه شده است زیرا هیچ یک از کدهای MINIX در آن استفاده نشده است. سیستم را میتوانید همانطور که هست کامپایل و استفاده کنید. کدهای منبع باینری ها را هم میتوانید در مسیر pub/GNU پیدا کنید.
دسته بندی | کامپیوتر و IT |
بازدید ها | 6 |
فرمت فایل | doc |
حجم فایل | 198 کیلو بایت |
تعداد صفحات فایل | 11 |
تحلیل سیستم انتخاب واحد دانشگاه
چکیده
در این پروژه جهت بدست آوردن نیازهای سیستم نرم افزاری ابتدا با کاربران مصاحبه ای انجام گرفته و به تحلیل و بررسی مشکلات و نیازمندی ها پرداخته شده است.به طور کلی سیستم جاری تحلیل شده و نیازمندی ها مشخص شده است، سپس با توجه به نیازمندی ها ، سیستم کامپیوتری تعریف شده است. برای تحلیل سیستم کامپیوتری از نرم افزار Rational Rose استفاده گردیده که از نمودارهای use case، sequence ، collaboration و classبرای تحلیل بهره گرفته شده است.
مقدمه
تحلیل سیستم جاری
نام |
x |
سمت |
مسئول ثبت |
عناوین کلیدی مسئولیت ها |
تکمیل مشخصات بایگانی دانشجویان, ثبت انتخاب واحد و حذف و اضافه, تکمیل پرونده فراغت از تحصیل, رعایت آیین نامه آموزشی, تهیه کارنامه برای دانشجویان |
نتیجه کار |
ثبت انتخاب واحد |
برای |
سیستم انتخاب واحد دانشجویان |
مسائل دخیل در موفقیت |
سیستم نرم افزاری کارامد با پوشش کامل نیازمندی ها |
موارد تسهیل کننده وظائف |
سیستم نرم افزاری با کارایی بالا به طوریکه در آن موارد زیر به وضوح مشخص باشد: _ثبت نام برای هر دانشجو بر اساس شماره دانشجویی باشد _ثبت لیست دروس انتخابی دانشجو به راحتی امکان پذیر باشد _رعایت اتوماتیک پیش نیازها و هم نیازها _سیستمی که آیین نامه برای آن تعریف شده باشد _سیستم این قابلیت را داشته باشد که مشروطی ها و اخراجی ها را مشخص کند _ترم های مشروطی مشخص باشد _تمامی اطلاعات دانشجویان مثلا تعداد واحد هایی که پاس کرده اند همراه با اسامی دروس قابل مشاهده و پرینت باشد _تهیه لیست حضور غیاب کلاسی برای اساتید _مشخص بودن اسامی کسانی که انتخاب واحد کرده اند و کسانی که انتخاب واحد نکرده اند |
موانع انجام وظایف |
امنیت پایین_مشکلات اجرایی آیین نامه_زمانبر بودن انجام کارها |
نام |
x |
سمت |
مسئول پشتیبانی انتخاب واحد |
عناوین کلیدی مسئولیت ها |
ثبت دروسی که باید در هر نیم سال ارائه شود_ثبت ظرفیت کلاس ها_زمان تشکیل کلاسها و زمان امتحانات که توسط مدیر گروه مشخص شده است_بر طرف کردن مشکلات دانشجویان فارغ تحصیل_ثبت نمرات دانشجویان_اصلاح اطلاعات در صورت نیاز |
نتیجه کار |
ثبت واصلاح نمرات |
برای |
سیستم انتخاب واحد دانشجویان |
مسائل دخیل در موفقیت |
سیستم نرم افزاری کارامد با پوشش کامل نیازمندی ها |
موارد تسهیل کننده وظائف |
سیستم نرم افزاری که در آن موارد زیر تعریف شده است _لیست دروسی که دانشجویان پاس کرده اند مشخص باشد _قیمت دروس انتخابی همراه با تمامی مشخصات قابل تعریف باشد _اسامی دانشجویان مشروطی مشخص باشد _به دانشجویان مشروط امکان انتخاب بیش از 14 واحد را ندهد _به دانشجویان ممتاز (معدل A) امکان انتخاب تا 24 واحد را ندهد _بازه زمانی انتخاب واحد(تاریخ شروع و پایان)قابل تعریف باشد _قابلیت پرینت لیست دروس برای اساتید که آنها را تدریس می کنند _جلوگیری از انتخاب دروسی که باهم تداخل دارند _قابلیت تعریف ظرفیت برای هر کدام از دروس _تهیه لیست حضور و غیاب برای هر درس به استاد مربوطه _آیین نامه دانشگاه برای سیستم قابل تعریف باشد _لیست دروس مربوط به هر رشته از قبل تعریف شده باشد _دروس هم نیاز و پیشنیاز برای سیستم تعریف شده باشد _نهایی شدن لیست دروس انتخابی دانشجویان پس از حذف و اضافه
|
موانع انجام وظایف |
امنیت پایین_مشخص نبودن قیمت دروس_زمانبر بودن مراحل انتخاب واحد |
مسائل موجود
مساله |
روش حل مساله |
مشکلات در اجرای آیین نامه دانشگاه |
تعریف آیین نامه دانشگاه برای نرم افزار |
زمانبر بودن انجام کارها |
نرم افزاری کردن کارها |
مشکلات در کنترل دروس انتخابی |
تعریف کنترل های لازم در سیستم |
عدم وجود پایگاه داده یکپارچه |
راه اندازی سیستم اتوماسیون و پایگاه داده یکپارچه |
وجود سیستم بایگانی یکپارچه سنتی و عدم امکان دسترسی آسان |
راه اندازی سیستم نرم افزاری |
امنیت پایین |
راه اندازی سیستم نرم افزاری |