উইন্ডোজে ইনোটিফাইয়ের মতো কিছু আছে কি?


103

লিনাক্স ওএসের সাহায্যে অয়নোটিফাই সাবসিস্টেম রয়েছে যা ফাইল সিস্টেমে পরিবর্তনের প্রয়োগ সম্পর্কে অবহিত করে।

যাইহোক, আমি মূলত উইন্ডোজ ব্যবহারকারী, তাই আমি ভাবছিলাম যে ফাইলসিস্টেমের পরিবর্তনগুলি নিরীক্ষণ করার মতো কোনও উপায় আছে কিনা?


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

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

উত্তর:



42

আপনি যদি নেট ব্যবহার করেন তবে ব্যবহার করুন FileSystemWatcher। এখানে আরও তথ্য: http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx

আপনি ব্যবহার করেন, তাহলে সি , ব্যবহার FindFirstChangeNotification, FindNextChangeNotification, ReadDirectoryChangesW। এখানে আরও তথ্য: http://msdn.microsoft.com/en-us/library/aa365261(VS.85).aspx

উপর ওএসএক্স , প্রাসঙ্গিক এপিআই fseventsAPI।

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


6
আপনি কি দয়া করে "ইনোটিফাইয়ের জন্য প্রবণতার ক্ষেত্রে প্রশ্নবিদ্ধ নির্ভরযোগ্যতা?"
ফারাউন

18
যদি কোনও fs প্রহরী এপিআইয়ের কোনও গ্রাহক ইভেন্টগুলি পড়ার ক্ষেত্রে ধীরে ধীরে কিছু অন্যান্য প্রক্রিয়া তৈরি করার সময় হয় তবে কার্নেলটিকে অন্য (সম্ভবত উচ্চতর অগ্রাধিকার) প্রক্রিয়ায় ফাইল সিস্টেম পরিবর্তন করতে হবে, বা বাফারের সীমাহীন বৃদ্ধির জন্য অনুমতি দেওয়া উচিত। ইনোটাইফাইয়ের বাফার গভীরতা (ম্যান পেজে ডকুমেন্ট হিসাবে) / proc / sys / fs / inotify / max_queued_events দ্বারা নিয়ন্ত্রিত হয়। এর বাইরে, আপনি একটি IN_Q_OVERFLOW বিজ্ঞপ্তি পাবেন - এটি ভাল তবে আপনি এখনও এমন পরিস্থিতিতে রয়ে গেছেন যেখানে আপনাকে সময়ে সময়ে পুনরায় উদ্ধার করতে হবে।
blucz

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

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


11

মাইক্রোসফ্ট থেকে জেএনটিফাই বা ফাইলমোন


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

4
FileMon এখন ProcessMonitor হয় technet.microsoft.com/en-us/sysinternals/bb896645
MECU

10

কিছুটা দেরি হলেও ...

উইন্ডোজ ওএসএক্স ইভেন্টগুলির মতো একটি সুবিধা রয়েছে যার মাধ্যমে আপনি কোনও অ্যাপ চালনা না করে ইভেন্টগুলি পর্যবেক্ষণ করতে পারেন। উইন্ডোজ ইউএসএন জার্নাল সমস্ত ফাইলের পরিবর্তনের উপর নজর রাখে। জেফ্রি রিখর (অ্যাডভান্সড উইন্ডোজ লেখক) এমএসডিএন জার্নালের জন্য কাজের নমুনা সহ একটি ভয়ঙ্কর নিবন্ধ লিখেছিলেন । আপডেট : এমএসজে আর এমএসে আর অনলাইনে নেই বলে আর্কাইভ.org থেকে নিবন্ধ এখন

ইউএসএন চেঞ্জ জার্নালের জন্য এমএসডিএন ডকুমেন্টেশন।

ইউএসএন চেঞ্জ জার্নালগুলি সম্ভবত আপনি ব্যাকআপ সরঞ্জাম বা সূচকগুলির মতো অ্যাপ্লিকেশনগুলি তৈরি করছেন যা পুরো খণ্ডগুলি পর্যবেক্ষণ করতে হবে probably


ইউএসএন জার্নাল কি কোনও আলাদা, এর উপর নির্ভর করে না FileSystemWatcher| এর বগি আচরণ এড়ায় FindFirstChangeNotification ফিলিপ ব্র্যান্ডনহোমসের কথা বলছিল ?
n611x007

4
আমি এটি নিয়ে কাজ করার পরে এটি হয়ে গেছে, তবে এটি ফাইলসিস্টেমওয়াটার বা ফাইন্ডফ্রাস্টচেনজ নোটিকেশন ব্যবহার করে না। আমি জেফারি রিখটারের উদাহরণগুলির উপর ভিত্তি করে গো তে একটি উইন্ডোজ ইভেন্ট প্রহরী লেখা শুরু করেছি। পরীক্ষা আমি বিট থেকে, শিলা কঠিন, এবং কিছুই, OS X এর সারকথা মধ্যে fsevents অনুরূপ ব্যার্থ এখানে: gist.github.com/pkrnjevic/7219861
পিটার Krnjevic

@ পিটারক্রেঞ্জিয়েভিক আপনি কি জেফরি রিখটারের নিবন্ধটির লিঙ্কটি আপডেট করতে পারবেন?
সাউথার

@ সাউসার, এমএস বিট্রটের কারণে নিবন্ধটি এখন আর্কাইভ.org থেকে লিঙ্ক হয়েছে।
পিটার ক্র্নজেভিক

3

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

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


এই 'গতি' / 'রেস' / 'ওভারফ্লো' -র মতো সমস্যা সমাধানের জন্য কীভাবে ভূমিকা কীভাবে ডিজাইন করা যায় সে সম্পর্কে ভাবতে ভাবতে, কার্নেলগুলি এটি কীভাবে করেছে myself মজাদার. এই জিনিসটি নেটওয়ার্কিং এবং লগিংয়ের সাথেও ঘটে। এই সমস্যার কোনও নাম আছে কি?
n611x007

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

হাহাহা .. হ্যাঁ .. এটির নাম ইচ্ছাকৃত ক্লাস্টার ক্লডেজ যাতে মাইক্রোসফ্টের ফাইল সিস্টেমটি ইচ্ছাকৃতভাবে দেখা যায় না। সুরক্ষার উদ্বেগের কারণে এটি একটি বাগ ফেলেছিল।
ফিলিপ ব্র্যান্ডন হোমস

1

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


এটি কেবলমাত্র এনটিএফএস ফাইল সিস্টেমে উপলভ্য, তবে FAT16, FAT32 বা এমনকি নতুন এক্সএফএটি নয়।
মাস্তাতেটা

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