আমি এ বিষয়ে বিশেষজ্ঞ নই, তবে কী চলছে তা বোঝার চেষ্টা করার জন্য আমি কিছুটা পড়েছি।
আমি বলব "বিভ্রান্তি এ থেকে উদ্ভূত হয় যে:
- এই ধারণার মধ্যে সম্পর্ক জটিল এবং
- সময়ের সাথে সাথে পরিবর্তন হয়েছে
- অ্যাপল উভয়ই প্রোগ্রাম স্তরের এপিআই প্রয়োগ করেছে এবং এলএস বা সিপির মতো সরঞ্জাম এমন একটি ধারণা যাতে ধারণাগুলির মধ্যে অনেক পার্থক্য আড়াল করে। "
এআইইউআই, এইচএফএস + ক্যাটালগ ফাইলটিতে ক্যাটালগ ফাইল রেকর্ডস রয়েছে (অন্যান্য জিনিসের মধ্যে)। ক্যাটালগ ফাইল রেকর্ডে ফাইল সম্পর্কিত সাধারণ ধরণের তথ্য রয়েছে যেমন তৈরির তারিখ, অ্যাক্সেসের তারিখ ইত্যাদি The ক্যাটালগ ফাইল রেকর্ডে দুটি কাঠামো রয়েছে যা ডেটা কাঁটাচামানের অবস্থান এবং সংস্থান সম্পর্কে তথ্য দেয় resource
এআইইউআই, এইচএফএস + এছাড়াও (উইকিপিডিয়া এইচএফএস + থেকে অনুলিপি করেছে) একটি "অ্যাট্রিবিউট ফাইল [যা] এইচএফএস প্লাসের একটি নতুন বি-ট্রি যা এইচএফএসে সম্পর্কিত কাঠামো নেই। অ্যাট্রিবিউটস ফাইলটি তিনটি বিভিন্ন ধরণের 4 কেবি রেকর্ড সংরক্ষণ করতে পারে: ইনলাইন ডেটা অ্যাট্রিবিউট রেকর্ডস, কাঁটাচামচ ডেটা অ্যাট্রিবিউট রেকর্ডস এবং এক্সটেনশন অ্যাট্রিবিউট রেকর্ডস ইনলাইন ডেটা অ্যাট্রিবিউট রেকর্ডে এমন ছোট ছোট অ্যাট্রিবিউটস সংরক্ষণ করে যা ফোরক ডাটা অ্যাট্রিবিউট রেকর্ডে সর্বাধিক আটটি এক্সেন্টেন্টের উল্লেখ থাকে যা বৃহত্তর বৈশিষ্ট্য ধারণ করতে পারে। এক্সটেনশন বৈশিষ্ট্যগুলি যখন এর আট মাত্রার রেকর্ড ইতিমধ্যে ব্যবহৃত হয় তখন একটি ফর্ক ডেটা অ্যাট্রিবিউট রেকর্ড প্রসারিত করতে ব্যবহৃত হয়। "
এআইইউআই, অ্যাট্রিবিউট ফাইলগুলিতে (বা রেফারেন্স করা) স্টোর করা ডেটা (ইনলাইন, ফর্ক ডেটা বা এক্সটেনশন অ্যাট্রিবিউট যাই হোক না কেন) এক্সটেন্ডেড অ্যাট্রিবিউট হিসাবে পরিচিত।
সেগুলি ডেটা স্ট্রাকচার, তাই তারা কীভাবে ব্যবহার করা হয়?
এআইইউআই, অপারেটিং সিস্টেমের প্রাথমিক সংস্করণগুলি (সম্ভবত 10.4 টাইগারের আগের সংস্করণগুলি, যা জন সেরাকাসা মনে করেন যে এই অঞ্চলে কিছু বড় পরিবর্তন হয়েছে), ক্যাটালগ ফাইলটি থেকে ডেটা ফর্ক এবং রিসোর্স ফর্ককে নির্দেশ করে।
এআইআইআইআই, একবার আমরা 10.4 বাঘের কাছে পৌঁছে গেলে সমস্ত ধরণের ডেটা সঞ্চয় করতে অ্যাট্রিবিউট ফাইলটি ব্যাপকভাবে ব্যবহৃত হয়।
এটি সম্ভব (তবে আমি জানি না) যে 10.4 এবং তার পরে, কোনও রিসোর্স ফর্কগুলি অ্যাট্রিবিউট ফাইল থেকে দেখানো হয়। অর্থাত আপনার প্রথম প্রশ্নের উত্তরে আমি বলব নামী কাঁটাচামচগুলি বর্ধিত বৈশিষ্ট্য, যদি না তারা রিসোর্স ফর্ক, এবং রিসোর্স ফর্কটি ক্যাটালগ ফাইল থেকে উল্লেখ করা হয়।
জিনিসগুলি কীভাবে বাস্তবায়িত হয় তা জানার ক্ষেত্রে সমস্যাটি হ'ল পশ্চাদপদ সামঞ্জস্যতা রক্ষা করার জন্য এবং সম্ভবত বিশেষত ম্যাক ওএসের একটি সংস্করণ দ্বারা অন্য সংস্করণ থেকে লিখিত ফাইল সিস্টেমগুলিতে অ্যাক্সেস সমর্থন করার জন্য, বিভিন্ন জিনিস এবং জিনিসের মিশ্রণকে স্বচ্ছভাবে সমর্থন করা প্রয়োজন।
আমরা সাধারণ টার্মিনাল কমান্ড লাইন সরঞ্জামগুলি থেকে বলতে পারি না যেখানে ডেটা আসলে রাখা হচ্ছে।
সুতরাং, অ্যাক্সেস থেকে rsrc
সম্ভবত পরামর্শ দেওয়া যায় যে ক্যাটালগ ফাইলটিতে রিসোর্স ফর্ক অ্যাক্সেস করা হচ্ছে।
$ ls -l Icon^M/rsrc
-rwxr-xr-x 1 root admin 486 23 Jul 2004 Icon?/rsrc
যাইহোক, আমরা জানি যে সিন্টেক্সটি দেখতে দেখতে Icon^M
ডিরেক্টরিটির নীচে থাকা কোনও ফাইল অ্যাক্সেস করা হচ্ছে, তবে এটি সত্যিকারের ক্ষেত্রে নয়, কারণ
$ ls -lR Icon^M
-rwxr-xr-x@ 1 root admin 0 23 Jul 2004 Icon?
সুতরাং অ্যাপল রিসোর্স ফর্কসের জন্য একটি বিশেষ কেস বাস্তবায়ন করেছে।
পরিবর্তে আমরা যদি
$ ls -l@
-rwxr-xr-x@ 1 root admin 0 23 Jul 2004 Icon?
com.apple.FinderInfo 32
com.apple.ResourceFork 486
এটি পরামর্শ দেয় যে আমরা অ্যাট্রিবিউট ফাইলটি অ্যাক্সেস করছি। তবে আবার বাস্তবায়নের ls
ক্ষেত্রে রিসোর্স ফর্কসের একটি বিশেষ কেস থাকতে পারে।
জন সেরাকুসা এখানে উল্লেখ করেছেন যে এসিএল তালিকাগুলি 'বর্ধিত বৈশিষ্ট্য' হিসাবে সঞ্চিত রয়েছে, তবে বিশেষভাবে মুখোশযুক্ত তাই সেগুলিতে প্রদর্শিত হয়নি xattr
। সুতরাং আবার xattr বাস্তবায়নে বিশেষ কেস প্রসেসিং রয়েছে।
(দ্রষ্টব্য যে এই বিশেষ কেস প্রসেসিংটি সেই সরঞ্জামের কোডে বা সরঞ্জামগুলি অ্যাক্সেস করে এমন অন্তর্নিহিত APIগুলির কোডে থাকতে পারে))
গ্রেগডাব্লু, আপনি যদি এটি দেখতে পান তবে আমি সঠিক লাইন বরাবর থাকি কিনা, বা নিরাশ হয়ে বিভ্রান্ত হয়েছি কিনা সে সম্পর্কে আরও বিশেষজ্ঞের মতামত পাওয়া ভাল লাগবে।