প্রকল্প সম্পর্কে

gVisor চলমান অ্যাপ্লিকেশন এবং হোস্ট অপারেটিং সিস্টেমের মধ্যে বিচ্ছিন্নতার একটি শক্তিশালী স্তর প্রদান করে। এটি একটি অ্যাপ্লিকেশন কার্নেল যা একটি লিনাক্স-সদৃশ ইন্টারফেস বাস্তবায়ন করে, কিন্তু লিনাক্সের বিপরীতে এটি মেমরি-নিরাপদ ভাষা Go-তে লেখা এবং ব্যবহারকারী স্পেসে চলে। gVisor-এ একটি ওপেন কন্টেইনার ইনিশিয়েটিভ (OCI) রানটাইম রয়েছে যার নাম runsc যা Docker এবং Kubernetes-এর সাথে একীভূত হয়, যার ফলে স্যান্ডবক্সযুক্ত কন্টেইনার চালানো সহজ হয়। এটি seccomp-bpf-এর মতো একটি সিস্টেম কল ফিল্টার নয়, firejail বা AppArmor-এর মতো লিনাক্স বিচ্ছিন্নতা প্রিমিটিভের উপর একটি র্যাপার নয় এবং এটি একটি ঐতিহ্যবাহী VM নয়। পরিবর্তে, gVisor একটি তৃতীয় পদ্ধতি গ্রহণ করে: এটি VM-এর অনেক নিরাপত্তা সুবিধা প্রদান করে, পাশাপাশি নিয়মিত ব্যবহারকারী স্পেস অ্যাপ্লিকেশনের কম রিসোর্স ফুটপ্রিন্ট, দ্রুত স্টার্টআপ এবং নমনীয়তা বজায় রাখে। এটি অ্যাপ্লিকেশনের জন্য অ্যাক্সেসযোগ্য হোস্ট কার্নেল পৃষ্ঠকে সীমিত করে, পাশাপাশি অ্যাপ্লিকেশনকে প্রত্যাশিত বৈশিষ্ট্যগুলিতে অ্যাক্সেস দেয়, কার্যকরভাবে লিনাক্সের মাধ্যমে লিনাক্স বাস্তবায়ন করে। প্রকল্পটি x86_64 এবং ARM64-এর উপর নির্মিত। বিল্ড নির্দেশাবলী Bazel-এর সাথে একটি মোড়ানো বিল্ড কন্টেইনার ব্যবহার করা, সরাসরি Bazel-এর সাথে বিল্ড করা, ইউনিট এবং স্ট্যান্ডার্ড টেস্ট স্যুট চালানো এবং macOS-এ পরীক্ষা করা কভার করে। স্ট্যান্ডার্ড Go টুলিং-এর সাথে সামঞ্জস্যের জন্য একটি সিন্থেটিক go শাখা রক্ষণাবেক্ষণ করা হয় যাতে বাহ্যিক প্যাকেজগুলি Netstack-এর মাধ্যমে ব্যবহারকারী স্পেস নেটওয়ার্কিং-এর মতো gVisor সাবপ্যাকেজগুলি আমদানি করতে পারে, যদিও সেই শাখা থেকে runsc বিল্ড সমর্থিত নয়। ডকুমেন্টেশন, দ্রুত শুরু নির্দেশিকা এবং প্রযুক্তিগত আর্কিটেকচার gvisor.dev-এ উপলব্ধ। রিপোজিটরিতে গভর্নেন্স, গ্রহণকারী, নিরাপত্তা নীতি এবং অবদান সংক্রান্ত তথ্যও অন্তর্ভুক্ত রয়েছে।