<p style="font-family:'굴림'; font-size:10pt;line-height:1.5;">What is the relation between main thread and pthread1/2/3?</p><p style="font-family:'굴림'; font-size:10pt;line-height:1.5;">If the main thread has a control to wake up each pthread1/2/3, it gonna be in trouble when the prioirty of the main thread is lower than pthread1/2/3s because the main thread has never chance to run it, which is required to other threads.</p><p style="font-family:'굴림'; font-size:10pt;line-height:1.5;"><br></p><p style="font-family:'굴림'; font-size:10pt;line-height:1.5;">However why do you assign so much long integer value to priority?</p><p style="font-family:'굴림'; font-size:10pt;line-height:1.5;"><br></p><p style="font-family:'굴림'; font-size:10pt;line-height:1.5;">Cheol<br></p><p style="font-family:'굴림'; font-size:10pt;line-height:1.5;"><div style="color: rgb(0, 102, 204); font-family: 돋움,arial; font-size: 12px; font-weight: bold; margin-top: 30px; margin-left: 0.8em;">--------- 원본 메일 ---------</div><blockquote style="margin: 0pt 0pt 0pt 0.8em; padding-left: 1em; font-size: 12px; border-left-width: 2px; border-left-style: solid;"><div style="line-height: 1.5; font-family: arial,돋움;"><b>보낸사람</b> : "JunBeom Kim (EmbedCoreTech)" <jbkim@e-coretech.kr><br><b>받는사람</b> :  <users@rtems.org><br><b>받은날짜</b> : 2018-12-28 (금) 15:45:48<br><b>제목</b> : RTEMS POSIX Priority Inversion Issue.<br><!-- original content --><div style="margin-top: 5px;">
  <!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]-->
  
  <!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]-->
  <!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
 
 
  <div class="WordSection1">
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>Dear Sir,
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p>
       
     </o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>I am testing RTEMS POSIX thread priority.
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>I am still using RTEMS 4.12 in 2017 year.
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p>
       
     </o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>There are four pthreads(main, pthread1, pthread2, pthread3) on two cores in my test case.
     <o:p></o:p></span></p>
   <p class="MsoNormal" style="margin-left: 10pt; mso-para-margin-left: 1.0gd;"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>- main pthread is running on core 1.
     <o:p></o:p></span></p>
   <p class="MsoNormal" style="margin-left: 10pt; mso-para-margin-left: 1.0gd;"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>- pthread1, pthread2, pthread3 is running on core 2.
     <o:p></o:p></span></p>
   <p class="MsoNormal" style="margin-left: 10pt; mso-para-margin-left: 1.0gd;"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>- All threads are doing GPIO toggling action in while(1) loop.
     <o:p></o:p></span></p>
   <p class="MsoNormal" style="margin-left: 10pt; mso-para-margin-left: 1.0gd;"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>- my configuration for timeslice quantum is 25ms.
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p>
       
     </o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>As I know from RTEMS POSIX manual, there is below statement.
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p>
       
     </o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>In the RTEMS implementation of the POSIX API, the priorities range from the low priority of
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>sched_get_priority_min() to the highest priority of sched_get_priority_max(). Numerically
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>higher values represent higher priorities.
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p>
       
     </o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>But, when I test this, lower value is doing as higher priority. Higher value is doing as lower priority.
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>Is this correct operation ?
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p>
       
     </o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>Case 0) All threads are same priority.
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>[/] # pthread
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>ID       NAME             CPU SHED PRI STATE  MODES    EVENTS WAITINFO
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>------------------------------------------------------------------------------
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>0b010001  main_thread       1 MEDF 2147483645 READY P:T:nA   NONE   
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>0b010002  pthread1           2 MEDF 2147483645 READY P:T:nA   NONE   
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>0b010003  pthread2           2 MEDF 2147483645 READY P:T:nA   NONE   
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>0b010004  pthread3           2 MEDF 2147483645 READY P:T:nA   NONE
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US"><img width="655" height="175" id="_xadf8__xb9bc__x0020_1" style="width: 6.822in; height: 1.822in;" src="cid:34048521514376771@kari.re.kr"></span><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p>
       
     </o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>Case 1) pthread3 is lower priority according to manual. But, pthread3 is higher priority in my case.
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>[/] # pthread
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>ID       NAME             CPU SHED PRI STATE  MODES    EVENTS WAITINFO
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>------------------------------------------------------------------------------
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>0b010001  main_thread       1 MEDF 2147483645 READY P:T:nA   NONE   
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>0b010002  pthread1           2 MEDF 2147483646 READY P:T:nA   NONE   
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>0b010003  pthread2           2 MEDF 2147483646 READY P:T:nA   NONE   
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>0b010004  pthread3           2 MEDF 1789569706 READY P:T:nA   NONE
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US"><img width="582" height="171" id="_xadf8__xb9bc__x0020_2" style="width: 6.062in; height: 1.781in;" src="cid:34048521515064444@kari.re.kr"></span><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p>
       
     </o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>Case 2) pthread3 is higher priority according to manual. pthread1 and pthread2 are higher priority than pthread3.
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>[/] # pthread
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>ID       NAME             CPU SHED PRI STATE  MODES    EVENTS WAITINFO
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>------------------------------------------------------------------------------
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>0b010001  main_thread       1 MEDF 2147483645 READY P:T:nA   NONE   
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>0b010002  pthread1           2 MEDF 1789569706 READY P:T:nA   NONE   
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>0b010003  pthread2           2 MEDF 1789569706 READY P:T:nA   NONE   
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>0b010004  pthread3           2 MEDF 2147483646 READY P:T:nA   NONE
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US"><img width="719" height="175" id="_xadf8__xb9bc__x0020_3" style="width: 7.489in; height: 1.822in;" src="cid:34048521515734434@kari.re.kr"></span><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p>
       
     </o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>Please advise.
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>
     <o:p>
       
     </o:p></span></p>
   <p class="MsoNormal"><span lang="EN-GB" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>B</span><span lang="EN-GB" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>est Regards,
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-GB" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>JunBeom Kim
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-GB" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>~~~~~~~~~~~~~~~~~~~~~~
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-GB" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>President / EmbedCoreTech
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-GB" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>Phone: +82-31-396-5584
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-GB" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>Fax: +82-504-065-5720
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-GB" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>Mobile:+82-10-6425-5720
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-GB" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>Email: <a href="mailto:jbkim@e-coretech.kr"><span style="color: blue;">jbkim@e-coretech.kr</span></a> 
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-GB" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>Web: <a href="http://www.e-coretech.kr"><span style="color: blue;">www.e-coretech.kr</span></a> 
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-GB" style='font-family: "Calibri",sans-serif; font-size: 11pt;'>~~~~~~~~~~~~~~~~~~~~~~</span><span lang="EN-US" style="font-size: 11pt;">
     <o:p></o:p></span></p>
   <p class="MsoNormal"><span lang="EN-US" style="font-size: 11pt;">
     <o:p>
       
     </o:p></span></p>
  </div> 
 
</div><!-- original content --><br></div></blockquote><p style="font-family:'굴림'; font-size:10pt;line-height:1.5;"></p>
<img src='https://webmail.kari.re.kr:443/checkread/MTA2NjIz/dXNlcnNAcnRlbXMub3Jn/' width='1px' height='1px' />