BusyBox - BusyBox

BusyBox
BusyBoxLogo.png
Busybox DG834Gt.PNG
Түпнұсқа автор (лар)Брюс Перенс
ӘзірлеушілерЭрик Андерсен,[1] Роб Лэндли,[2] Денис Власенко[3] және басқалар
Бастапқы шығарылым1999 жылғы 4 қараша; 21 жыл бұрын (1999-11-04)[4]
Тұрақты шығарылым1.31.1 (25.10.2019); 12 ай бұрын (2019-10-25)) [±][5]
Репозиторий Мұны Wikidata-да өңдеңіз
ЖазылғанC
Операциялық жүйеUnix тәрізді
Өлшемі2,1 МБ («tar.bz2» сығылған)
Түрі
ЛицензияGPLv2[6]
Веб-сайтwww.boksbox.желі

BusyBox Бұл бағдарламалық жасақтама жиынтығы бұл бірнеше ұсынады Unix утилиталары жалғыз орындалатын файл. Ол әртүрлі жұмыс істейді POSIX сияқты орталар Linux, Android,[7] және FreeBSD,[8] ол ұсынатын көптеген құралдар Linux ядросы ұсынатын интерфейстермен жұмыс істеуге арналған. Ол өте шектеулі ресурстары бар ендірілген операциялық жүйелер үшін жасалған. Авторлар оны «The Швейцария армиясының пышағы туралы Кіріктірілген Linux ",[9] өйткені бірыңғай орындалатын 300-ден астам жалпы командалардың негізгі функцияларын ауыстырады. Ол шығарылды ақысыз бағдарламалық жасақтама ережелеріне сәйкес GNU жалпыға ортақ лицензиясы, 2-нұсқа.[6]

Тарих

Шығу тегі

Бастапқыда жазған Брюс Перенс 1995 ж. және 1996 жылы оның мақсатты қолданылуы үшін толық деп жарияланды,[10] BusyBox бастапқыда толық жиынтығын қоюды мақсат етті жүктелетін бірыңғай жүйе дискета ол құтқару дискісі ретінде де, ан ретінде қызмет ете алады орнатушы үшін Дебиан тарату. Сол уақыттан бастап, ол болып өзгертілді іс жүзінде стандарт өзек пайдаланушы кеңістігі енгізілген Linux құрылғыларына арналған құралдар жиынтығы және Linux тарату қондырғылары. Linux-тің әр орындалуы бірнеше килобайт үстеме шығындарды қажет ететіндіктен, BusyBox бағдарламасы екі жүзден астам бағдарламаны біріктірсе, көбінесе дискілік кеңістікті және жүйелік жадыны үнемдейді.

BusyBox-ті Энрике Занарди басқарды және ол Debian қажеттіліктеріне бағытталды жүктеу дискеттері орнату жүйесі 1998 жылдың басына дейін, Dave Cinege оны қабылдағанға дейін Linux Router жобасы (LRP). Cinege бірнеше толықтырулар енгізіп, модульдендірілген құру ортасын құрды және BusyBox-тың назарын жалпы жоғары деңгейге ауыстырды ендірілген жүйелер. 1999 жылы LRP дамуы баяулаған кезде Эрик Андерсен, содан кейін Lineo, Inc., жобаны өз мойнына алып, 1999 жылдың желтоқсанынан 2006 жылдың наурызына дейін ресми қызмет көрсетуші болды. Осы уақыт ішінде Linux ендірілген нарық өсіп, жарылыс болды, және BusyBox қолданушы базасын да, функционалдылығын да кеңейте түсті. Роб Лэндли 2005 жылы 2006 жылдың соңына дейін күтім жасаушы болды, содан кейін Денис Власенко қазіргі техникалық қызмет көрсетуді бастады.

GPLv2 / GPLv3 қайшылықтары

2006 жылдың қыркүйегінде, жобаны басқарушы Роб Лэндли мен арасындағы пікірталастар мен қайшылықтардан кейін Брюс Перенс,[11] BusyBox[12][13] жоба GNU Public License 3 нұсқасын қабылдауға қарсы шешім қабылдады (GPLv3 ); BusyBox лицензиясы GPL нұсқасы 2 болып анықталды (GPLv2 ) тек.[14]

2006 жылдың қазан айынан бастап Денис Власенко BusyBox-ті басқаруды Роб Лэндлиден бастады, ол басталды Ойыншықтар қорабы, сондай-ақ лицензия жанжалдары нәтижесінде.[12][15]

GPL сот ісі

2007 жылдың аяғында BusyBox сонымен бірге лицензия шарттарын (GPL) бұзуды белсенді түрде қудалағаны үшін танымал болды Нью-Йорктің Оңтүстік округі үшін Америка Құрама Штаттарының аудандық соты.[16]

BusyBox-ті кірістірілген құрылғыда пайдалануға қатысты GPL-дің бұзылуы бойынша АҚШ-тың алғашқы сот ісі болды. Сот ісі,[16] 07-CV-8205 ісі 2007 жылдың 20 қыркүйегінде Бағдарламалық жасақтама бостандығы заң орталығы (SFLC) Андерсен мен Лэндли атынан қарсы Муссондық мультимедиа Inc., BusyBox коды а ​​табылғаннан кейін микробағдарлама жаңарту және компаниямен байланысу әрекеттері нәтижесіз болған сияқты. Іс қайнар көзінің муссондық нұсқасын шығарумен және Андерсен мен Лэндлиге белгісіз ақша төлеумен шешілді.[17]

2007 жылдың 21 қарашасында SFLC Андерсен мен Лэндлидің атынан тағы екі компанияға қарсы екі бірдей сот ісін қозғады, Xterasys (іс 07-CV-10455) және Жоғары табысты антенналар (іс 07-CV-10456).[18][19] Xterasys ісі пайдаланылған бастапқы кодты және жария етілмеген төлемді шығару үшін 17 желтоқсанда шешілді,[20] және лицензияның белсенді сәйкестігі және жария етілмеген төлем үшін 2008 жылғы 6 наурызда жоғары табысты антенналар туралы іс.[21] 2007 жылы 7 желтоқсанда іс қозғалды Verizon Communications оның Actiontec маршрутизаторларына арналған микробағдарламаның таралуы;[22][23] бұл іс 2008 жылдың 17 наурызында лицензияның сәйкестігі, болашақта ақысыз бағдарламалық жасақтама лицензиясына сәйкестігін қадағалайтын офицер тағайындау және белгісіз соманы төлеу шартымен шешілді.[24] Одан әрі костюмдер 2008 жылы 9 маусымда қарсы алынды Bell микроөнімдері (іс 08-CV-5270) және SuperMicro (іс 08-CV-5269),[25] Super Micro ісі 2008 жылдың 23 шілдесінде шешілді.[26] BusyBox және Bell Microproducts 17 қазанда соттан тыс шешім қабылдады.[27]

2009 жылдың 14 желтоқсанында он төрт айыпталушының атын қоса жаңа сот ісі басталды Үздік сатып алу, JVC, Samsung және басқалар.[28][29][30]2010 жылдың ақпанында Samsung GPLv2 аясында LN52A650 теледидарлық бағдарламалық жасақтамасын шығарды,[31] кейінірек сілтеме ретінде қолданылған SamyGO қоғамдастық жобасы.[32]

Шамамен 2010 жылдың 3 тамызында BusyBox Вестингауздан үш мың шығынды және адвокаттардың шығындары мен алымдарының 47 865 АҚШ долларын құрайтын сот шешімі бойынша сот шешімін жеңіп алды және «талап етілген көптеген теледидарларды» сот процесінде бұзушы жабдық ретінде иеленді Бағдарламалық жасақтаманың еркіндігін сақтау v. Best Buy және басқалар, жоғарыдағы параграфта көрсетілген GPL бұзушылық туралы іс.[33]

Бұл іс-шараларға басқа авторлар, соның ішінде түпнұсқа авторы Брюс Перенс және асыраушысы Дэйв Цинеж қатысқан жоқ. 2009 жылдың 15 желтоқсанында Перенс құқықтық жағдайдың кейбір аспектілеріне өзінің бақытсыздығын білдіретін мәлімдеме жариялады, атап айтқанда қазіргі BusyBox әзірлеушілері «басқа Busybox жасаушыларының авторлық құқық туралы мәлімдемелерін алып тастаған сияқты және олар өзгерген сияқты» лицензия көшірмелері ».[34]

Ерекшеліктер

BusyBox-ты екі жүзден астам утилиталар жиынтығын қамтамасыз ету үшін теңшеуге болады. Ол көрсетілген бағдарламалардың көпшілігін қамтамасыз ете алады Бірыңғай Unix сипаттамасы (SUS) және басқа көптеген пайдаланушылар Linux жүйесінде көреді деп күтеді. BusyBox пайдаланылады Альквист қабығы, сонымен қатар A Shell, ash and sh.[35] Реттеудің баламасы - кішігірім «тыныштық» қабығы. Бұрын «Msh» және «кірпік» қол жетімді болды.[36]

Бұл толық жүктеу жүйесі болғандықтан, оны әрі қарай ауыстырады init демон және удев (немесе соңғы күн жүйелік ) деп аталатын өзін пайдалану ішінде іске қосу кезінде және mdev ыстық розетка кезінде.

BusyBox веб-сайты іске асырылған утилиталардың толық тізімін ұсынады.[37]

Бір екілік

Әдеттегі компьютерлік бағдарламалардың жеке бар екілік (орындалатын ) әр қосымшаға арналған файл. BusyBox - бұл көптеген қосымшалардың конгломераты болып табылатын жалғыз екілік, олардың әрқайсысына әр түрлі аттармен жалғыз BusyBox екілік нөмірін шақыру арқылы қол жеткізуге болады ( символдық сілтеме немесе қатты сілтеме әр түрлі атау үшін)[38] тиісті дәлелдермен нақты тәртіпте.

BusyBox жалғыз екілік тәсілден пайда алады, өйткені ол орындалатын файл форматымен қосымша шығындарды азайтады (әдетте ELF және бұл кодты бірнеше қосымшалар арасында а талап етпестен бөлуге мүмкіндік береді кітапхана. Бұл техника ұсынылғанға ұқсас қытырлақ[39] пәрмен FreeBSD, айырмашылық BusyBox утилиталардың жеңілдетілген нұсқаларын ұсынады (мысалы, an лс файлды сұрыптау мүмкіндігі жоқ команда), ал барлық функционалды бағдарламалардың жиынтығы жұмыс істейтін болса, функционалды нұсқаларын ұсынады.

Жалпыға ортақ кодты бөлісу, өлшемді оңтайландыруды ескере отырып жазылған процедуралармен бірге BusyBox жүйесін BusyBox-қа ауыстырылған утилиттердің сәйкес толық нұсқаларымен салынған жүйеге қарағанда сақтау орнын әлдеқайда аз етуге мәжбүр етеді. Зерттеу[40] бұл салыстырылды GNU, BusyBox, асмутилдер және Перл стандартты Unix командаларының орындалуы кейбір жағдайларда BusyBox-тың басқа енгізулерге қарағанда жылдамырақ жұмыс істей алатындығын көрсетті, бірақ әрқашан емес.

Командалар

Ресми BusyBox құжаттамасында қол жетімді командалардың шолуы және олардың командалық жолының нұсқалары келтірілген.

BusyBox командаларының тізімі[41]

Мысалдар

BusyBox құрамына кіретін бағдарламаларды жай ғана олардың атын BusyBox орындалатын бағдарламасына аргумент ретінде қосу арқылы іске қосуға болады:

/ bin / busybox ls

Көбінесе команданың қажетті атаулары байланыстырылады (пайдалану арқылы) қиын немесе символдық сілтемелер) BusyBox орындалатынына; BusyBox оқиды argv [0] ол шақырылатын атауды табу үшін және сәйкес команданы орындайды, мысалы жай

/ bin / ls

кейін / bin / ls байланысты / bin / busybox. Бұл жұмыс істейді, өйткені бағдарламаға берілген бірінші аргумент бағдарламалық шақыру үшін қолданылатын атау болып табылады, бұл жағдайда аргумент «/ bin / ls» болады. Busybox оның «аты» «ls» екенін көріп, «ls» бағдарламасы сияқты әрекет етер еді.

Техника және қабылдау

BusyBox-ты бірнеше операциялық жүйелер қолданады ендірілген жүйелер сияқты бөлудің маңызды компоненті болып табылады OpenWrt, Кірістірілген (соның ішінде Yocto жобасы ) және Тамыр. The Өткір Zaurus BusyBox-ты қарапайым үшін қолданады Unix тәрізді жүйенің қабығында орындалатын тапсырмалар.[42]

BusyBox сонымен бірге маңызды компонент болып табылады VMware ESXi.

Ол Android-тағы бірнеше түбірлік қосымшаларға қажет, сондай-ақ кейбір «1 түртіңіз тамыр» шешімдерімен алдын ала орнатылған Kingo Root.

Toybox-қа қатысты дау

Ойыншықтар қорабы 2006 жылдың басында басталды GNU жалпыға ортақ лицензиясы Busybox-тің бұрынғы қызметшісі Роб Лэндлидің GPLv3 / GPLv2 пікірталастарындағы қайшылықтардың нәтижесінде. 2011 жылдың соңында[43] бойынша қайта лицензияланған болатын BSD лицензиясы жоба ұйықтап қалғаннан кейін.[44] 2012 жылдың 11 қаңтарында Тим Берд, а Sony қызметкері BusyBox-қа GNU жалпы қоғамдық лицензиясына жатпайтын балама жасауды ұсынды. Ол ұйықтап жатқан Toybox-қа негізделген деп ұсынды.[45] 2012 жылдың қаңтарында құру ұсынысы BSD лицензияланған GPL лицензияланған BusyBox жобасына балама қатаң сынға ұшырады Мэттью Гаррет үшін жалғыз тиісті құралды алып тастағаны үшін авторлық құқықты қамтамасыз ету туралы Бағдарламалық жасақтаманың еркіндігін сақтау топ.[46] BusyBox негізіндегі сот ісін бастаушы Роб Лэндли бұл әдейі деп жауап берді, өйткені сот процестері оң нәтижеге үміттенбейді және ол оларды тоқтатқысы келді деген қорытындыға келді «мен қай жағынан алсам да жарасымды».[47][48]

Сондай-ақ қараңыз

Әдебиеттер тізімі

  1. ^ «Эрик Андерсеннің үй парағы».
  2. ^ Белсенді жобалар, Роб Лэндлидің веб-сайты
  3. ^ Денис Власенко, BusyBox күтімі
  4. ^ http://www.softwarefreedom.org/resources/2009/busybox-complaint-2009-12-14.pdf[тұрақты өлі сілтеме ]
  5. ^ «1.31.1 хабарландыру». Алынған 2019-12-19.
  6. ^ а б «BusyBox».
  7. ^ BitCubate X «BusyBox Classic».
  8. ^ «FreeBSD портына шолу».
  9. ^ 'Швейцария армиясының ендірілген Linux пышағы' ұраны
  10. ^ https://busybox.net/~landley/forensics.txt
  11. ^ Busybox сот ісі жөніндегі мәлімдеме қосулы Брюс Перенс 'Weblog (2009-12-15, мұрағатталған)
  12. ^ а б корбет (2006-10-01). «Бос емес бос жәшік». lwn.net. Алынған 2015-11-21. BusyBox көптеген ендірілген жүйелерде кездесетіндіктен, ол өзегінің негізін құрайды GPLv3 DRM-ге қарсы пікірсайыс. [...] Нақты нәтижелер, алайда: BusyBox келесі шығарылымнан бастап GPLv2 болады. Әдетте, «немесе кез-келген кейінгі нұсқасын» алып тастау заңдық тұрғыдан қорғалады және тек GPLv2-ге арналған басқа кодтардың бірігуі кез-келген жағдайда шығаруды мәжбүр етеді деп қабылданады.
  13. ^ Лэндли, Роб (2006-09-09). «Re: Move GPLv2 vs v3 fun…». lwn.net. Алынған 2015-11-21. Сабаншы адамның дауын ойлап таппаңыз. BusyBox-ты GPLv3 лицензиялауы пайдасыз, қажетсіз, асқынған және түсініксіз деп санаймын, сонымен қатар оның нақты кемшіліктері бар. 1) пайдасыз: біз GPLv2-ді ешқашан түсірмейміз.
  14. ^ GPL нұсқасы 2 тек BusyBox 1.3.0 үшін. қосулы lwn.net
  15. ^ Лэндли, Роберт (2006-09-30). «Мен қазір шығып жатырмын. Менде біраз уақыт болуы мүмкін». бос жәшік (Тарату тізімі).
  16. ^ а б BusyBox жасаушылары Андерсен мен Лэндлидің атынан SFLC алғашқы рет АҚШ-тағы GPL ережелерін бұзу туралы сот ісін бастады (Бағдарламалық қамтамасыз ету бостандығы заң орталығы 20.09.2007 ж.)
  17. ^ Busybox-Monsoon GPL жағдайында есеп айырысуға қол жеткізілді Мұрағатталды 2008-09-24 сағ Wayback Machine (Брюс Бийфилд, Linux.com, 30.10.2007)
  18. ^ Linux заңды тобы GPL ережелерін бұзғаны үшін сотқа жүгінеді (Мартин ЛаМоника, CNET News.com, 21 қараша, 2007)
  19. ^ «BusyBox жасаушыларының атынан GPL-ді бұзу туралы сот ісінің екінші раунды».
  20. ^ «BusyBox әзірлеушілері мен Xterasys корпорациясы GPL сот ісін шешуге келіседі».
  21. ^ BusyBox әзірлеушілері және жоғары антенналар GPL сот ісін тоқтатуға келіседі (SFLC пресс-релизі)
  22. ^ Ашық ақпарат көзі бар заңды топ BusyBox-қа тағы да шабуыл жасайды, Verizon-мен соттасады Мұрағатталды 2007-12-10 Wayback Machine (Грант Гросс, Computerworld, 2007 жылғы 7 желтоқсан)
  23. ^ «BusyBox әзірлеушілері Verizon байланысына қарсы GPL-ді бұзу туралы сот ісін бастады».
  24. ^ Verizon ашық бағдарламалық жасақтама бойынша сот ісін жүргізеді (Пол МакДугелл, Ақпараттық апта, 2008 ж. 17 наурыз)
  25. ^ SFLC BusyBox жасаушыларының атынан GPL талаптарын бұзу туралы тағы бір сот ісін ұсынады (SFLC пресс-релизі)
  26. ^ BusyBox әзірлеушілері мен Supermicro компаниясы GPL сот ісін тоқтатуға келіседі: Ақ ниетті талқылау нәтижесі авторлық құқықты бұзу туралы істі қараудан басталды (SFLC пресс-релизі)
  27. ^ 2008. Андерсен қарсы Bell Microproducts, Inc., № 08-cv-5270, док. № 16 (С.Д.Н.Ы., 17 қазан, 2008 ж.) (Жұмыстан өз еркімен босату туралы хабарлама)
  28. ^ Джейсон Перлоу (16 желтоқсан, 2009). «Қазіргі заманғы GPL-дегі қамшыдан қалай сақтануға болады». zdnet.com. Алынған 2016-03-24. Егер GPL және басқа еркін және ашық код лицензияларына сәйкестіліктің нақты стандарттары мен процедуралары болған болса, жақында SFLC сот процесі сияқты көпшіліктің қамшылауынан және жазадан аулақ болуға болады.
  29. ^ Best Buy, Samsung, Westinghouse, тағы 11 адам GPL сот ісіне қатысты қосулы cnet.com
  30. ^ Software Freedom Conservancy, Inc. & Эрик Андерсен мырза мен BestBuy, Samung, Westinghouse, JVC, Western Digital, Bosch, Phoebe Micro, Humax, ... (Нью-Йорк, 2009)
  31. ^ Көрнекі дисплей - Ашық көз samsung.com сайтында «Төмендегі сілтемелерді жүктеп алыңыз. Біз GPLv3 және LGPLv3 емес, GPLv2 және LGPLv2.1 қолданамыз. Моделі: LN40A650 / LN52A650 / LN52A750 [...] LN52A750.zip» (мұрағатталған 2010)
  32. ^ Негізгі бет samygo.tv сайтында
  33. ^ Джонс, Памела (2010-08-03). «BusyBox және GPL қайтадан басым болады - 4X жаңартылды». Гроклав. Алынған 2012-09-27.
  34. ^ Брюс Перенс «Busybox сот ісі бойынша мәлімдеме ", perens.com (15 желтоқсан, 2009).
  35. ^ «күл нұсқалары». Архивтелген түпнұсқа 2010-03-10. Алынған 2008-05-15.
  36. ^ «Қабықты конфигурациялау үшін жаңа» таңдау «опциясын қолданыңыз». 2003-08-08. Алынған 2019-04-02. 'Ash' қабығы әдепкі конфигурацияда шамамен 60к қосады және ең көп және боксқа енетін педантикалық тұрғыдан дұрыс қабық болып табылады. Бұл қабық іс жүзінде Debian «сызықша» қабығы (Герберт Сю), ол NetBSD-ден «күл» қабығын (Кеннет Альквист жазған) тасымалдау арқылы жасалған.
  37. ^ BusyBox - Швейцария армиясының енгізілген Linux пышағы
  38. ^ «BusyBox енгізілген Linux жүйелерін жеңілдетеді: шағын ортаға арналған шағын құралдар жиынтығы». IBM. Архивтелген түпнұсқа 2008-12-09 ж.
  39. ^ қытырлақ адам парағы кезінде freebsd.org Мұрағатталды 22 маусым 2007 ж Wayback Machine
  40. ^ Даг Тайер, Кит Миллер (16-17 сәуір, 2004). «Төрт UNIX жинағындағы төрт UNIX бағдарламасы: ашық қайнар көз белгісінде жүйелілік іздеу» (PDF). Орта батыстағы нұсқаулық және есептеу симпозиумының жинағы. Миннесота университеті, Моррис.
  41. ^ «BusyBox командалық анықтамасы». Алынған 2013-02-24.
  42. ^ «Linux on the Road».
  43. ^ Лэндли, Роб. «Лицензияны өзгерту». Toybox сынап қоймасы. Алынған 24 шілде, 2015.
  44. ^ http://landley.net/toybox/
  45. ^ «Busybox ауыстыру жобасы». 2012-01-11. Алынған 2014-03-04.
  46. ^ «Гаррет: GPL-дің орындалуына қарсы тұрақты күрес». LWN.net. 2012-01-31. Алынған 2014-03-04. Мұндағы басты проблема - [Бағдарламалық қамтамасыз ету бостандығын қорғау] Busybox-қа тәуелді болу олардың Busybox кодын қолданатын бұзушыларға ғана бағытталғанын білдіреді. Осы уақытқа дейін бірде-бір ядролық авторлық құқық иелері SFC-ге өздерінің авторлық құқықтарын жүзеге асыруға рұқсат беруді ұсынған жоқ, нәтижесінде сатушылар осы Busybox ауыстыруына ауысқан кезде мәжбүрлеп орындау тоқтатылады.
  47. ^ «Гаррет: GPL-дің орындалуына қарсы тұрақты күрес». LWN.net. 2012-01-31. Алынған 2014-03-04. > Осы сот ісін бірінші кезекте бастаған және қазір осылай істегеніне өте өкінетін бос жәшіктерді басқарушы ретінде, мен сот процестерін өзім қалағандай тоқтатуға құқылымын деп ойлаймын. Олар ешқашан бос жәшік репозиторийіне бір код жолын қосқан емес. Олар бірнеше компанияның Linux дамуын толығымен аяқтап, ендірілген өнімдері үшін Linux-тен тыс операциялық жүйеге ауысуына әкелді, және олар Android-тің «пайдаланушылар кеңістігінде GPL жоқ» саясатының негізін қалады.
  48. ^ Профитт, Брайан (2012-02-02). «GPL-ді қолдану қоғамдастықтың жалындарын туғызады - GPL баланы ваннаның суымен бірге лақтыра ма?. ITworld. Алынған 2015-03-04.

Әрі қарай оқу

Сыртқы сілтемелер