Що таке пісочниця?


118

Я прочитав статтю у Вікіпедії , але не дуже впевнений, що це означає, і наскільки це схоже на контроль версій .

Було б корисно, якби хтось міг пояснити дуже просто, що таке пісочниця.

Відповіді:


266

введіть тут опис зображення

Пісочниця або пісочниця є низькою, широким контейнером або дрібної депресією заповнений піском , в якому можуть грати діти. Багато власників будинків з дітьми будують пісковики на своїх подвір’ях, тому що, на відміну від значного обладнання дитячих майданчиків, їх можна легко та дешево побудувати. "Пісочниця" може також позначати шахту піску з відкритою ямою.

Що ж, програмна пісочниця не відрізняється від пісочниці, побудованої для гри дитини. Надаючи дитині пісочницю, ми імітуємо оточення реального ігрового майданчика (іншими словами і isolated environment), але з обмеженнями того, що дитина може робити. Тому що ми не хочемо, щоб дитина заразилася, або ми не хочемо, щоб він завдав неприємностей іншим. :) У чому причина завжди, ми просто хочемо обмежити те, що може зробити дитина Security Reasons.

Тепер, підійшовши до нашої програмної програми, ми дозволяємо виконувати (відтворювати) будь-яке програмне забезпечення (дочірнє), але з деякими обмеженнями щодо того, що він може зробити. Ми можемо відчувати себе безпечно та безпечно щодо того, що може виконувати програмне забезпечення.

Ви бачили та використовували антивірусне програмне забезпечення. Правильно? Це також своєрідна пісочниця. Він встановлює обмеження щодо того, що може робити будь-яка програма. Коли виявлена ​​зловмисна активність, вона зупиняється та повідомляє користувача, що "ця програма намагається отримати доступ до ресурсів так і так. Хочете дозволити?".

Завантажте програму з назвою sandboxie, і ви можете отримати досвід роботи з пісочницею. За допомогою цієї програми ви можете запускати будь-яку програму в контрольованому середовищі.

Червоні стрілки вказують на зміни, що надходять із запущеної програми у ваш комп'ютер. Поле з написом Жорсткий диск (без пісочниці) відображає зміни програми, що працює нормально. Поле з написом "Жорсткий диск" (з пісочницею) відображає зміни програми, що працює під Sandboxie. Анімація ілюструє, що Sandboxie здатний перехоплювати зміни та ізолювати їх усередині пісочниці, зображеної як жовтий прямокутник. Це також ілюструє, що групування змін разом дозволяє легко видалити їх усі одночасно.

введіть тут опис зображення

Тепер, з точки зору програміста, пісочниця обмежує API, дозволений для програми. У прикладі антивірусу ми обмежуємо системний виклик (API операційної системи).

Іншим прикладом може бути онлайн-кодування арен, таких як топкодер. Ви подаєте код (програму), але він працює на сервері. Для safetyсервера вони повинні обмежувати рівень доступу API програми. Іншими словами, їм потрібно створити пісочницю і запустити вашу програму всередині неї.

Якщо у вас є належний сандокс, ви навіть можете запустити файл, заражений вірусом, і зупинити всю шкідливу активність вірусу і переконатися в тому, що він намагається зробити. Насправді це буде першим кроком дослідника антивірусу.


31

Таке визначення пісочниць в основному означає наявність тестових середовищ (інтеграція розробників, забезпечення якості, етап тощо). Ці тестові середовища імітують виробництво, але вони не поділяють жодного з виробничих ресурсів. Вони мають повністю окремі сервери, черги, бази даних та інші ресурси.

Частіше я бачив, як пісочниця посилається на щось на зразок віртуальної машини - виділення деякого запущеного коду на машині, щоб він не впливав на базову систему.


1
Гаразд, в основному пісочниця полягає в тестуванні програмного забезпечення в контрольованому середовищі перед тим, як поставити його на практичне використання. правильно? btw, чому його називають "пісочницею"?
Лазер

>> чому його називають "пісочницею" @eSKay, оскільки люди грають із програмним забезпеченням / обладнанням, як діти, у своїх пісочницях ( thefreedictionary.com/sandbox - визначення №3).
Дармен Аманбаєв

Отже, в чому різниця між пісочницею та інсценуванням?
Мохаммед Джамал Даштакі

15

Для конкретного прикладу: припустимо, у вас є програма, яка займається переказами грошей. У виробничому середовищі обмінюються реальні гроші. У середовищі пісочниці все працює точно так само, але гроші - віртуальні. Це для тестування.

Paypal пропонує, наприклад, таке середовище з пісочницею.


6

Для «пісочниці» в розробці програмного забезпечення це означає розвиватись, не заважаючи оточуючим оточуючим.

Це не схоже на контроль версій. Але деякі методи контролю версій (як розгалуження) можуть допомогти зробити пісочниці.


0

Частіше ми посилаємося на іншу пісочницю .


У будь-якому разі пісочниця часто означає ізольоване середовище . Ви можете робити все, що завгодно, в пісочниці, але її ефект не поширюватиметься поза пісочницею. Наприклад, у розробці програмного забезпечення це означає, що вам не потрібно возитися з речами, /usr/libщоб перевірити свою бібліотеку тощо.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.