প্রাকদিকের কম্পিউটার গুলো ছিল মেইনফ্রেম কম্পিউটার যেগুলোর কোন অপারেটিং সিস্টেম ছিল না। তখন পাঞ্চ কার্ড, কাগজের টেপ অথবা চৌম্বকীয় টেপ ব্যবহার করে নির্দেশ দেয়া হত। নির্দেশটি প্রথমে মেশিনে লোড হত তারপর কাজটি করা শুরু করত যতক্ষন না শেষ হত। প্রোগ্রামগুলো ডিবাগ করা যেত টগল সুইচ এবং প্যানেল লাইট এর মাধ্যমে।

প্রথমদিককার হাতে করা বাইনারি কোডগুলোর ট্রান্সলেসন বা অনুবাদের কাজ করার জন্য পরবর্তীকালে সাংকেতিক ভাষা, এসেম্বলারস এবং কমপাইলার উন্নয়নের কাজ শুরু হয় প্রোগ্রামারদের জন্য। পরবর্তীতে ইনপুট এবং আউটপুটের সুবিধার্থে পাঞ্চ কার্ড বা চৌম্বকীয় টেপ গুলোতে সাপোর্ট কোড থাকত যা কিনা ব্যবহারকারীর প্রোগ্রাম এর কাজে সহায়তা করত। তখনও মেশিন গুলো একের অধিক কাজ একই সময়ে করতে পারত না।

মেশিনগুলোর ক্ষমতা যখন বাড়ছিল তখন তার সাথে কাজ করার সহজ উপায় ও প্রয়োজনীয় হয়ে পড়ছিল। তখনও লোকদের বা ব্যবহারকারীদের প্রত্যেকটা কাজের জন্য বারবার নিদের্শ দিতে হচ্ছিল এত করে কাজের মান কমে যাচ্ছিল, গতি কমে আসছিল। নিরাপত্তার প্রয়োজনে অডিট ট্রেইল রাখা হত যাতে কোন প্রোগ্রাম কোন ফাইল ব্যবহার করছে তা বুঝা যায়। সময়ের প্রয়োজনে অটোমেটিক বা স্বতন্ত্র মনিটরিং ব্যবস্থার প্রয়োজন বাড়ছিল।

এসময় (অপারেটিং সিস্টেম শব্দটি ব্যবহারের পূর্বে) রানটাইম লাইব্রেরি একটি অপরিহার্য প্রোগ্রাম হিসেবে দেখা দেয়। যার মাধ্যমে কাজের রেকর্ড, হার্ডওয়্যার রিসোর্স ব্যবহার, কাজের নিয়ন্ত্রণ, একটি কাজের পরে অন্যটির জন্য রিসোর্স তৈরী করা যাতে করে দ্রুত পরের কাজে যাওয়া যায় ইত্যাদি করা যেত। এই ধরনের কাজগুলো একই সঙ্গে করা যেত ফলে এগুলো কে ডাকা হত মনিটর বা মনিটর প্রোগ্রাম।

শুরুর কথা
হোম কম্পিউটার
মেইনফ্রেম যুগ
মিনিকম্পিউটার এবং ইউনিক্স'র উদ্ভাবন