Pull to refresh

Comments 67

Сделать бы еще удобный враппер оборачивающий скайп в контейнер типа docker чтобы не давать ему лазить по системе.
Можно от бесправного юзера запускать, как вариант.
В маке есть application firewall но я не осилил.
Интереснейшая штука! Спасибо за ссылки.
Дык, собственно, поставьте докер (или lxc, или просто чрут+смена-юзера-на-не-рут) и поставьте в него скайп. Может, эта статья как-то вам поможет: habrahabr.ru/post/240509
А в маке? Да и судя по статье это уже ооочень непросто.
А зачем вам захотелось спрятать скайп в контейнер? Потому что вы недоверяете проприетарному софту, который может за вами следить? А раз так, то зачем тогда вы юзаете мак?
Зачем впадать в паранойю?

Как вариант, для изоляции некоторого ПО (в данном случае это Skype) от основной системы.
Лично мне спокойнее, когда любое ПО (не обязательно проприетарное, от злющих корпораций, следящих за мной) не может повлиять на стабильность моей системы, не сможет внести туда изменения ЛЮБЫЕ.
Да, с открытым ПО это проще контролировать, но почему бы просто не ГАРАНТИРОВАННО изолировать его?
Открытое ПО проще контролировать — если там есть какая-то дыра в безопасности или существенная ошибка нарушающая стабильность системы, то и самому можно код посмотреть и общественность все это быстро найдет. Вот возьмем например openSSL — библиотека с открытым кодом, все просто и безопасно.
Да я согласен с вами на 100%.

Я просто хотел сказать, что всегда приятно/удобно/спокойно, когда вы можете взять и удалить приложение из системы и ГАРАНТИРОВАННО не затронуть никаких компонентов, не оставить следов использования и т.д.

Хороший пример (возведенный в абсолют) — использование виртуальных машин. Я могу держать свою систему (хост) в чистоте, полностью изолировав ее от влияния.
Вот возьмем например openSSL — библиотека с открытым кодом, все просто и безопасно.

Да я согласен с вами на 100%.

Вы же понимаете, что это был сарказм, да?
Тем не менее, благодаря открытости, уязвимость была разрекламирована и закрыта в считанные дни, а вот например, некотороые закрытые прогаммы (IIS) изобиловали дырами годами, причём на рабочих системах.
Так и Heartbleed только через 3 года нашли опубликовали. Время существования не равно времени выпука заплатки.
Это блин как же топорно оно написано если удлиннением poll интервалов лечится? Или только в idle оно так? А не логировали для интереса чего там Skype изначально в таймаут ставит.
Или может в чем другом дело? Давненько уже было, но у знакомца на ноутбуке долгое время все что общалось с сетью грузило процессор даже в idle, а работая отжирало вообще по самое не хочу. Причем другая (вроде предыдущая) ревизия того же ноута вела себя совсем по другому. Для чистоты эксперемента грузили оба с одного live-cd. Та же картина маслом.
Так вот, вылечилось тогда само после обновления то ли дров для вайфая, то ли kernel когда обновился. И в changelog что-то про то было, за давностью уже и не упомнить.
[зануда on]
Глянул мельком код, у вас в случае APPLE при (timeout->tv_nsec >= MIN_POLL * 1000000) функция что вернет? И потом atoi без проверки на корректность — ну не камильфо как-то (очепятка в env иле чего еще и atoi вернет 0 — при таком таймауте cpu будет отъедать еще круче...)
[зануда off]
Или только в idle оно так?
Быть может, понижает потребление CPU и в разговоре, я не проверял, но в IDLE точно падает.

А не логировали для интереса чего там Skype изначально в таймаут ставит.
От 0 (нет таймаута) до просто маленьких величин, вроде 10-30. Видимо, что-то с архитектурой намудрили.

функция что вернет?
А ничего и не вернет. Спасибо за зоркий глаз, починено.
UFO just landed and posted this here
Код запросто может быть разным для разных ОС (#ifdef'ы всякие, например)
На OS X 10.10 падает.
Если интересно. Осторожно, много текста.
Process:               Skype [3628]
Path:                  /Applications/Skype.app/Contents/MacOS/Skype
Identifier:            Skype
Version:               7.1 (7.1.0.665)
Code Type:             X86-64 (Native)
Parent Process:        zsh [1294]
Responsible:           Terminal [374]
User ID:               501

Date/Time:             2014-10-30 23:07:37.605 -0400
OS Version:            Mac OS X 10.10 (14A389)
Report Version:        11
Anonymous UUID:        1C5CB34E-B9C1-C016-1270-22079286C134


Time Awake Since Boot: 6700 seconds

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       KERN_INVALID_ADDRESS at 0x0000000000000066

VM Regions Near 0x66:
--> 
    __TEXT                 0000000100000000-000000010193a000 [ 25.2M] rwx/rwx SM=COW  /Applications/Skype.app/Contents/MacOS/Skype

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.skype.skype               	0x000000010059fba0 0x100000000 + 5897120
1   com.skype.skype               	0x0000000100583554 0x100000000 + 5780820
2   com.skype.skype               	0x000000010058331b 0x100000000 + 5780251

Thread 0 crashed with X86 Thread State (64-bit):
  rax: 0x0000000000000066  rbx: 0x0000000100000a98  rcx: 0x0000000000000002  rdx: 0x00007fff739f9118
  rdi: 0x0000000000000000  rsi: 0x0000080000000800  rbp: 0x00007fff5fbff280  rsp: 0x00007fff5fbfefa0
   r8: 0x00007fff5fbfeec0   r9: 0x00007fff7250b300  r10: 0x0000000000000090  r11: 0x0000000101e00000
  r12: 0x000000000000000e  r13: 0x0000000100000000  r14: 0x0000000100000020  r15: 0x0000000000000002
  rip: 0x000000010059fba0  rfl: 0x0000000000010246  cr2: 0x0000000000000066
  
Logical CPU:     3
Error Code:      0x00000006
Trap Number:     14


Binary Images:
       0x100000000 -        0x100afefff +com.skype.skype (7.1 - 7.1.0.665) <3ECC09C3-C791-360D-9704-5513EF8BBFD9> /Applications/Skype.app/Contents/MacOS/Skype
       0x101bdd000 -        0x101bddfff +skype-poll-fix.dylib (0) <A1579595-1CFC-3F11-849D-AF34D97C6B8C> /Users/USER/*/skype-poll-fix.dylib
    0x7fff629d2000 -     0x7fff62a08837  dyld (353.2.1) <4696A982-1500-34EC-9777-1EF7A03E2659> /usr/lib/dyld
    0x7fff81c34000 -     0x7fff81ca3fff  com.apple.SearchKit (1.4.0 - 1.4.0) <BFD6D876-36BA-3A3B-9F15-3E2F7DE6E89D> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit
    0x7fff81ca4000 -     0x7fff81cfeff7  com.apple.LanguageModeling (1.0 - 1) <ACA93FE0-A0E3-333E-AE3C-8EB7DE5F362F> /System/Library/PrivateFrameworks/LanguageModeling.framework/Versions/A/LanguageModeling
    0x7fff81cff000 -     0x7fff81cfffff  libOpenScriptingUtil.dylib (162) <EFD79173-A9DA-3AE6-BE15-3948938204A6> /usr/lib/libOpenScriptingUtil.dylib
    0x7fff81f67000 -     0x7fff81f80ff7  com.apple.CFOpenDirectory (10.10 - 187) <0ECA5D80-A045-3A2C-A60C-E1605F3AB6BD> /System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory
    0x7fff82014000 -     0x7fff82015fff  libDiagnosticMessagesClient.dylib (100) <2EE8E436-5CDC-34C5-9959-5BA218D507FB> /usr/lib/libDiagnosticMessagesClient.dylib
    0x7fff82123000 -     0x7fff8214efff  libc++abi.dylib (125) <88A22A0F-87C6-3002-BFBA-AC0F2808B8B9> /usr/lib/libc++abi.dylib
    0x7fff82158000 -     0x7fff822c3ff7  com.apple.audio.toolbox.AudioToolbox (1.12 - 1.12) <5C6DBEB4-F2EA-3262-B9FC-AFB89404C1DA> /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox
    0x7fff822c4000 -     0x7fff822caff7  libsystem_networkextension.dylib (167.1.10) <29AB225B-D7FB-30ED-9600-65D44B9A9442> /usr/lib/system/libsystem_networkextension.dylib
    0x7fff82300000 -     0x7fff8270dff7  libLAPACK.dylib (1128) <F9201AE7-B031-36DB-BCF8-971E994EF7C1> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib
    0x7fff8290f000 -     0x7fff82a55fef  libsqlite3.dylib (168) <8B78BED1-7B9B-3943-80DC-0871015AEAC4> /usr/lib/libsqlite3.dylib
    0x7fff82a56000 -     0x7fff82a5cfff  libsystem_trace.dylib (72.1.3) <A9E6B7D8-C327-3742-AC54-86C94218B1DF> /usr/lib/system/libsystem_trace.dylib
    0x7fff82de1000 -     0x7fff82e55ff3  com.apple.securityfoundation (6.0 - 55126) <E7FB7A4E-CB0B-37BA-ADD5-373B2A20A783> /System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation
    0x7fff82e56000 -     0x7fff82e5aff7  com.apple.TCC (1.0 - 1) <AFC32F8F-BCD5-313C-B66E-5AB8591EC066> /System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC
    0x7fff8313c000 -     0x7fff83174ffb  libsystem_network.dylib (411) <C0B2313D-47BE-38A9-BEE6-2634A4F5E14B> /usr/lib/system/libsystem_network.dylib
    0x7fff83418000 -     0x7fff83432ff7  libextension.dylib (55) <17514AB2-C503-3D49-A725-EBC1140567A6> /usr/lib/libextension.dylib
    0x7fff834f8000 -     0x7fff83564fff  com.apple.framework.CoreWLAN (5.0 - 500.35.2) <ACBAAB0A-BCC7-37CF-AAFB-2DA1733F2682> /System/Library/Frameworks/CoreWLAN.framework/Versions/A/CoreWLAN
    0x7fff83ac0000 -     0x7fff83ae8fff  libsystem_info.dylib (459) <B85A85D5-8530-3A93-B0C3-4DEC41F79478> /usr/lib/system/libsystem_info.dylib
    0x7fff83d1c000 -     0x7fff83d1dff7  libsystem_blocks.dylib (65) <9615D10A-FCA7-3BE4-AA1A-1B195DACE1A1> /usr/lib/system/libsystem_blocks.dylib
    0x7fff83d1e000 -     0x7fff83daafff  libsystem_c.dylib (1044.1.2) <C185E862-7424-3210-B528-6B822577A4B8> /usr/lib/system/libsystem_c.dylib
    0x7fff83daf000 -     0x7fff83e27ff7  com.apple.SystemConfiguration (1.14 - 1.14) <C269BCFD-ACAB-3331-BC7C-0430F0E84817> /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration
    0x7fff84119000 -     0x7fff84126ff7  libbz2.1.0.dylib (36) <2DF83FBC-5C08-39E1-94F5-C28653791B5F> /usr/lib/libbz2.1.0.dylib
    0x7fff842b8000 -     0x7fff842c3ff7  libkxld.dylib (2782.1.97) <CB1A1B57-54BE-3573-AE0C-B90ED6BAEEE2> /usr/lib/system/libkxld.dylib
    0x7fff842c4000 -     0x7fff842ceff7  com.apple.NetAuth (5.0 - 5.0) <B9EC5425-D38D-308C-865F-207E0A98BAC7> /System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth
    0x7fff843e2000 -     0x7fff843e5fff  com.apple.xpc.ServiceManagement (1.0 - 1) <7E9E6BB7-AEE7-3F59-BAC0-59EAF105D0C8> /System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement
    0x7fff8446f000 -     0x7fff84477fff  libsystem_platform.dylib (63) <64E34079-D712-3D66-9CE2-418624A5C040> /usr/lib/system/libsystem_platform.dylib
    0x7fff84478000 -     0x7fff84480fff  libsystem_dnssd.dylib (561.1.1) <62B70ECA-E40D-3C63-896E-7F00EC386DDB> /usr/lib/system/libsystem_dnssd.dylib
    0x7fff844ac000 -     0x7fff844f2ff7  libauto.dylib (186) <A260789B-D4D8-316A-9490-254767B8A5F1> /usr/lib/libauto.dylib
    0x7fff84626000 -     0x7fff8463cff7  libsystem_asl.dylib (267) <F153AC5B-0542-356E-88C8-20A62CA704E2> /usr/lib/system/libsystem_asl.dylib
    0x7fff8463d000 -     0x7fff84641fff  libsystem_stats.dylib (163.1.4) <1DB04436-5974-3F16-86CC-5FF5F390339C> /usr/lib/system/libsystem_stats.dylib
    0x7fff84f09000 -     0x7fff84f09fff  com.apple.audio.units.AudioUnit (1.12 - 1.12) <76EF1C9D-DEA4-3E55-A134-4099B2FD2CF2> /System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit
    0x7fff84fa0000 -     0x7fff84fa9fff  libsystem_pthread.dylib (105.1.4) <26B1897F-0CD3-30F3-B55A-37CB45062D73> /usr/lib/system/libsystem_pthread.dylib
    0x7fff84fb3000 -     0x7fff84fcdff7  liblzma.5.dylib (7) <1D03E875-A7C0-3028-814C-3C27F7B7C079> /usr/lib/liblzma.5.dylib
    0x7fff85107000 -     0x7fff8511eff7  libLinearAlgebra.dylib (1128) <E78CCBAA-A999-3B65-8EC9-06DB15E67C37> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.dylib
    0x7fff8511f000 -     0x7fff85387ffb  com.apple.security (7.0 - 57031.1.35) <96141D1F-614E-32C4-8AC2-F47481F23F43> /System/Library/Frameworks/Security.framework/Versions/A/Security
    0x7fff853e8000 -     0x7fff8577efff  com.apple.CoreFoundation (6.9 - 1151.16) <F2B088AF-A5C6-3FAE-9EB4-7931AF6359E4> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
    0x7fff8577f000 -     0x7fff85790fff  libcmph.dylib (1) <46EC3997-DB5E-38AE-BBBB-A035A54AD3C0> /usr/lib/libcmph.dylib
    0x7fff8586e000 -     0x7fff8588bfff  libsystem_kernel.dylib (2782.1.97) <93E0E0A9-75B6-3904-BB4E-4BC7C05F4B6B> /usr/lib/system/libsystem_kernel.dylib
    0x7fff85893000 -     0x7fff859b4fff  com.apple.LaunchServices (644.10 - 644.10) <0B1C68BC-0AEB-38E2-ABC8-E92728FEC475> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices
    0x7fff85ce5000 -     0x7fff85ce7ff7  libsystem_coreservices.dylib (9) <41B7C578-5A53-31C8-A96F-C73E030B0938> /usr/lib/system/libsystem_coreservices.dylib
    0x7fff85ec0000 -     0x7fff861dbfcf  com.apple.vImage (8.0 - 8.0) <1183FE6A-FDB6-3B3B-928D-50C7909F2308> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage
    0x7fff86642000 -     0x7fff8666afff  libxpc.dylib (559.1.22) <9437C02E-A07B-38C8-91CB-299FAA63083D> /usr/lib/system/libxpc.dylib
    0x7fff86770000 -     0x7fff86777ff7  libcompiler_rt.dylib (35) <BF8FC133-EE10-3DA6-9B90-92039E28678F> /usr/lib/system/libcompiler_rt.dylib
    0x7fff87227000 -     0x7fff87234ff7  libxar.1.dylib (254) <CE10EFED-3066-3749-838A-6A15AC0DBCB6> /usr/lib/libxar.1.dylib
    0x7fff8771a000 -     0x7fff87735ff7  libCRFSuite.dylib (34) <D64842BE-7BD4-3D0C-9842-1D202F7C2A51> /usr/lib/libCRFSuite.dylib
    0x7fff877dd000 -     0x7fff8796bfff  libBLAS.dylib (1128) <497912C1-A98E-3281-BED7-E9C751552F61> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
    0x7fff87a9a000 -     0x7fff87aabff7  libsystem_coretls.dylib (35.1.2) <EBBF7EF6-80D8-3F8F-825C-B412BD6D22C0> /usr/lib/system/libsystem_coretls.dylib
    0x7fff87aac000 -     0x7fff87b13ff7  com.apple.framework.CoreWiFi (3.0 - 300.4) <19269C1D-EB29-384A-83F3-7DDDEB7D9DAD> /System/Library/PrivateFrameworks/CoreWiFi.framework/Versions/A/CoreWiFi
    0x7fff88656000 -     0x7fff88748ff7  libiconv.2.dylib (42) <2A06D02F-8B76-3864-8D96-64EF5B40BC6C> /usr/lib/libiconv.2.dylib
    0x7fff88a50000 -     0x7fff88a57fff  com.apple.NetFS (6.0 - 4.0) <1581D25F-CC07-39B0-90E8-5D4F3CF84EBA> /System/Library/Frameworks/NetFS.framework/Versions/A/NetFS
    0x7fff88c90000 -     0x7fff88c94fff  libcache.dylib (69) <45E9A2E7-99C4-36B2-BEE3-0C4E11614AD1> /usr/lib/system/libcache.dylib
    0x7fff88d37000 -     0x7fff88d96ff3  com.apple.AE (681 - 681) <7F544183-A515-31A8-B45F-89A167F56216> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
    0x7fff892ab000 -     0x7fff892b3ffb  libcopyfile.dylib (118.1.2) <0C68D3A6-ACDD-3EF3-991A-CC82C32AB836> /usr/lib/system/libcopyfile.dylib
    0x7fff89bfa000 -     0x7fff89c70fe7  libcorecrypto.dylib (233.1.2) <E1789801-3985-3949-B736-6B3378873301> /usr/lib/system/libcorecrypto.dylib
    0x7fff89cbb000 -     0x7fff89cd7ff7  libsystem_malloc.dylib (53.1.1) <19BCC257-5717-3502-A71F-95D65AFA861B> /usr/lib/system/libsystem_malloc.dylib
    0x7fff89d33000 -     0x7fff89de2fe7  libvMisc.dylib (512) <AFBA45DE-7F55-3E4E-B8DF-5E8E21C407AD> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib
    0x7fff89de3000 -     0x7fff89de4fff  libSystem.B.dylib (1213) <DA954461-EC6A-3DF0-8551-6FC810627627> /usr/lib/libSystem.B.dylib
    0x7fff89df0000 -     0x7fff89df1ffb  libremovefile.dylib (35) <3485B5F4-6CE8-3C62-8DFD-8736ED6E8531> /usr/lib/system/libremovefile.dylib
    0x7fff8a328000 -     0x7fff8a330ffb  com.apple.CoreServices.FSEvents (1210 - 1210) <782A9C69-7A45-31A7-8960-D08A36CBD0A7> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/FSEvents.framework/Versions/A/FSEvents
    0x7fff8a331000 -     0x7fff8a423fff  libxml2.2.dylib (26) <B834E7C8-EC3E-3382-BC5A-DA38DC4D720C> /usr/lib/libxml2.2.dylib
    0x7fff8a4ba000 -     0x7fff8a4bafff  com.apple.Accelerate (1.10 - Accelerate 1.10) <C7278843-2462-32F6-B0E3-D33C681399A2> /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate
    0x7fff8a4bb000 -     0x7fff8a4ebfff  libsystem_m.dylib (3086.1) <1E12AB45-6D96-36D0-A226-F24D9FB0D9D6> /usr/lib/system/libsystem_m.dylib
    0x7fff8a799000 -     0x7fff8a7eaff7  com.apple.audio.CoreAudio (4.3.0 - 4.3.0) <AF72B06E-C6C1-3FAE-8B47-AF461CAE0E22> /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio
    0x7fff8a7eb000 -     0x7fff8a816ff3  libarchive.2.dylib (30) <8CBB4416-EBE9-3574-8ADC-44655D245F39> /usr/lib/libarchive.2.dylib
    0x7fff8a817000 -     0x7fff8a819fff  com.apple.loginsupport (1.0 - 1) <35A2A071-606C-39A5-8C11-E4CAF98D934C> /System/Library/PrivateFrameworks/login.framework/Versions/A/Frameworks/loginsupport.framework/Versions/A/loginsupport
    0x7fff8aab1000 -     0x7fff8addfff7  com.apple.Foundation (6.9 - 1151.16) <18EDD673-A010-3E99-956E-DA594CE1FA80> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
    0x7fff8ae40000 -     0x7fff8aebdfff  com.apple.CoreServices.OSServices (640.3 - 640.3) <28445162-08E9-3E24-84E4-617CE5FE1367> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices
    0x7fff8af9c000 -     0x7fff8af9efff  libsystem_configuration.dylib (699.1.5) <9FBA1CE4-97D0-347E-A443-93ED94512E92> /usr/lib/system/libsystem_configuration.dylib
    0x7fff8afb8000 -     0x7fff8afe2ff7  libdispatch.dylib (442.1.4) <502CF32B-669B-3709-8862-08188225E4F0> /usr/lib/system/libdispatch.dylib
    0x7fff8afe3000 -     0x7fff8b00cffb  libxslt.1.dylib (13) <AED1143F-B848-3E73-81ED-71356F25F084> /usr/lib/libxslt.1.dylib
    0x7fff8b660000 -     0x7fff8b8dafff  com.apple.CoreData (110 - 526) <AEEDAF00-D38F-3A15-B3C9-73732940CC55> /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData
    0x7fff8b9be000 -     0x7fff8b9beff7  liblaunch.dylib (559.1.22) <8A988924-8BE7-35FE-BF7D-322E90EFE49E> /usr/lib/system/liblaunch.dylib
    0x7fff8b9bf000 -     0x7fff8b9bffff  com.apple.Accelerate.vecLib (3.10 - vecLib 3.10) <01E92F9F-EF29-3745-8631-AEA692F7F29C> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib
    0x7fff8b9c0000 -     0x7fff8b9c1fff  libsystem_secinit.dylib (18) <581DAD0F-6B63-3A48-B63B-917AF799ABAA> /usr/lib/system/libsystem_secinit.dylib
    0x7fff8b9f5000 -     0x7fff8ba49fff  libc++.1.dylib (120) <1B9530FD-989B-3174-BB1C-BDC159501710> /usr/lib/libc++.1.dylib
    0x7fff8c1d1000 -     0x7fff8c1d6ff7  libmacho.dylib (862) <126CA2ED-DE91-308F-8881-B9DAEC3C63B6> /usr/lib/system/libmacho.dylib
    0x7fff8c1d7000 -     0x7fff8c1d8fff  liblangid.dylib (117) <B54A4AA0-2E53-3671-90F5-AFF711C0EB9E> /usr/lib/liblangid.dylib
    0x7fff8c1f6000 -     0x7fff8c207ff7  libz.1.dylib (55) <88C7C7DE-04B8-316F-8B74-ACD9F3DE1AA1> /usr/lib/libz.1.dylib
    0x7fff8c208000 -     0x7fff8c20aff7  libquarantine.dylib (76) <DC041627-2D92-361C-BABF-A869A5C72293> /usr/lib/system/libquarantine.dylib
    0x7fff8c5d6000 -     0x7fff8c6e8ff7  libvDSP.dylib (512) <DD5517F5-F7F7-3AA1-B6FA-CD98DBC3C651> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib
    0x7fff8c6e9000 -     0x7fff8ca1cfff  libmecabra.dylib (666) <2CE5540A-D412-3D53-9E11-86C24D61713B> /usr/lib/libmecabra.dylib
    0x7fff8de78000 -     0x7fff8de7bff7  libdyld.dylib (353.2.1) <19FAF435-C165-3374-9DEF-D7BBA7D61DB6> /usr/lib/system/libdyld.dylib
    0x7fff8df34000 -     0x7fff8df44ff7  libbsm.0.dylib (34) <A3A2E56C-2B65-37C7-B43A-A1F926E1A0BB> /usr/lib/libbsm.0.dylib
    0x7fff8eb6b000 -     0x7fff8ec0dfff  com.apple.Bluetooth (4.3.0 - 4.3.0f10) <70922125-2A01-37AE-9CB8-D8A9578092E4> /System/Library/Frameworks/IOBluetooth.framework/Versions/A/IOBluetooth
    0x7fff8ec50000 -     0x7fff8ec55ff7  libunwind.dylib (35.3) <BE7E51A0-B6EA-3A54-9CCA-9D88F683A6D6> /usr/lib/system/libunwind.dylib
    0x7fff8ec86000 -     0x7fff8ec86ff7  libunc.dylib (29) <5676F7EA-C1DF-329F-B006-D2C3022B7D70> /usr/lib/system/libunc.dylib
    0x7fff8f1c6000 -     0x7fff8f1cafff  libpam.2.dylib (20) <E805398D-9A92-31F8-8005-8DC188BD8B6E> /usr/lib/libpam.2.dylib
    0x7fff8f2b6000 -     0x7fff8f2bfff7  libsystem_notify.dylib (133.1.1) <61147800-F320-3DAA-850C-BADF33855F29> /usr/lib/system/libsystem_notify.dylib
    0x7fff8f31f000 -     0x7fff8f606ffb  com.apple.CoreServices.CarbonCore (1108.1 - 1108.1) <55A16172-ACC0-38B7-8409-3CB92AF33973> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore
    0x7fff900f2000 -     0x7fff900f2ff7  libkeymgr.dylib (28) <77845842-DE70-3CC5-BD01-C3D14227CED5> /usr/lib/system/libkeymgr.dylib
    0x7fff9024c000 -     0x7fff90257fff  libcommonCrypto.dylib (60061) <D381EBC6-69D8-31D3-8084-5A80A32CB748> /usr/lib/system/libcommonCrypto.dylib
    0x7fff903b0000 -     0x7fff90595ff3  libicucore.A.dylib (531.30) <EF0E7544-E317-3550-A962-6AE65E78AF17> /usr/lib/libicucore.A.dylib
    0x7fff906cb000 -     0x7fff906f6fff  com.apple.DictionaryServices (1.2 - 229) <6789EC43-CADA-394D-8FE8-FC3A2DD136B9> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices
    0x7fff907d2000 -     0x7fff907d4ff7  libsystem_sandbox.dylib (358.1.1) <DB9962EF-8898-31CC-9B87-E01F8CE74C9D> /usr/lib/system/libsystem_sandbox.dylib
    0x7fff9085f000 -     0x7fff90872ff7  com.apple.CoreBluetooth (1.0 - 1) <FA9B43B3-E183-3040-AE25-66EF9870CF35> /System/Library/Frameworks/CoreBluetooth.framework/Versions/A/CoreBluetooth
    0x7fff90873000 -     0x7fff90a58267  libobjc.A.dylib (646) <3B60CD90-74A2-3A5D-9686-B0772159792A> /usr/lib/libobjc.A.dylib
    0x7fff90d36000 -     0x7fff90d36fff  com.apple.CoreServices (62 - 62) <9E4577CA-3FC3-300D-AB00-87ADBDDA2E37> /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
    0x7fff90dd2000 -     0x7fff90ddeff7  com.apple.OpenDirectory (10.10 - 187) <1D0066FC-1DEB-381B-B15C-4C009E0DF850> /System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory
    0x7fff90e17000 -     0x7fff9101aff3  com.apple.CFNetwork (720.0.9 - 720.0.9) <78EE1B88-394F-3BB8-93A6-E068990559EC> /System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork
    0x7fff9107d000 -     0x7fff91082fff  com.apple.DiskArbitration (2.6 - 2.6) <0DFF4D9B-2AC3-3B82-B5C5-30F4EFBD2DB9> /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration
    0x7fff910eb000 -     0x7fff91189fff  com.apple.Metadata (10.7.0 - 916) <DA8A1D18-19FE-37B3-BE12-85C5B0A00736> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata
    0x7fff9127b000 -     0x7fff912ecff7  com.apple.framework.IOKit (2.0.2 - 1050.1.21) <ED3B0B22-AACC-303B-BFC8-20ECD1AF6BA2> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
    0x7fff91465000 -     0x7fff914ccff7  com.apple.datadetectorscore (6.0 - 396.1) <5D348063-1528-3E2F-B587-9E82970506F9> /System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore

External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 390141
    thread_create: 0
    thread_set_state: 0

VM Region Summary:
ReadOnly portion of Libraries: Total=146.5M resident=156.9M(107%) swapped_out_or_unallocated=16777216.0T(12008958197760%)
Writable regions: Total=22.0M written=2744K(12%) resident=2912K(13%) swapped_out=0K(0%) unallocated=19.2M(87%)
 
REGION TYPE                      VIRTUAL
===========                      =======
Kernel Alloc Once                     4K
MALLOC                             11.2M
MALLOC (admin)                       16K
STACK GUARD                        56.0M
Stack                              8192K
VM_ALLOCATE                           8K
__DATA                             7436K
__LINKEDIT                         70.0M
__TEXT                             76.4M
__UNICODE                           544K
__le__                              112K
mapped file                          64K
shared memory                         4K
===========                      =======
TOTAL                             229.7M

Model: MacBookAir6,2, BootROM MBA61.0099.B16, 2 processors, Intel Core i7, 1.7 GHz, 8 GB, SMC 2.13f15
Graphics: Intel HD Graphics 5000, Intel HD Graphics 5000, Built-In
Memory Module: BANK 0/DIMM0, 4 GB, DDR3, 1600 MHz, 0x80AD, 0x483943434E4E4E384A544D4C41522D4E544D
Memory Module: BANK 1/DIMM0, 4 GB, DDR3, 1600 MHz, 0x80AD, 0x483943434E4E4E384A544D4C41522D4E544D
AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0x117), Broadcom BCM43xx 1.0 (7.15.124.12.8)
Bluetooth: Version 4.3.0f10 14890, 3 services, 27 devices, 1 incoming serial ports
Network Service: Thunderbolt Ethernet Slot 1, Ethernet, en2
PCI Card: ethernet, Ethernet Controller, Thunderbolt@193,0,0
PCI Card: pci1b73,1100, USB eXtensible Host Controller, Thunderbolt@194,0,0
Serial ATA Device: APPLE SSD SD0128F, 121.33 GB
USB Device: USB3.0 Hub
USB Device: External USB 3.0
USB Device: USB audio CODEC
USB Device: Yubico Yubikey II
USB Device: USB2.0 Hub
USB Device: Backup+  Desk
USB Device: Keyboard Hub
USB Device: Apple Keyboard
USB Device: Internal Memory Card Reader
USB Device: BRCM20702 Hub
USB Device: Bluetooth USB Host Controller
Thunderbolt Bus: MacBook Air, Apple Inc., 23.6
Thunderbolt Device: Thunderbolt Station, CalDigit, Inc., 1, 30.1

Сделайте git pull и попробуйте еще.
skype-poll-fix.c:61:15: error: assigning to 'struct timespec' from incompatible type 'const struct timespec *'
                new_timeout = timeout;
                            ^ ~~~~~~~
1 error generated.
make: *** [skype-poll-fix.o] Error 1
Во время простоя правка таймаутов может и позволит снизить нагрузку на цпу.
А во время видео-вызовов, не повлияет ли на стабильность связи при передаче видеопотока? Не будет дёрганья и задержек? Как-никак работа приближена к реалтайму должна быть…
Видео не проверял, но с голосом никаких проблем.
Конечно! Чего спрашиваете-то.
Увеличивает таймаут у вызовов poll (Linux) и kevent (Mac OS), снижая потребление процессора в 4-5 раз.

А что эти вызовы делают?
Как я не догадался.

В статье стоило описать кратко что это.
на арче x86_64

[melihov@sup-pm7 skype-poll-fix]$ LD_PRELOAD=./skype-poll-fix.so skype
ERROR: ld.so: object './skype-poll-fix.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.

[melihov@sup-pm7 skype-poll-fix]$ uname -a
Linux sup-pm7.r-service.net 3.17.1-1-ARCH #1 SMP PREEMPT Wed Oct 15 15:04:35 CEST 2014 x86_64 GNU/Linux
Не обращайте внимания, это он в bash не может подгрузиться.
Извините за глупый вопрос, но каждый раз нужно запускать через
LD_PRELOAD=./skype-poll-fix.so skype?
Да.
Я добавил это в /usr/bin/skype (шелл-скрипт).
Интересно, что делать в маке? Хоть приложение-лаунчер пакуй, чтоб не лазить внутрь скайповского приложения.

упд. дочитал до конца — что-то нет у меня уверенности, что Info.plist переживает обновления скайпа… ;-(
Для арча сделал так:
Кладем ./skype-poll-fix.so в /usr/lib/
Правим /usr/bin/skype
$ cat /usr/bin/skype
#!/bin/bash

LIBDIR="/usr/lib32"

if [[ -e "$LIBDIR/libv4l/v4l2convert.so" ]]; then
        export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}$LIBDIR/libv4l/v4l2convert.so"
fi

if [[ -e "/usr/share/skype/lib/libQtWebKit.so.4" ]]; then
        export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}/usr/share/skype/lib/libQtWebKit.so.4"
fi

export LD_PRELOAD="${LD_PRELOAD:+$LD_PRELOAD:}/usr/lib/skype-poll-fix.so"

exec "$LIBDIR/skype/skype" "$@"
Не нужно что-то укладывать в /usr/lib, если вы не пакетный менеджер, засовывайте в /usr/local/lib подобные вещи, не гадьте в неположенных местах.
в lib32, по моему, лучше положить, а не в lib(64)
Mint 17 (64bit) (На Ubuntu 14.04 LTS):
make -f Makefile.linux
cc -shared -m32 -O2 -ldl -c -o skype-poll-fix.o skype-poll-fix.c
In file included from /usr/include/stdio.h:27:0,
from skype-poll-fix.c:2:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Нет такого файла или каталога
# include <sys/cdefs.h>
^
compilation terminated.
make: *** [skype-poll-fix.o] Ошибка 1
cat /etc/*-release:

DISTRIB_ID=LinuxMint
DISTRIB_RELEASE=17
DISTRIB_CODENAME=qiana
DISTRIB_DESCRIPTION=«Linux Mint 17 Qiana»
NAME=«Ubuntu»
VERSION=«14.04.1 LTS, Trusty Tahr»
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME=«Ubuntu 14.04.1 LTS»
VERSION_ID=«14.04»
HOME_URL=«www.ubuntu.com/»
SUPPORT_URL=«help.ubuntu.com/»
BUG_REPORT_URL=«bugs.launchpad.net/ubuntu/»
cat: /etc/upstream-release: Это каталог


cat /proc/version:
Linux version 3.13.0-24-generic (buildd@batsu) (gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ) #47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014


Пакет build-essentials установлен.
У меня тоже на Linux Mint (правда 12.04 LTS) не собиралось:

$ make -f Makefile.linux 
cc -shared -m32 -O2 -ldl   -c -o skype-poll-fix.o skype-poll-fix.c
In file included from /usr/include/stdio.h:28:0,
                 from skype-poll-fix.c:2:
/usr/include/features.h:324:26: fatal error: bits/predefs.h: No such file or directory
compilation terminated.
make: *** [skype-poll-fix.o] Error 1


Оказалось проблема решается просто — нужно установить пакет gcc-multilib:

sudo aptitude install gcc-multilib
Спасибо, помогло. Mint 17.
Поставьте
apt-get install gcc-multilib
извините, не увидел комментарий выше
Может не совсем по теме, но актуально: как закрыть Skype (полностью выйти) под Windows? Вопрос про самую последнюю версию Skype. Единственный действенный метод, который я нашёл — через Task Manager. Спасибо.
ПКМ на значке на панеле задач (не помню как она называется в винде).
Там есть пункт «Quit»
Ситема Arch, i7-4700HQ, постоянная зарузка проца скайпов около 2% и это когда он просто висит в фоне.
Под linux нехватает проверки на отрицательный timeout. В таком случае для poll это означает бесконечность. Сейчас 'ждать вечно' меняется на 'ждать 300мс'.
А сделайте пожалуйста пакет для homebrew.
Сделать несложно, только имеет ли смысл.
Вам этот метод помог?
У меня после ощения с автором запустилось, но эффекта никакого.
Возникает ошибка
$ LD_PRELOAD=./skype-poll-fix.so skype
ERROR: ld.so: object './skype-poll-fix.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored

Падает где-то после получаса работы:
Gentoo x86_64

LD_PRELOAD=./skype-poll-fix.so skype
Corrupt JPEG data: 4 extraneous bytes before marker 0xc4
ERROR: ld.so: object './skype-poll-fix.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object './skype-poll-fix.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
ERROR: ld.so: object './skype-poll-fix.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.

(process:6058): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
Аварийный останов

UFO just landed and posted this here
На OS X стоит «make -f Makefile.macos» заменить на «make -f Makefile», иначе ошибка (:
И да, можно ли каким-либо образом на OS X сделать так, чтобы при нажатии на иконку Skype запускался он с нужными параметрами, а не каждый раз через терминал?
Там как-то можно через XML. Но, скорее всего, у вас тоже не заработает, что-то под Mac OS поломано, пока я не понял, что именно.
Вроде так в /Applications/Skype.app/Contents/Info.plist:

  <key>LSEnvironment</key>
  <dict>
      <key>DYLD_INSERT_LIBRARIES</key>
      <string>/path/to/dylib/skype-poll-fix.dylib</string>
  </dict>
с первого раза скайп не запустился.
со второго раза получилось. хз как проверить, есть ли эффект
У меня с первого раза запустился, но вылетел через какое-то время.
тут yosemite + правильно обновлённые сдк/компиляторы и т.д. В этом же Info.plist написано явно, что эту версию скайпа собирали под 10.10 таким же компилятором (точнее, СДК, но суть та же)
UFO just landed and posted this here
Sign up to leave a comment.

Articles