یک نمودار که نشان میدهد کاربر چگونه با نرمافزار کاربردی تعامل برقرار میکند. نرمافزار کاربردی با استفاده از سیستمعامل میتواند از منابع سختافزار بهرهمند شود.
نَرماَفزار[۱] (به انگلیسی: software) گردآوردی از دستورالعملها است که به رایانه میگوید «چگونه کار کن». این مفهوم در برابر سختافزار فیزیکی قرار دارد، که توسط آن سامانه ساخته شدهاست و «در واقعیت کار را انجام میدهد».
نرمافزارهای کاربردی، برنامههای مورد استفاده کاربرند و نرمافزارهای سیستمی، مدیریت رایانه را برعهده دارند. مهمترین نرمافزار سیستم، سیستمعامل است.
سیستمعامل
وقتی برنامهای روی رایانه نصب میگردد، بعضی از اجزای سختافزاری رایانه به فرمان آن برنامه در میآیند.
برای نمونه هنگامی که با یک برنامه اجرای موسیقی کار میکنید، کارت صدای رایانه با برنامه پخش موسیقی همکاری میکند و یک آهنگ یا پرونده (فایل) ارتباط بین این تنها قسمتی از کار سیستمعامل است.
ارتباط بین نرمافزار و سختافزار به عهده برنامهنویسی است. سیستمعامل یک برنامه نرمافزاری است که چون تمام منابع و امکانات سختافزاری در اختیار وی میباشد دارای ویژگی منحصر به فردی میباشد بنابراین آن را در رده نرمافزارهای سطح پایین (زبان ماشین) میخوانیم با این ویژگی که از اهمیت خاصی برخوردار است.
به بیان دیگر سیستمعامل یک برنامه جامع است که اجازه در اختیار قراردادن منابع و امکانات سختافزاری را برای نرمافزارها صادر میکند و این سیستمعامل است که مسئول صحت عملکرد سیستم و منابع آن است. انواع سیستمعامل: مایکروسافت ویندوز، مک او اس، لینوکس، اندروید و آیاواس
مدیریت فایلها و اطلاعات|مدیریت فاست. و تازه درخواستهایی که رابط کاربری نرمافزار ارسال میکند توسط این منبع پردازش میشود.
سه گروه کلی نرمافزارهای معماری
از دیدگاه ساختاری (معماری)، نرمافزارها به دستههای زیر تقسیم میشوند:
کاربر بنیان
کارگزار بنیان
کاربر کارگزار بنیان
واژه نرمافزار را در معناهایی به جز معنی برنامه رایانهای نیز بهکار میبرند؛ مثلاً در دانش برنامه نویسان برخی نرمافزارهای لینوکس. امروزه بیشتر کاربران تنها با ظاهر گرافیکی این برنامهها کار میکنند و اقدامات بسیاری از آنها از دید کاربر پنهان میماند به عبارتی هر نرمافزار مجموعهای از رمزها است که از الگوریتمی اجرا میکند.