Comparison between Kylin's Kyth and FreeBSD's libpthread multi-threaded library's source file list

Source: Internet
Author: User

Today, let's just think about it. In fact, we can recompile it to see what is the difference between Kyth in user mode and libpthread in FreeBSD. Later found that this libpthread-kyth.so is not strip (unlike the new 2.1-01 kernel of Qilin actually went through strip, and also modified the boot part, I don't know what it is to avoid, huh) so that I can see what source files are available for this executable file.

If you are willing to reproduce it, You can reproduce it in the following ways, which is very simple.

Run the following command in the operating system of Qilin:

Strings/lib/libpthread-kyth.so | grep kyth | sort

Run FreeBSD:

Strings/usr/lib/libpthread. so | grep src | sort

The results are compared as follows:

/Lib/libpthread-kyth.so /Usr/lib/libpthread. so.1

/Root/Kyth1.6/Sys/lock. c
/Root/kyth1.6/thread/thr_cancel.c
/Root/kyth1.6/thread/thr_concurrency.c
/Root/kyth1.6/thread/thr_cond.c
/Root/kyth1.6/thread/thr_create.c
/Root/kyth1.6/thread/thr_detach.c
/Root/kyth1.6/thread/thr_exit.c
/Root/kyth1.6/thread/thr_find_thread.c
/Root/kyth1.6/thread/thr_getschedparam.c
/Root/kyth1.6/thread/thr_init.c
/Root/kyth1.6/thread/thr_join.c
/Root/kyth1.6/thread/thr_kern.c
/Root/kyth1.6/thread/thr_mutex.c
/Root/kyth1.6/thread/thr_nanosleep.c
/Root/kyth1.6/thread/thr_priority_queue.c
/Root/kyth1.6/thread/thr_resume_np.c
/Root/kyth1.6/thread/thr_rwlock.c
/Root/kyth1.6/thread/thr_setschedparam.c
/Root/kyth1.6/thread/thr_sigaction.c
/Root/kyth1.6/thread/thr_sig.c
/Root/kyth1.6/thread/thr_sigmask.c
/Root/kyth1.6/thread/thr_sigpending.c
/Root/kyth1.6/thread/thr_sigsuspend.c
/Root/kyth1.6/thread/thr_sigwait.c
/Root/kyth1.6/thread/thr_spec.c
/Root/kyth1.6/thread/thr_spinlock.c
/Root/kyth1.6/thread/thr_stack.c
/Root/kyth1.6/thread/thr_suspend_np.c

$ FreeBSD: src/lib/csu/i386-elf/crti. S,V 1.62002/05/15 04:19:49 obrien Exp $
$ FreeBSD: src/lib/csu/i386-elf/crtn. S, v 1.5 04:19:49 obrien Exp $
/Usr/src/lib/libpthread/sys/lock. c
/Usr/src/lib/libpthread/thread/thr_cancel.c
/Usr/src/lib/libpthread/thread/thr_concurrency.c
/Usr/src/lib/libpthread/thread/thr_cond.c
/Usr/src/lib/libpthread/thread/thr_create.c
/Usr/src/lib/libpthread/thread/thr_detach.c
/Usr/src/lib/libpthread/thread/thr_exit.c
/Usr/src/lib/libpthread/thread/thr_find_thread.c
/Usr/src/lib/libpthread/thread/thr_getschedparam.c
/Usr/src/lib/libpthread/thread/thr_init.c
/Usr/src/lib/libpthread/thread/thr_join.c
/Usr/src/lib/libpthread/thread/thr_kern.c
/Usr/src/lib/libpthread/thread/thr_mutex.c
/Usr/src/lib/libpthread/thread/thr_nanosleep.c
/Usr/src/lib/libpthread/thread/thr_priority_queue.c
/Usr/src/lib/libpthread/thread/thr_resume_np.c
/Usr/src/lib/libpthread/thread/thr_rtld.c
/Usr/src/lib/libpthread/thread/thr_rwlock.c
/Usr/src/lib/libpthread/thread/thr_setschedparam.c
/Usr/src/lib/libpthread/thread/thr_sig.c
/Usr/src/lib/libpthread/thread/thr_sigaction.c
/Usr/src/lib/libpthread/thread/thr_sigmask.c
/Usr/src/lib/libpthread/thread/thr_sigpending.c
/Usr/src/lib/libpthread/thread/thr_sigsuspend.c
/Usr/src/lib/libpthread/thread/thr_sigwait.c
/Usr/src/lib/libpthread/thread/thr_spec.c
/Usr/src/lib/libpthread/thread/thr_spinlock.c
/Usr/src/lib/libpthread/thread/thr_stack.c
/Usr/src/lib/libpthread/thread/thr_suspend_np.c

I don't know what the relationship between kyth1.6 and the v 1.6 in FreeBSD. You can also get different results by converting the grep string. For example, if you change to kse, you will find that there are many similar kse function calls between the two. However, I am too lazy to analyze it. If you are interested, you can analyze it further :)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.