Site Tools


Hotfix release available: 2025-05-14a "Librarian". upgrade now! [56.1] (what's this?)
New release available: 2025-05-14 "Librarian". upgrade now! [56] (what's this?)
Hotfix release available: 2024-02-06b "Kaos". upgrade now! [55.2] (what's this?)
Hotfix release available: 2024-02-06a "Kaos". upgrade now! [55.1] (what's this?)
New release available: 2024-02-06 "Kaos". upgrade now! [55] (what's this?)
Hotfix release available: 2023-04-04b "Jack Jackrum". upgrade now! [54.2] (what's this?)
Hotfix release available: 2023-04-04a "Jack Jackrum". upgrade now! [54.1] (what's this?)
New release available: 2023-04-04 "Jack Jackrum". upgrade now! [54] (what's this?)
Hotfix release available: 2022-07-31b "Igor". upgrade now! [53.1] (what's this?)
Hotfix release available: 2022-07-31a "Igor". upgrade now! [53] (what's this?)
New release available: 2022-07-31 "Igor". upgrade now! [52.2] (what's this?)
New release candidate 2 available: rc2022-06-26 "Igor". upgrade now! [52.1] (what's this?)
New release candidate available: 2022-06-26 "Igor". upgrade now! [52] (what's this?)
Hotfix release available: 2020-07-29a "Hogfather". upgrade now! [51.4] (what's this?)
New release available: 2020-07-29 "Hogfather". upgrade now! [51.3] (what's this?)
New release candidate 3 available: 2020-06-09 "Hogfather". upgrade now! [51.2] (what's this?)
New release candidate 2 available: 2020-06-01 "Hogfather". upgrade now! [51.1] (what's this?)
New release candidate available: 2020-06-01 "Hogfather". upgrade now! [51] (what's this?)
Hotfix release available: 2018-04-22c "Greebo". upgrade now! [50.3] (what's this?)
Hotfix release available: 2018-04-22b "Greebo". upgrade now! [50.2] (what's this?)
Hotfix release available: 2018-04-22a "Greebo". upgrade now! [50.1] (what's this?)
New release available: 2018-04-22 "Greebo". upgrade now! [50] (what's this?)
Hotfix release available: 2017-02-19g "Frusterick Manners". upgrade now! [49.7] (what's this?)
Hotfix release available: 2017-02-19f "Frusterick Manners". upgrade now! [49.6] (what's this?)
Hotfix release available: 2017-02-19e "Frusterick Manners". upgrade now! [49.5] (what's this?)
Hotfix release available fixing CVE-2017-12979 and CVE-2017-12980: 2017-02-19d "Frusterick Manners". upgrade now! [49.4] (what's this?)
Hotfix release available fixing CVE-2017-12583: 2017-02-19c "Frusterick Manners". upgrade now! [49.3] (what's this?)
wiki:lte

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
wiki:lte [2017/11/20 13:19]
1.241.172.144 [Kernel space]
wiki:lte [2017/11/20 14:32] (current)
1.241.172.144 [User space]
Line 138: Line 138:
 devices in user-space. In particular, a user-space process wanting to use the QMI port will need to explicitly devices in user-space. In particular, a user-space process wanting to use the QMI port will need to explicitly
 perform checks to see whether the device is ready to be used. Also, no connection statistics will be automati- perform checks to see whether the device is ready to be used. Also, no connection statistics will be automati-
-cally gathered from the device.+cally gathered from the device.\\ 
 +qmi wwan 드라이버는 사용자 공간에서 새 문자 및 네트워크 장치를 노출하기 전에 장치 초기화를 수행하지 않습니다. 특히 QMI 포트를 사용하려는 사용자 공간 프로세스는 장치를 사용할 준비가되었는지 여부를 확인하기 위해 명시 적으로 검사를 수행해야합니다. 또한 장치로부터 자동으로 연결 통계가 수집되지 않습니다.
  
 ==Client allocation and releasing== ==Client allocation and releasing==
  
-Following the simplicity required by the driver, and given that the driver knows nothing about the QMI pro- +Following the simplicity required by the driver, and given that the driver knows nothing about the QMI protocol ​itself, there is no built-in mechanism to handle QMI service client allocations. Every user-space process wanting to use QMI, will need to handle the allocation and releasing of Client IDs using the CTL service.\\ 
-tocol itself, there is no built-in mechanism to handle QMI service client allocations. Every user-space process wanting to use QMI, will need to handle the allocation and releasing of Client IDs using the CTL service.+드라이버가 필요로하는 단순성에 따라 드라이버가 QMI 프로토콜 자체에 대해 아무것도 모르는 경우 QMI 서비스 클라이언트 할당을 처리하는 기본 제공 메커니즘이 없습니다. QMI를 사용하고자하는 모든 사용자 공간 프로세스는 CTL 서비스를 사용하여 클라이언트 ID 할당 및 해제를 처리해야합니다.
  
 Leaving the Client ID releasing task to user-space also makes it impossible to make sure that all Client IDs are Leaving the Client ID releasing task to user-space also makes it impossible to make sure that all Client IDs are
-released when a process ends. A well implemented program using the QMI protocol should try to perform +released when a process ends. A well implemented program using the QMI protocol should try to perform the Client ID releases before exiting, but it is assumed that unexpected terminations of the running process will end up leaving ’leaked’ Client IDs which are never released.\\ 
-the Client ID releases before exiting, but it is assumed that unexpected terminations of the running process will +클라이언트 ID 해제 작업을 사용자 공간에두면 프로세스가 끝날 때 모든 클라이언트 ID가 해제되는 것을 확인할 수 없게됩니다. QMI 프로토콜을 사용하는 잘 구현 된 프로그램은 종료하기 전에 클라이언트 ID 릴리스를 수행해야하지만 실행중인 프로세스의 예기치 않은 종료로 인해 결코 누출되지 않은 '​유출 된'​클라이언트 ID가 남게됩니다.
-end up leaving ’leaked’ Client IDs which are never released.+
  
-This limitation, though, provides itself a very useful feature which was not possible before with the GobiNet +This limitation, though, provides itself a very useful feature which was not possible before with the GobiNet driver. The fact that a program can choose whether or not to release a Client ID when exiting means that it can also choose to reuse a Client ID that was maybe allocated in a previous run of the same program. From a practical point of view, the fact that the kernel doesn’t automatically release the clients when the process exits allows users to use the QMI protocol from within scripts or the command line, as there is no need to allocate or release a client in each run of the script or command line program. For most operations that can be performed through QMI, allocating/​releasing a new client for each operation is a possibility,​ but there are some very specific use cases (e.g. WDS Start Network to setup a network connection) which require the Client ID to be kept registered all the time (or the connection will be dropped).\\ 
-driver. The fact that a program can choose whether or not to release a Client ID when exiting means that it +이 제한은 GobiNet 드라이버로는 불가능했던 매우 유용한 기능을 제공합니다. 프로그램이 종료 할 때 클라이언트 ID를 해제할지 여부를 선택할 수 있다는 사실은 동일한 프로그램의 이전 실행에서 할당되었을 수있는 클라이언트 ID를 다시 사용할 수도 있음을 의미합니다. 실용적인 관점에서 볼 때 커널이 프로세스를 종료 할 때 자동으로 클라이언트를 해제하지 않는다는 사실은 사용자가 클라이언트를 할당하거나 해제 할 필요가 없기 때문에 사용자가 스크립트 또는 명령 줄에서 QMI 프로토콜을 사용할 수있게합니다. 각 스크립트 또는 명령 행 프로그램 실행. QMI를 통해 수행 할 수있는 대부분의 작업의 경우 각 작업에 대해 새 클라이언트를 할당 / 해제하는 것이 가능하지만 Client ID가 유지되어야하는 몇 가지 매우 구체적인 사용 사례가 있습니다 (예 : WDS 네트워크 시작 네트워크) 항상 등록됩니다 (또는 연결이 끊어집니다).
-can also choose to reuse a Client ID that was maybe allocated in a previous run of the same program. From +
-a practical point of view, the fact that the kernel doesn’t automatically release the clients when the process +
-exits allows users to use the QMI protocol from within scripts or the command line, as there is no need to +
-allocate or release a client in each run of the script or command line program. For most operations that can +
-be performed through QMI, allocating/​releasing a new client for each operation is a possibility,​ but there are +
-some very specific use cases (e.g. WDS Start Network to setup a network connection) which require the Client +
-ID to be kept registered all the time (or the connection will be dropped).+
  
-It is worth noting again that avoiding complex operations like these in the kernel driver is by no means a +It is worth noting again that avoiding complex operations like these in the kernel driver is by no means a limitation of the driver; instead, the driver is kept as simple as possible and therefore much more robust. A simple driver is also much more flexible, as user-space processes can process all the logic of the protocol, not just parts of it.\\ 
-limitation of the driver; instead, the driver is kept as simple as possible and therefore much more robust. A +커널 드라이버에서 이와 같은 복잡한 작업을 피하는 것이 결코 드라이버의 한계가 아니라는 점을 다시 한번 주목할 필요가 있습니다. 대신 드라이버는 가능한 단순하게 유지되므로 훨씬 강력합니다. 간단한 드라이버는 사용자 공간 프로세스가 프로토콜의 일부분뿐만 아니라 모든 논리를 처리 할 수 ​​있기 때문에 더욱 유연합니다.
-simple driver is also much more flexible, as user-space processes can process all the logic of the protocol, not +
-just parts of it.+
  
 ====User space==== ====User space====
  
-It should be obvious by now that while using the one exposed by qmi wwan is a much more complex task. Still, there are already free and open source projects out there that make it equally easy - if not easier - to use the qmi wwan driver.+It should be obvious by now that while using the one exposed by qmi wwan is a much more complex task. Still, there are already free and open source projects out there that make it equally easy - if not easier - to use the qmi wwan driver.\\ 
 +qmi wwan에 의해 노출 된 것을 사용하는 것이 훨씬 더 복잡한 작업이라는 것을 지금 당연히 알아야합니다. 아직 qmi wwan 드라이버를 사용하는 것이 쉽지는 않겠지만 이미 무료 및 오픈 소스 프로젝트가 있습니다.
  
 This section shows some of the currently available software implementations using the qmi wwan kernel drivers. This section shows some of the currently available software implementations using the qmi wwan kernel drivers.
 +이 절에서는 qmi wwan 커널 드라이버를 사용하는 현재 사용 가능한 소프트웨어 구현 중 일부를 보여줍니다.
  
 ===libqmi using qmi wwan=== ===libqmi using qmi wwan===
  
-libqmi is a free and open source library developed by free software contributors,​ and managed in the freedesktop.org public repositories. libqmi exposes a code source repository with the latest fixes available, which makes it perfect to be able to get the most recent improve-ments and fixes.+libqmi is a free and open source library developed by free software contributors,​ and managed in the freedesktop.org public repositories. libqmi exposes a code source repository with the latest fixes available, which makes it perfect to be able to get the most recent improve-ments and fixes.\\ 
 +libqmi는 무료 소프트웨어 제공자가 개발하고 freedesktop.org 공용 저장소에서 관리되는 무료 오픈 소스 라이브러리입니다. libqmi는 최신 수정 사항을 제공하는 코드 소스 저장소를 제공하므로 가장 최근의 개선 사항 및 수정 사항을 얻을 수 있습니다.
  
-Most Linux-based distributions already include packages for libqmi, and it is also used by ModemManager,​ a mobile connection manager widely used along with NetworkManager.+Most Linux-based distributions already include packages for libqmi, and it is also used by ModemManager,​ a mobile connection manager widely used along with NetworkManager.\\ 
 +대부분의 Linux 기반 배포판에는 이미 libqmi 용 패키지가 포함되어 있으며 NetworkManager와 함께 널리 사용되는 모바일 연결 관리자 인 ModemManager에서도 사용됩니다.
  
-This C library relies on the GLib, GObject and GIO libraries to provide a very high level interface to interact with QMI modems when the qmi wwan kernel driver is being used. +This C library relies on the GLib, GObject and GIO libraries to provide a very high level interface to interact with QMI modems when the qmi wwan kernel driver is being used. \\ 
 +이 C 라이브러리는 GLib, GObject 및 GIO 라이브러리를 사용하여 qmi wwan 커널 드라이버를 사용할 때 QMI 모뎀과 상호 작용할 수있는 매우 높은 수준의 인터페이스를 제공합니다.
  
 {{wiki:​2inchlte:​ltemodem:​libqmi_in_user_space.jpg}} {{wiki:​2inchlte:​ltemodem:​libqmi_in_user_space.jpg}}
- 
  
 ==Device initialization== ==Device initialization==
Line 189: Line 184:
 to the one done by the GobiNet driver when it detects a new modem, but triggered in user-space instead of in to the one done by the GobiNet driver when it detects a new modem, but triggered in user-space instead of in
 the kernel. Being optional, the program can decide to fully skip doing it if it knows that the device is already the kernel. Being optional, the program can decide to fully skip doing it if it knows that the device is already
-initialized.+initialized.\\ 
 +QMI 제어를 위해 /​dev/​cdc-wdmX 문자 장치를 사용하려는 프로그램은 장치의 여는 순서 중에 '​버전 확인'​을 실행하도록 지정할 수 있습니다. 이 검사는 모뎀이 올바른 응답으로 응답 할 때까지 CTL Version Info 요청을 주기적으로 전송합니다. 따라서 새 모뎀을 발견했지만 GobiNet 드라이버에서 수행 한 것과 동등하지만,​ 커널 대신에 사용자 공간에서 트리거됩니다. 선택사항인 경우, 프로그램은 장치가 이미 초기화되었다는 것을 알고 있으면 이를 건너 뛸 수 있습니다.
  
 The steps that libqmi will perform while opening the QMI control port are specified in a bitmask of flags, and The steps that libqmi will perform while opening the QMI control port are specified in a bitmask of flags, and
 these also may include configuring the format of network packets to be transferred through the data network these also may include configuring the format of network packets to be transferred through the data network
-interface.+interface.\\ 
 +QMI 제어 포트를 여는 동안 libqmi가 수행하는 단계는 플래그의 비트 마스크에 지정되며 데이터 네트워크 인터페이스를 통해 전송할 네트워크 패킷의 형식을 구성하는 것도 포함될 수 있습니다.
  
 ==Client allocation and releasing== ==Client allocation and releasing==
wiki/lte.1511151562.txt.gz · Last modified: 2017/11/20 13:19 by 1.241.172.144