একটি PIF ফাইল কি?
একটি PIF ফাইলে একটি MS-DOS-ভিত্তিক প্রোগ্রাম কীভাবে চালানো উচিত তা নির্ধারণ করতে ব্যবহৃত তথ্য নিয়ে গঠিত। এটি একটি এক্সিকিউটেবল ফাইলের শর্টকাট হিসাবেও ব্যবহার করা যেতে পারে এবং সাধারণত তৈরি হয় যখন ব্যবহারকারী একটি ডস প্রোগ্রামের একটি শর্টকাট তৈরি করে বা একটি প্রোগ্রামের বৈশিষ্ট্য আপডেট করে। মাইক্রোসফ্ট উইন্ডোজ পিআইএফ ফাইলগুলিকে এক্সিকিউটেবল প্রোগ্রাম হিসাবে স্বীকৃতি দেয় এবং এটি অন্যান্য ডস ভিত্তিক প্রোগ্রাম হিসাবে চালানো যেতে পারে। ডস অ্যাপ্লিকেশনের অনুপস্থিতির কারণে PIF ফাইলগুলি সাধারণত সফ্টওয়্যারে ব্যবহৃত হয় না।
PIF ফাইল বিন্যাস
পিআইএফ ফাইলটি মূলত টপভিউ-এর অধীনে চালানোর জন্য প্রয়োজনীয় প্যারামিটারগুলি সংরক্ষণ করে ডেটার মাত্র একটি ব্লক নিয়ে গঠিত। প্রোগ্রামটি শেষ হলে উইন্ডোটি বন্ধ করা উচিত কি না ইত্যাদি সুইচের জন্য, উইন্ডো শিরোনামের ক্ষেত্রের মধ্যে সর্বাধিক এবং সর্বনিম্ন পরিমাণ RAM এবং বিটম্যাপ অন্তর্ভুক্ত থাকে। বিকাশকারীরা সমস্যার সম্মুখীন হয়েছিল যে অতিরিক্ত সুইচগুলি ছিল যা টপভিউতে প্রযোজ্য নয়, যখন সিস্টেমটি উইন্ডোজের অধীনে ব্যবহারের জন্য অভিযোজিত হয়েছিল। ফাইলের শেষে নতুন সুইচগুলিকে অন্তর্ভুক্ত করার পরিবর্তে, তারা ফাইলটিকে একটি ডাটাবেস ফাইল হিসাবে তৈরি করে যাতে যেকোন সংখ্যক এন্ট্রি থাকে। এইভাবে ফাইলটিতে অপারেটিং সিস্টেমের কোন বিভাগটি পড়তে হবে এবং পরবর্তী বিভাগে একটি অফসেট করা উচিত তা বর্ণনা করে শিরোনামের একটি ক্ষেত্র রয়েছে। সিস্টেমগুলি তালিকাটি পড়বে যতক্ষণ না তারা সবচেয়ে উপযুক্ত একটি খুঁজে পায়। অতএব, এই তত্ত্বটি পশ্চাদমুখী সামঞ্জস্যের একটি সমস্যা রেখে গেছে। ফাইলটি শেষ পর্যন্ত পুনরায় সাজানো হয়েছিল প্রথম শিরোনামটি প্রারম্ভিক ডেটার পরে প্রদর্শিত হয়েছিল, যা ফাইলের প্রথম 253 বাইটগুলিকে আগের মতো একই বিন্যাসে রেখেছিল।
PIF উদাহরণ
এখানে একটি পিআইএফ ফাইলের একটি হেক্স উপস্থাপনা আছে:
0000000: 0078 494e 5354 414c 4c20 2020 2020 2020 .xINSTALL
0000010: 2020 2020 2020 2020 2020 2020 2020 2020
0000020: 8002 0000 433a 5c74 656d 705c 7465 6d70 ....C:\temp\temp
0000030: 335c 494e 5354 414c 4c2e 4558 4500 0000 3\INSTALL.EXE...
0000040: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000050: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000060: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000070: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000080: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000090: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00000a0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00000b0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00000c0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00000d0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00000e0: 0000 0000 0000 0100 ff19 5000 0007 0000 ..........P.....
00000f0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000100: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000110: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000120: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000130: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000140: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000150: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000160: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000170: 004d 4943 524f 534f 4654 2050 4946 4558 .MICROSOFT PIFEX
0000180: 0087 0100 0071 0157 494e 444f 5753 2033 .....q.WINDOWS 3
0000190: 3836 2033 2e30 0005 029d 0168 0080 0200 86 3.0.....h....
00001a0: 0064 0032 00ff ff00 00ff ff00 0002 1002 .d.2............
00001b0: 001f 0000 0000 0000 0000 0000 0000 0000 ................
00001c0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00001d0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00001e0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00001f0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000200: 0000 0000 0057 494e 444f 5753 2056 4d4d .....WINDOWS VMM
0000210: 2034 2e30 00ff ff1b 02ac 0100 0000 0000 4.0............
0000220: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000230: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000240: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000250: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000260: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000270: 0000 0050 4946 4d47 522e 444c 4c00 0000 ...PIFMGR.DLL...
0000280: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000290: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00002a0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00002b0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00002c0: 0000 0000 0002 0000 0000 0000 0000 0000 ................
00002d0: 0032 0001 0000 0000 0000 0000 0000 0001 .2..............
00002e0: 0000 0005 0019 0003 00c8 00e8 0302 000a ................
00002f0: 0001 0000 0000 0000 001c 0000 0000 0000 ................
0000300: 0008 000c 0054 6572 6d69 6e61 6c00 0000 .....Terminal...
0000310: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000320: 0000 0000 004c 7563 6964 6120 436f 6e73 .....Lucida Cons
0000330: 6f6c 6500 0000 0000 0000 0000 0000 0000 ole.............
0000340: 0000 0000 0000 0003 0000 0050 0019 0080 ...........P....
0000350: 022c 018c 0267 0116 0000 0001 00ff ffff .,...g..........
0000360: ffff ffff ffae 0626 013a 098d 0200 0000 .......&.:......
0000370: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000380: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0000390: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00003a0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00003b0: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00003c0: 0000 0000 0001 00 .......