আমি বছরের পর বছর ধরে একটি সফটওয়্যার বিকাশকারী হওয়ার সুযোগ পেয়েছি এবং এখন ইলেকট্রনিক্স ইঞ্জিনিয়ার হিসাবে কাজ করি।
জটিলতা সহ যে কোনও সিস্টেম এরো এবং বাগ সহ আসে। মাইক্রোকন্ট্রোলার এবং আইসি উভয়েরই তাদের ব্যবহারের ক্ষেত্রগুলির ভিত্তিতে সুবিধা এবং অসুবিধা রয়েছে।
ছোট স্কেল প্রকল্পগুলির জন্য আইসি মাইক্রোকন্ট্রোলারগুলির চেয়ে দ্রুত, সস্তা এবং আরও নির্ভরযোগ্য। লক্ষ লক্ষ ইনপুট, বিশ্লেষণ এবং তুলনা লজিক সহ বৃহত স্কেল প্রকল্পগুলির জন্য, নিশ্চিতভাবে মাইক্রোকন্ট্রোলারদের আইসি-তে প্রান্ত রয়েছে।
সমস্ত সফ্টওয়্যার এক পর্যায়ে ব্যর্থ হয়, এমনকি বাগসলেস কোডটি কোনও রম সংরক্ষণ করে সংরক্ষণের কারণে প্রবর্তিত হয়, এর ফলে লজিক্যাল ত্রুটি (যেমন, মেমরি ফাঁস) পাওয়া যায় যা সনাক্ত করা কঠিন তবে বিপর্যয়ের এক সময় শেষ হয়।
সমালোচনামূলক অ্যাপ্লিকেশনগুলির ব্যর্থতা থেকে বুলেট-প্রুফ সফ্টওয়্যার ভিত্তিক সিস্টেমগুলিতে (যেমন সামরিক গ্রেড বা জীবন রক্ষার ব্যবস্থা যেমন ট্রেন নিয়ন্ত্রণ ব্যবস্থা), "ব্যর্থ নিরাপদ" ধারণাগুলি প্রয়োগ এবং বিকাশ করা হয়।
ব্যতিক্রমী ত্রুটি ঘটলে নিরাপদ সিস্টেমে নিরাপদ অবস্থায় ফিরে যাওয়া vert সাধারণত দুটি প্রসেসর একই কোড চালায়, প্রতিটি নির্দেশাবলীর ফলাফলের তুলনা করে এবং সেগুলি সমান হলে, নির্দেশটি কার্যকর করা হয়। অন্যথায় সিস্টেমটি নিরাপদে স্থিতিতে ফিরতে শারীরিক বৈদ্যুতিক রিলে ব্যবহার করে।
ব্যর্থ নিরাপদ সফ্টওয়্যার ভিত্তিক সিস্টেমগুলি ট্রেন ইন্টারলকিং এবং এটিপি (স্বয়ংক্রিয় ট্রেন সুরক্ষা) সিস্টেমে ব্যবহৃত হয়।
আইসিএস সহ একই জটিল সিস্টেমটি ডিজাইন করা যে কোনও ইঞ্জিনিয়ারের জন্য দুর্দান্ত মাথা ব্যথা। আর সে কারণেই প্রথম দিন থেকেই সফ্টওয়্যারটির নকশা করা হয়েছিল!