نرمافزار سیستم (System Software) به نرمافزاری در کامپیوتر گفته میشود که به کارکرد سیستم رایانه یا کاربردهای سطح پایین (Low Level) رایانه مربوط باشد. این نرمافزارها به ساختار فیزیکی سختافزار کامپیوتر وابسته هستند و در نوشتن آنها از زبانهای سطح پائین مانند زبان اسمبلی استفاده میشود.
سیستمعامل، پوسته ها، درایور ها، میان افزار ها، سیستم های پنجره بندی، موتورهای بازی سازی و نرم افزارهای سودمند از نرمافزارهای سیستم هستند. از جمله زبانهایی که برای نگارش نرمافزارهای سیستمی استفاده میشود، زبان برنامهنویسی C میباشد. کار کردن با سی برای برنامه نویسان راحتتر است و آنان این زبان را به اسمبلی ترجیح میدهند. اگر برای نگارش نرمافزار سیستمی مشکل محدودیت فضای سختافزاری داشته باشیم بهتر است با زبان اسمبلی کار کنیم که حجم آن پایینتر است. نرمافزارهای سیستمی به سختافزار وابستهاند.در برابر نرمافزار سیستم، نرمافزار کاربردی قرار دارد که برای کاربردهای سطح بالا و غیرسیستمی رایانه است و معمولاً به زبانهای سطح بالا نوشته میشود که از جزئیات سختافزاری سیستم مستقل است.
در حالت کلی، نرم افزارها به دو گروه اصلی تقسیم می شوند. این دو گروه عبارتند از :
نرم افزارهای سیستمی با سیستم سخت افزاری کامپیوتر (بخش هایی مثل واحدهای ورودی، خروجی و پردازنده مرکزی) ارتباط مستقیم دارند و عملیات مربوطه از طریق این نرم افزار ها هدایت و کنترل می شوند.
نرم افزارهای سیستمی به چند گروه تقسیم می شوند که عبارتند از:
وقتی سیستم کتمپیوتری روشن می شود و کارش را شروع می کند، برنامه های اولیه ای روی سخت افزار آن اجرا می شود تا کامپیوتر را برای اجرای عملیات آماده کند. یکی از این برنامه ها، به برنامه ی عیب یابی معروف است که قسمت های اصلی کامپیوتر از قبیل حافظه، پردازنده ی مرکزی و قسمت های دیگر را آزمایش می کند. اگر اشکالی در بخش های اصلی کامپیوتر باشد، توسط این برنامه اطلاع دادع می شود که به این مرحله POST (مخفف Power On Self Test) هم می گویند.
پس از این مرحله، برنامه ای به نام BIOS بایوس (مخفف Basic Input/Output System) به حافظه ی اصلی کپی می شود. فراهم کردن امکان انجام عملیات اصلی ورودی و خروجی به عهده ی این برنامه است. در آخرین مرحله، بخش های اصلی سیستم عامل از حافظه ی جانبی به حافطه ی اصلی آورده می شود. این بخش کنترل کتمپیوتر را به دست می گیرد و تا زمانی که کتمپیوتر روشن است در حافظه ی اصلی باقی می ماند. قسمت های دیگر سیستم عامل، در صورت نیاز توسط این بخش به حافظه ی اصلی منتقل می شود.
سیستم عامل (Operating System) تمام فعالیت های نرم افزار ی و سخت افزاری کامپیوتر را هدایت می کند. مدیریت منابع (Resource Management) سیستم، یکی از وظیفه های سیستم عامل هاست که بر اساس آن، واحد پردازنده ی مرکزی (CPU) حافظه ها و واحد های ورودی و خروجی کنترل می شوند. زمان بندی وقت CPU و تقسیم زمان آن بین چند برنامه هم از وظایف سیستم عامل است. برای این که کاربر به راحتی بتواند برنامه ها را اجرا کند، محیطی به نام رابط کاربری UI (مخفف User Interface) در سیستم عامل ها تعبیه می شود. امروزه، رابط های گرافیکی GUI (مخفف Graphical User Interface) محبوبیت زیادی دارند. در این محیط ها، کاربر می تواندبا شی های گرافیکی ای مثل تصویر ها و منو ها و استفاده از ماوس، برنامه ها را به راحتی اجرا کند.
مترجم زبان، نرم افزاری است که برنامه ی نوشته شده با یک زبان خاص برنامه نویسی را به زبان قابل فهم برای ماشین تبدیل می کند.
زبان های برنامه نویسی به سه گروه کلی تقسیم شوند.
برنامه های کمکی، نرم افزارهایی هستند که عملیات مربوط به استفاده از کامپیوتر را ساده تر می کنند و در مدیریت بهتر سیستم به کاربران کمک می کنند. برخی از این برنامه های کمکی تحت عنوان بسته های نرم افزاری در بازار عرضه می شوند. نرم افزارهای ویروس یابی، فشرده سازی و مدیریت حافظه و دیسک، نمونه هایی از برنامه های کمکی هستند.
نرم افزارهای کاربردی برای انجام امور خاصی، طراحی و تولید شده اند. برخی از این نرم افزارها برای انجام کارهای گرافیکی، تولید صفحات وب، اموزش و مدیریت پروژه ها استفاده می شوند و بعضی هم مثل واژه پرداز ها، صفحات گسترده، بانک اطلاعاتی و برنامه های ارائه ی گرافیکی، کاربرد های بسیار گسترده ای دارند.
دسته ای دیگر از برنامه های کاربردی برای انجام امور مالی، انبارداری، حسابداری، تعمیرات، تولید و سایر امور دیگر طراحی و تهیه شده اند. این نرم افزارهای کاربردی به وسیله ی سازمان تهیه می شوند و یا به صورت آماده از شرکت های کامپیوتری تامین شده و منطبق با نیاز های سازمان تهیه می گردند.
برای تولید جلوه های گرافیکی، ایجاد تصاویر و انجام تغییرات در آنها، رنگ آمیزی تصاویر و موارد بسیار دیگر که در ارتباط با تصاویر هستند، از نرم افزارهای گرافیکی استفاده می شود. Adobe Photoshop و CorelDraw از معروفترین برنامه های گرافیکی هستند.
گسترش روزافزون اینترنت و تمایل سازمان ها، موسسه ها و اشخاص به ایجاد صفحات وب، باعث شده که نرم افزارهای بسیاری برای این منظور تولید شوند. برخی از صفحات تولید شده با این نرم افزار ایستا (Static) هستند و فقط اطلاع رسانی را انجام می دهند، در حالی که صفحات وب پیشرفته، پویا (Dynamic) هستند و امکان تبادل اطلاعات بین کاربر و سیستم را فراهم می کنند.
امروزه صفحات وب با نرم افزار هایی مانند ورد پرس، FrontPage و… تولید می شوند.
مدیران موسسات با استفاده از از نرم افزارهای مدیریت پروژه می توانند کلیه ی امور مربوط به زمان بندی و مدیریت پروژه ها را انجام بدهند و بر اساس آن، شاخص های مهمی مانند زمن شروع، منابع انسانی، هزینه ها، طول زمان و زمان پایان پروژه را بررسی کنند. نرم افزار Microsoft Project نمنه ای از نرم افزاری های مدیریت پروژه است.
به کمک نرم افزارهای واژه چرداز (Word Processor) می توان نامه ها و گزارش های متنوعی تولید کرد. اصلاح متن، صفحه آرایی، سطربندی، پاراگراف بندی، استفاده از قلم های متنوع، رنگ آمیزی نوشته ها و شکل ها، کنترل صحت املایی، درج تصاویر و قابلیت های دیگری در این نرم افزار وجود دارندکه با استفاده از آنها، به راحتی می توان عملیات مقدماتیمربوط به نشر را انجام داد. Microsoft Word یکی از واژه پردازهایی است که اکثر کاربران سیستم عامل ویندوز از آن استفاده می کنند.
در محیط نرم افزارهای صفحه گستره می توان انواع عملیات آماری را روی داده ها انجام داد. در این محیط ها، داده ها را می توان ابتدا در یک جدول وارد کرد و سپس انواع عمل های ریاضی و آماری را روی سطر ها، ستون ها و یا بخشی از جدول داده ها انجام داد.
ارائه ی خروجی به صورت منحنیهای آماری هم از قابلیت های این نرم افزارهاست. یکی از پرکاربردترین نرم افزارهای صفحه گسترده، Microsoft Excel است.
گردآورنده :
امیرمحمد صفوی
استاد :
دکتر مریم حاجی اسمعیلی - دکترای علوم کامپیوتر از دانشگاه کینگستون لندن
Dr. Maryam Hajiesmaeili
PHD of Computer Science From Kingston University of London
www.en.wikipedia.org/wiki/Application_software