কোনও শেল ছাড়া অপারেটিং সিস্টেমটি কেমন দেখাচ্ছে?


41

বাশ বা কমান্ড ডট কম (উইন্ডোজ এমই অবধি) বা সিএমডি.এক্সই (পরবর্তী সংস্করণগুলিতে) এর মতো একটি শেল একটি ইন্টারফেস সরবরাহ করে যা (অন্যান্য জিনিসের মধ্যে) ব্যবহারকারীর কাছ থেকে আদেশ গ্রহণ করে। শেল চালানোর আগে কোনও অপারেটিং সিস্টেম দেখতে কেমন লাগে? প্রথম শেলটি বিকশিত হওয়ার আগে সিস্টেমগুলি কীভাবে ব্যবহার করা হয়েছিল (উদাহরণস্বরূপ ১৯ 1970০ এর দশকের গোড়ার দিকে ইউনিক্স)? যদি কোনও কম্পিউটার এমনকি কমান্ডও গ্রহণ করতে না পারে (কোনও কমান্ড লাইন নেই), তবে কোনও ব্যবহারকারী কীভাবে এটির সাথে ইন্টারঅ্যাক্ট করতে পারেন? এটি সবচেয়ে বেসিক ইন্টারফেস কি? আমি কি এই ইন্টারফেসটি টার্মিনাল এমুলেটরটিতে চালাতে পারি বা শেলের পিছনে যাওয়ার কোনও উপায় নেই?



2
@ রামহাউন্ড অবশ্যই আপনি একটি কমান্ড লাইন ছাড়াই কোনও সিস্টেমের সাথে আলাপচারিতা করতে পারেন। কেউ পুরো সপ্তাহে বিভিন্ন ইউআই ডিজাইনের পদ্ধতির গুণাগুণ নিয়ে তর্ক করতে পারে, তবে বক্সের বাইরে কোনও কমান্ড লাইন না থাকা সত্ত্বেও ক্লাসিক ম্যাক ওএসের পাশাপাশি আলতাইয়ের সাথে উভয়ই যোগাযোগ করা সম্ভব হয়েছিল।
একটি সিভিএন

4
সবচেয়ে মৌলিক ইন্টারফেস সম্ভবত PDP11 হিসেবে একটি সুইচ প্যানেল হবে / 04 ইত্যাদি
পোশাকপরিচ্ছদ

1
এটি দেখতে দাবা রাস্পিরিপির
নিকো বার্নস

1
দেখে মনে হচ্ছে গাছটি কোনও বনের মধ্যে পড়ে যাচ্ছেন যার চারপাশে কেউ নেই to
নাথান হাইফিল্ড

উত্তর:


35

শেল চালানোর আগে কোনও অপারেটিং সিস্টেম দেখতে কেমন লাগে?

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

কোনও OS এর মোটেই বাহ্যিক প্রদর্শন থাকতে হবে না - এটি ওএসের জন্য কেবল অন্য একটি ডিভাইস।

প্রথম শেলটি বিকশিত হওয়ার আগে সিস্টেমগুলি কীভাবে ব্যবহার করা হয়েছিল (উদাহরণস্বরূপ ১৯ 1970০ এর দশকের গোড়ার দিকে ইউনিক্স)?

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

যদি কোনও কম্পিউটার এমনকি কমান্ডও গ্রহণ করতে না পারে (কোনও কমান্ড লাইন নেই), তবে কোনও ব্যবহারকারী কীভাবে এটির সাথে ইন্টারঅ্যাক্ট করতে পারেন?

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

এটি সবচেয়ে বেসিক ইন্টারফেস কি?

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

আমি কি এই ইন্টারফেসটি টার্মিনাল এমুলেটরটিতে চালাতে পারি বা শেলের পিছনে যাওয়ার কোনও উপায় নেই?

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


4
জেটিএফ ইন্টারফেসটি সাধারণ অপারেশন মোডগুলি বাইপাস করে সমস্ত উপাদানগুলির পরীক্ষা ইন্টারফেসগুলিতে (একটি ডেডিকেটেড কন্ট্রোলারের সাহায্যে) অ্যাক্সেসের অনুমতি দেয়। উদ্ভাসিত পরীক্ষার কার্যকারিতার উপর নির্ভর করে আপনি স্মৃতিগুলি প্রোগ্রাম করতে পারেন, ইনপুট / আউটপুট নিয়ন্ত্রণ করতে পারেন, সিপিইউ শুরু / বন্ধ করতে পারেন বা অভ্যন্তরীণ রেজিস্টারগুলি পড়তে পারেন।
বিশৃঙ্খলা_99

23

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

শেলটি গ্রাফিকাল শেল, কমান্ড লাইন ইন্টারপ্রেটার বা অন্য কিছু হোক না কেন, অপারেটিং সিস্টেমের দ্বারা প্রদত্ত সুবিধাগুলি যেমন কমান্ড পড়ার প্রক্রিয়া, প্রবর্তন প্রক্রিয়াগুলি, I / O পুনর্নির্দেশকরণ ইত্যাদি করতে ব্যবহৃত হয়।

যাইহোক, কোন কারণে আবেদন ঐ সুবিধার ব্যবহার করে এর রয়েছে হতে শেল

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

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


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

1
@ জিনপিন্ডার ভালো পয়েন্ট; আমি স্পষ্ট করে দিয়েছি যে আমি ব্যক্তিগত কম্পিউটারের প্রসঙ্গে বলতে চাইছি।
একটি সিভিএন

11

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

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

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

আপনি কম্পিউটিংয়ের ইতিহাস সম্পর্কে বেশ ভাল উইকিপিডিয়া পৃষ্ঠাটি দেখতে চাইতে পারেন , যদিও এটি ইনপুট / আউটপুট দৃষ্টিভঙ্গিতে খুব বেশি মনোযোগ দেয় না।


6

এটি সম্ভবত একটি ফাঁকা পর্দা হবে।

শেল সম্ভবত নামকরণ করা হয় শেল কারণ এটি কার্নেল কাছাকাছি একটি শেল (কার্নেল অপারেটিং সিস্টেম হচ্ছে) হয়। সুতরাং, এক অর্থে, এটি অপারেটিং সিস্টেমের ইউজার ইন্টারফেস, যাই হোক না কেন ইন্টারফেস।

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


2

একটি historicalতিহাসিক দৃষ্টিভঙ্গি থেকে, আমি অনুমান করব যে পাঞ্চড কার্ডগুলি ছিল ( https://en.wikedia.org/wiki/Punched_card )। একটি কম্পিউটার সিস্টেমের সাথে ইন্টারেক্ট করার জন্য। তবে আমি অনুমান করি এটি আপনার প্রশ্নের পিছনে ফিরে এসেছে।


খোঁচা কার্ডগুলি (হ'ল) একটি ডেটা স্টোরেজ মেকানিজম ছিল, অপারেটিং সিস্টেমের দৃশ্যমান অংশ নয়।
একটি সিভিএন

2

কলেজের পরে আমি প্রথম ওএস ব্যবহার করেছি (1981) একটি প্রাইম মিনিকম্পিউটারের PRIMOS ছিল। এটি একটি সময়-ভাগ করে নেওয়ার অপারেটিং সিস্টেম ছিল এবং এটি বেশ কয়েকটি ব্যবহারকারীকে সমর্থন করেছিল, প্রত্যেকে একটি আরএস 232 কেবলের মাধ্যমে কম্পিউটারের সাথে সংযুক্ত টার্মিনালটি ব্যবহার করে। আপনাকে ব্যবহারকারীর নাম এবং পাসওয়ার্ড দিয়ে টার্মিনালে লগইন করতে হয়েছিল। আপনার টার্মিনাল সেশনটি ছিল এক প্রকারের শেল। আপনি এখনকাল ফাইলগুলি সম্পাদনা করতে, সংকলন করতে, চালাতে পারেন। সমস্ত টার্মিনালগুলির একই ফাইলিং সিস্টেমে অ্যাক্সেস ছিল। মূলত এই টার্মিনালগুলি টাইপরাইটারগুলির চেয়ে বেশি ছিল না - ডাব্লুওয়াইএসআইএসওয়াইওয়াইজি সম্পাদক ছিল না, এমনকি ইমাস একটি স্বপ্ন ছিল।

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

প্রাথমিক কম্পিউটার বুট করার জন্য আপনাকে নির্দেশিকাগুলির একটি বেসিক সেট লোড করতে হবে (এটি কম্পিউটারে একটি সেট ক্রমের মধ্যে টগল করা শারীরিক স্যুইচ জড়িত থাকতে পারে)। এই ক্রমটি একটি দ্বিতীয় ছোট প্রোগ্রাম শুরু করবে, যা টেপ পাঠককে কাজ করতে সক্ষম করে। তারপরে আপনি টেপ রিডারটির মাধ্যমে আরও জটিল সিস্টেমটি লোড করবেন, এটি ডিস্ক ড্রাইভটিকে লাইনে আনতে পারে। আপনি শেল-ওএস ওএসকে এই প্রাথমিক লোডারগুলির মতো হওয়ার কথা ভাবতে পারেন।

আজকাল কম্পিউটারগুলির একই সিকোয়েন্স রয়েছে, সুতরাং আপনি যখন মেশিনটি চালু করবেন তখন এটি তার বিআইওএস লোড করে, যা ডিস্ক, নেটওয়ার্ক কার্ড, ভিডিও কার্ড এবং আরও কিছু শুরু করে, তারপরে বিআইওএস একটি হার্ড ডিস্কে একটি নির্দিষ্ট প্রোগ্রাম সন্ধান করে এবং এটি চালায় (উইন্ডোজে অন্তত). ইউনিক্স অনুরূপ কিছু করে যা এটি প্রগতিশীলভাবে খুব বেসিক মডিউলগুলি দিয়ে শুরু করে এবং এগুলিতে বিল্ডিং প্রম্পটে না আসা পর্যন্ত কার্নেল সেট আপ করে until


1

সংজ্ঞা হিসাবে অপারেটিং সিস্টেমটি বরং অস্পষ্ট। এটি নিজেই কার্নেল? এটি কি কার্নেল এবং সাথে আসা সরঞ্জামগুলি? লিনাক্স কার্নেল তবে জিএনইউ / লিনাক্স হল লিনাক্স কার্নেল এবং জিএনইউ প্রকল্পের সরঞ্জামগুলির উপর ভিত্তি করে অপারেটিং সিস্টেম। শেল এই ধরনের অপারেটিং সিস্টেমের একটি অবিচ্ছেদ্য অঙ্গ।

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

kernel /boot/vmlinuz-2.6.30 root=/dev/sda1 ro init=/bin/fancy

তারপরে প্রোগ্রামটি /bin/fancy"হ্যালো ওয়ার্ল্ড!" প্রিন্ট করবে। এর জন্য আমাদের শেলের দরকার নেই। আপনি যদি অন্য কোনও প্রোগ্রাম শুরু করতে চান তবে কেবল একটি নতুন প্রক্রিয়া তৈরি করে man 2 forkএবং man 2 execveটার্মিনাল ডিভাইস থেকে পড়তে এবং ব্যবহারকারীর ইনপুট গ্রহণ করতে পারে accept তবু শেলের দরকার নেই।

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

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


1

কমান্ড লাইন শেল বা গ্রাফিকাল ইন্টারফেস ছাড়া অপারেটিং সিস্টেমগুলিতে অনেক ধরণের "মুখ" রয়েছে।

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

এখানে শখের শখ হিসাবে কীভাবে আপনি একটি শেল ছাড়াই একটি দরকারী কম্পিউটার তৈরি করতে পারেন তার একটি উচ্চ স্তরের রেসিপি এখানে রয়েছে:

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

শেল ছাড়াই খুব প্রথম দিকে সাধারণ উদ্দেশ্যে কম্পিউটারগুলির মধ্যে ইনপুটটির কিছু উপায় ছিল যেমন পাঞ্চ কার্ডগুলি পড়ার মতো। তবে অবশ্যই, খোঁচা কার্ডগুলি আলাদা করতে হবে: একটি পাঞ্চ কার্ড কম্পিউটারকে কিছু বিশেষ কমান্ড দেয়, না এটি কোনও ফোর্টরান প্রোগ্রামের অংশ? সুতরাং "জব কন্ট্রোল ল্যাঙ্গুয়েজ" বিকাশ করতে হয়েছিল, যা ডি-ফ্যাক্টো কমান্ড লাইন।

খোঁচা কার্ড এবং জব নিয়ন্ত্রণের ভাষাগুলির আগে, প্রোগ্রামারগুলিকে মেশিনে বাইনারি কোড খাওয়ানোর জন্য সুইচগুলি টগল করতে হয়েছিল। আপনি পুরানো-টাইমারদের কাছ থেকে গল্প শুনে থাকতে পারেন যাদের বুটস্ট্র্যাপ শুরু করতে নির্দেশ ক্রমটি "টগল" করতে হয়েছিল। এটি আজও এক উপায়ে করা হয়েছে: এমন ডিভাইসগুলি এখনও রয়েছে যার মধ্যে জাম্পার বা ডিআইপি সুইচ রয়েছে এবং ফার্মওয়্যারের সেটিংসের তুলনায় এগুলির কিছু সুবিধা রয়েছে।


0

প্রথম কম্পিউটারটি আমি আটকে ছিলাম 1977 সালে সিমেন্স 305, আমি ফোরট্রান চতুর্থটি শিখছিলাম। কাগজে কমান্ড চালাতে এবং ডায়গনিস্টিক বার্তা প্রিন্ট করার জন্য এটিতে একটি টাইপরাইটার ছিল, একটি পাঞ্চকার্ড পাঠক, পাঞ্চ টেপ রিডার / লেখক এবং একটি প্রিন্টার। 40 এমবি অপসারণযোগ্য হার্ডডিস্ক, 16 ইঞ্চি বা আরও ভুলে যাবেন না। সুতরাং এটি ইতিমধ্যে একটি শেল ছিল, এবং ইন্টারফেস টাইপরাইটার ছিল।


0

আমার মনে আছে 1970 এর দশকে ফিরে কমান্ড শেলের সমতুল্য হিসাবে একটি ডিবাগার এবং পাঠ্য সম্পাদক (ডিডিটি এবং ইম্যাকস) চালানো। সুতরাং যদি আপনি প্রোগ্রামটি সম্পাদন করে এমন কোনও ডিবাগারের কাছে এসেল এর মাধ্যমে কার্যকর করা অন্য কোনও প্রোগ্রামের সাথে কনসোল মোডে ইমাক্স চালান, আপনার কাছে একটি ঘনিষ্ঠ অভিজ্ঞতা হবে।

নোট করুন যে ইমাক্সের একটি সম্পূর্ণ লিস্প পরিবেশ রয়েছে, সুতরাং ভাল কমান্ড ইতিহাসের সম্পাদনা এবং একাধিক ভার্চুয়াল টার্মিনাল ছাড়াও আপনার মধ্যে খুব দক্ষ ম্যাক্রো এবং স্ক্রিপ্টিং সুবিধা রয়েছে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.