Hacker News

iokit ਦੁਆਰਾ Apple Silicon MacBooks 'ਤੇ ਗੈਰ-ਦਸਤਾਵੇਜ਼ੀ MEMS ਐਕਸੀਲੇਰੋਮੀਟਰ ਨੂੰ ਪੜ੍ਹਨਾ

\u003ch2\u003eiokit\u003c/h2\u003e ਰਾਹੀਂ Apple Silicon MacBooks 'ਤੇ ਬਿਨਾਂ ਦਸਤਾਵੇਜ਼ੀ MEMS ਐਕਸੀਲੇਰੋਮੀਟਰ ਨੂੰ ਪੜ੍ਹਨਾ \u003cp\u003eਇਹ ਓਪਨ-ਸੋਰਸ GitHub ਰਿਪੋਜ਼ਟਰੀ ਡਿਵੈਲਪਰ ਈਕੋਸਿਸਟਮ ਵਿੱਚ ਮਹੱਤਵਪੂਰਨ ਯੋਗਦਾਨ ਨੂੰ ਦਰਸਾਉਂਦੀ ਹੈ। ਪ੍ਰੋਜੈਕਟ ਆਧੁਨਿਕ ਵਿਕਾਸ ਅਭਿਆਸਾਂ ਅਤੇ ਸਹਿਯੋਗੀ ਕੋਡਿੰਗ ਦਾ ਪ੍ਰਦਰਸ਼ਨ ਕਰਦਾ ਹੈ....

2 min read Via github.com

Mewayz Team

Editorial Team

Hacker News
\u003ch2\u003eiokit\u003c/h2\u003e ਰਾਹੀਂ Apple Silicon MacBooks 'ਤੇ ਬਿਨਾਂ ਦਸਤਾਵੇਜ਼ੀ MEMS ਐਕਸੀਲੇਰੋਮੀਟਰ ਨੂੰ ਪੜ੍ਹਨਾ \u003cp\u003eਇਹ ਓਪਨ-ਸੋਰਸ GitHub ਰਿਪੋਜ਼ਟਰੀ ਡਿਵੈਲਪਰ ਈਕੋਸਿਸਟਮ ਵਿੱਚ ਮਹੱਤਵਪੂਰਨ ਯੋਗਦਾਨ ਨੂੰ ਦਰਸਾਉਂਦੀ ਹੈ। ਪ੍ਰੋਜੈਕਟ ਆਧੁਨਿਕ ਵਿਕਾਸ ਅਭਿਆਸਾਂ ਅਤੇ ਸਹਿਯੋਗੀ ਕੋਡਿੰਗ ਦਾ ਪ੍ਰਦਰਸ਼ਨ ਕਰਦਾ ਹੈ।\u003c/p\u003e \u003ch3\u003eਤਕਨੀਕੀ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ\u003c/h3\u003e \u003cp\u003e ਭੰਡਾਰ ਵਿੱਚ ਸੰਭਾਵਤ ਤੌਰ 'ਤੇ ਸ਼ਾਮਲ ਹਨ:\u003c/p\u003e \u003cul\u003e \u003cli\u003eਸਾਫ਼, ਚੰਗੀ ਤਰ੍ਹਾਂ ਦਸਤਾਵੇਜ਼ੀ ਕੋਡ\u003c/li\u003e \u003cli\u003eਵਰਤੋਂ ਉਦਾਹਰਨਾਂ ਦੇ ਨਾਲ ਵਿਆਪਕ README\u003c/li\u003e \u003cli\u003eਸਮੱਸਿਆ ਟਰੈਕਿੰਗ ਅਤੇ ਯੋਗਦਾਨ ਦਿਸ਼ਾ ਨਿਰਦੇਸ਼\u003c/li\u003e \u003cli\u003eਨਿਯਮਿਤ ਅੱਪਡੇਟ ਅਤੇ ਰੱਖ-ਰਖਾਅ\u003c/li\u003e \u003c/ul\u003e \u003ch3\u003eਭਾਈਚਾਰਕ ਪ੍ਰਭਾਵ\u003c/h3\u003e \u003cp\u003eਓਪਨ-ਸੋਰਸ ਪ੍ਰੋਜੈਕਟ ਇਸ ਤਰ੍ਹਾਂ ਦੇ ਗਿਆਨ ਨੂੰ ਸਾਂਝਾ ਕਰਨ ਨੂੰ ਉਤਸ਼ਾਹਿਤ ਕਰਦੇ ਹਨ ਅਤੇ ਪਹੁੰਚਯੋਗ ਕੋਡ ਅਤੇ ਸਹਿਯੋਗੀ ਵਿਕਾਸ ਦੁਆਰਾ ਤਕਨੀਕੀ ਨਵੀਨਤਾ ਨੂੰ ਤੇਜ਼ ਕਰਦੇ ਹਨ।\u003c/p\u003e

ਅਕਸਰ ਪੁੱਛੇ ਜਾਣ ਵਾਲੇ ਸਵਾਲ

ਇੱਕ MEMS ਐਕਸੀਲੇਰੋਮੀਟਰ ਕੀ ਹੈ ਅਤੇ Apple Silicon ਵਿੱਚ ਇੱਕ ਕਿਉਂ ਸ਼ਾਮਲ ਹੈ?

ਇੱਕ MEMS (ਮਾਈਕਰੋ-ਇਲੈਕਟਰੋ-ਮਕੈਨੀਕਲ ਸਿਸਟਮ) ਐਕਸਲਰੋਮੀਟਰ ਇੱਕ ਛੋਟਾ ਜਿਹਾ ਸੈਂਸਰ ਹੈ ਜੋ ਪ੍ਰਵੇਗ ਬਲਾਂ ਵਿੱਚ ਤਬਦੀਲੀਆਂ ਨੂੰ ਮਾਪ ਕੇ ਗਤੀ ਅਤੇ ਸਥਿਤੀ ਦਾ ਪਤਾ ਲਗਾਉਂਦਾ ਹੈ। ਐਪਲ ਸਿਲੀਕਾਨ ਮੈਕਬੁੱਕਸ ਵਿੱਚ ਮੁੱਖ ਤੌਰ 'ਤੇ ਸਟੋਰੇਜ ਲਈ ਅਚਾਨਕ ਮੋਸ਼ਨ ਸੁਰੱਖਿਆ ਅਤੇ ਆਟੋਮੈਟਿਕ ਡਿਸਪਲੇ ਰੋਟੇਸ਼ਨ ਵਰਗੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦਾ ਸਮਰਥਨ ਕਰਨ ਲਈ ਇੱਕ ਸ਼ਾਮਲ ਹੈ। ਜਦੋਂ ਕਿ ਐਪਲ ਉੱਚ-ਪੱਧਰੀ APIs ਦੁਆਰਾ ਕੁਝ ਸੈਂਸਰ ਡੇਟਾ ਦਾ ਪਰਦਾਫਾਸ਼ ਕਰਦਾ ਹੈ, ਇਸ ਐਕਸੀਲੇਰੋਮੀਟਰ ਲਈ ਕੱਚਾ IOKit ਇੰਟਰਫੇਸ ਵੱਡੇ ਪੱਧਰ 'ਤੇ ਗੈਰ-ਦਸਤਾਵੇਜ਼ੀ ਬਣਿਆ ਰਹਿੰਦਾ ਹੈ, ਜਿਸ ਨਾਲ ਮੋਸ਼ਨ-ਜਾਗਰੂਕ ਜਾਂ ਡਾਇਗਨੌਸਟਿਕ ਐਪਲੀਕੇਸ਼ਨ ਬਣਾਉਣ ਵਾਲੇ ਡਿਵੈਲਪਰਾਂ ਲਈ ਹੇਠਲੇ-ਪੱਧਰ ਦੀ ਪਹੁੰਚ ਇੱਕ ਚੁਣੌਤੀ ਬਣ ਜਾਂਦੀ ਹੈ।

IOKit ਬਿਨਾਂ ਦਸਤਾਵੇਜ਼ੀ ਹਾਰਡਵੇਅਰ ਸੈਂਸਰਾਂ ਤੱਕ ਪਹੁੰਚ ਨੂੰ ਕਿਵੇਂ ਸਮਰੱਥ ਬਣਾਉਂਦਾ ਹੈ?

IOKit ਹਾਰਡਵੇਅਰ ਡਰਾਈਵਰਾਂ ਨਾਲ ਸੰਚਾਰ ਕਰਨ ਲਈ ਐਪਲ ਦਾ ਕਰਨਲ ਫਰੇਮਵਰਕ ਹੈ। ਇੱਥੋਂ ਤੱਕ ਕਿ ਜਦੋਂ ਇੱਕ ਡਿਵਾਈਸ ਅਧਿਕਾਰਤ ਤੌਰ 'ਤੇ ਦਸਤਾਵੇਜ਼ੀ ਨਹੀਂ ਹੁੰਦੀ ਹੈ, IOKit ਦੀ ਸੇਵਾ ਰਜਿਸਟਰੀ ਅਕਸਰ ਇਸਦਾ ਪਰਦਾਫਾਸ਼ ਕਰਦੀ ਹੈ — ਡਿਵੈਲਪਰ ਕਨੈਕਟ ਕੀਤੀਆਂ ਸੇਵਾਵਾਂ ਦੀ ਗਿਣਤੀ ਕਰ ਸਕਦੇ ਹਨ, ਜਾਣੇ-ਪਛਾਣੇ ਕਲਾਸ ਦੇ ਨਾਮਾਂ ਨਾਲ ਮੇਲ ਕਰ ਸਕਦੇ ਹਨ, ਅਤੇ ਡਰਾਈਵਰ ਤਰੀਕਿਆਂ ਨੂੰ ਸਿੱਧਾ ਕਾਲ ਕਰ ਸਕਦੇ ਹਨ। ਇਸ ਤਕਨੀਕ ਲਈ ਡਰਾਈਵਰ ਇੰਟਰਫੇਸ ਅਤੇ ਇੰਟਾਈਟਲਮੈਂਟਾਂ ਦੀ ਸਾਵਧਾਨ ਰਿਵਰਸ ਇੰਜੀਨੀਅਰਿੰਗ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਇਹ ਹਾਰਡਵੇਅਰ ਹੈਕਰਾਂ ਅਤੇ ਖੋਜਕਰਤਾਵਾਂ ਲਈ ਇੱਕ ਸ਼ਕਤੀਸ਼ਾਲੀ ਪਹੁੰਚ ਹੈ ਜਿਨ੍ਹਾਂ ਨੂੰ ਐਪਲ ਦੇ ਜਨਤਕ SDK ਪ੍ਰਦਾਨ ਕੀਤੇ ਜਾਣ ਤੋਂ ਇਲਾਵਾ ਸੈਂਸਰ ਡੇਟਾ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ।

ਕੀ ਇਹ ਪਹੁੰਚ ਉਤਪਾਦਨ macOS ਐਪਲੀਕੇਸ਼ਨਾਂ ਵਿੱਚ ਵਰਤਣ ਲਈ ਸੁਰੱਖਿਅਤ ਹੈ?

ਬਿਨਾਂ ਦਸਤਾਵੇਜ਼ੀ IOKit ਇੰਟਰਫੇਸਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨ ਨਾਲ ਅਸਲ ਜੋਖਮ ਹੁੰਦੇ ਹਨ: ਐਪਲ ਬਿਨਾਂ ਨੋਟਿਸ ਦੇ ਕਿਸੇ ਵੀ ਮੈਕੋਸ ਅਪਡੇਟ ਵਿੱਚ ਡਰਾਈਵਰ ਇੰਟਰਨਲ ਨੂੰ ਬਦਲ ਸਕਦਾ ਹੈ ਜਾਂ ਹਟਾ ਸਕਦਾ ਹੈ, ਸੰਭਾਵੀ ਤੌਰ 'ਤੇ ਤੁਹਾਡੀ ਐਪ ਨੂੰ ਚੁੱਪਚਾਪ ਤੋੜ ਸਕਦਾ ਹੈ। ਇਸ ਤੋਂ ਇਲਾਵਾ, ਕਰਨਲ ਸੇਵਾਵਾਂ ਨੂੰ ਐਕਸੈਸ ਕਰਨ ਲਈ ਉੱਚੇ ਅਧਿਕਾਰਾਂ ਦੀ ਲੋੜ ਹੋ ਸਕਦੀ ਹੈ ਜੋ ਐਪ ਸਟੋਰ ਦੀ ਵੰਡ ਨੂੰ ਗੁੰਝਲਦਾਰ ਬਣਾਉਂਦੇ ਹਨ। ਪ੍ਰਯੋਗਾਤਮਕ ਸਾਧਨਾਂ, ਖੋਜ ਪ੍ਰੋਜੈਕਟਾਂ, ਜਾਂ ਅੰਦਰੂਨੀ ਉਪਯੋਗਤਾਵਾਂ ਲਈ ਇਹ ਵਿਹਾਰਕ ਹੈ। ਜੇਕਰ ਤੁਸੀਂ ਇੱਕ ਵਿਆਪਕ ਡਿਵੈਲਪਰ ਟੂਲਕਿੱਟ ਬਣਾ ਰਹੇ ਹੋ — ਉਦਾਹਰਨ ਲਈ, Mewayz ਦੀ ਕਿਸਮ ਦਾ ਬਹੁ-ਵਿਸ਼ੇਸ਼ਤਾ ਪਲੇਟਫਾਰਮ $19/mo ਤੋਂ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੇ 207 ਮੋਡੀਊਲ ਨਾਲ ਪੇਸ਼ ਕਰਦਾ ਹੈ — ਤੁਸੀਂ ਇਸਨੂੰ ਫਾਲਬੈਕ ਹੈਂਡਲਿੰਗ ਦੇ ਨਾਲ ਇੱਕ ਸਥਿਰ ਇੰਟਰਫੇਸ ਦੇ ਪਿੱਛੇ ਸਾਰ ਦੇਣਾ ਚਾਹੋਗੇ।

ਇੱਕ Apple Silicon Mac 'ਤੇ ਐਕਸੀਲੇਰੋਮੀਟਰ ਡੇਟਾ ਨੂੰ ਪੜ੍ਹਨ ਲਈ ਮੈਨੂੰ ਕਿਹੜੀਆਂ ਪੂਰਵ-ਲੋੜਾਂ ਦੀ ਲੋੜ ਹੈ?

ਤੁਹਾਨੂੰ ਐਪਲ ਸਿਲੀਕੋਨ (M1 ਜਾਂ ਇਸ ਤੋਂ ਬਾਅਦ ਵਾਲਾ), ਮੈਕੋਸ SDK ਵਾਲਾ Xcode, ਅਤੇ IOKit ਕਾਲਾਂ ਲਈ C ਜਾਂ Swift ਨਾਲ ਜਾਣੂ ਹੋਣ ਦੀ ਲੋੜ ਹੋਵੇਗੀ। ਸਿਸਟਮ ਇੰਟੈਗਰਿਟੀ ਪ੍ਰੋਟੈਕਸ਼ਨ (SIP) ਸੈਟਿੰਗਾਂ ਡਰਾਈਵਰ ਦੇ ਆਧਾਰ 'ਤੇ ਪਹੁੰਚ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰ ਸਕਦੀਆਂ ਹਨ। ਕਰਨਲ ਸਰਵਿਸ ਮੈਚਿੰਗ ਅਤੇ IOConnectCallMethod ਦੀ ਮੁਢਲੀ ਸਮਝ ਜ਼ਰੂਰੀ ਹੈ। ਪ੍ਰਯੋਗਾਤਮਕ ਹਾਰਡਵੇਅਰ ਏਕੀਕਰਣ ਬਣਾਉਣ ਵਾਲੇ ਡਿਵੈਲਪਰ ਅਕਸਰ ਅਜਿਹੇ ਨੀਵੇਂ-ਪੱਧਰ ਦੀਆਂ ਸਮਰੱਥਾਵਾਂ ਨੂੰ ਵਿਆਪਕ ਟੂਲਿੰਗ ਪਲੇਟਫਾਰਮਾਂ ਨਾਲ ਜੋੜਦੇ ਹਨ — ਮੇਵੇਜ਼, ਉਦਾਹਰਨ ਲਈ, $19/mo ਵਿੱਚ 207 ਡਿਵੈਲਪਰ ਅਤੇ ਉਤਪਾਦਕਤਾ ਮੋਡੀਊਲ ਨੂੰ ਬੰਡਲ ਕਰਦੇ ਹਨ — ਹਰ ਚੀਜ਼ ਨੂੰ ਸਕ੍ਰੈਚ ਤੋਂ ਦੁਬਾਰਾ ਬਣਾਏ ਬਿਨਾਂ ਆਲੇ ਦੁਆਲੇ ਦੇ ਵਰਕਫਲੋ ਨੂੰ ਤੇਜ਼ ਕਰਨ ਲਈ।