Questions tagged [bionic]

Bionic is a C language support library (libc), written by Google for its Android Operating System. It is BSD licensed, small and fast.

Some information about it you can get on http://codingrelic.geekhold.com/2008/11/six-million-dollar-libc.html page

63 questions
1
vote
1 answer

why pthread_cond_wait in bionic C is not atomic?

there is race condition in implementation that could allow a signal to be missed. The problem is pthread_cond_wait function is not atomic? same is discussed in the comment in the…
Pointer
  • 627
  • 2
  • 8
  • 19
0
votes
1 answer

Communication between JVM and native libraries

I wanted to know, suppose in android if there is an application which has some C/C++ code written in it. When this code is executed, it will require the native c libraries. So how does the DVM communicate with these libraries? Does it use Binder for…
Maximus
  • 285
  • 5
  • 19
0
votes
0 answers

Bionic Reading Font in Qualtrics Questionnaire

Has anyone tried to implement the bionic reading font in a Qualtrics Questionnaire? I have tried to copy and paste the HTML code from this website: https://not-br.neocities.org/ But it does alter the survey font so that some letters are bold while…
0
votes
0 answers

Why Bionic C runtime library in Android does not support "%n" format in printf function?

According to ISO C standard (ISO/IEC 9899), printf function contains "%n" format to count the number of output characters. n: The argument shall be a pointer to signed integer into which is written the number of characters written to the output…
0
votes
1 answer

How to implement crypt() and wordexp.h in Android Posix

I know that these 2 functionalities are not provided by Bionics libc implementation. I do need these for a C++ to Android port. How can I solve this problem? I dont know where to start here. I get these error messages: error: unknown type name…
tjk
  • 13
  • 3
0
votes
0 answers

Android NDK - Symbol __sfp and __sflag are not compatible with 64bit

Application is supporting to 32bit. Facing issue while migrating from 32bit (armeabi-v7a) to 64bit (arm64-v8a). Issue - assertion "orig___sfp" failed In project, using two symbol __sfp and __sflag. These are working fine with 32bit. These symbols…
Bhumika Mehta
  • 31
  • 1
  • 5
0
votes
1 answer

Libraries used in Android

I've downloaded the source from https://android.googlesource.com and I now want know if I can compile the libraries(bionic) and Dalvik VM using a cross compiler? If yes, how can I do that?
Sid Ramadoss
  • 521
  • 2
  • 6
  • 13
0
votes
2 answers

Cannot RDP to Amazon EC2 instance(windows server)

After launching windows 2016, Amazon EC2 instance, I received ec2-18-221-95-56.us-east-2.compute.amazonaws.com.rdp file to connect to windows instance. From my ubuntu laptop, Clicking the .rdp file, I receive this below message after providing…
overexchange
  • 15,768
  • 30
  • 152
  • 347
0
votes
0 answers

Which functions in the Android Bionic grant access to hardware (camera, microphone, etc.)?

I am writing a code that requires changing the functions in the Bionic that access resources such as the camera, microphone, location, contacts, and more (for academic research purposes). I am having a hard time finding these functions, since there…
0
votes
0 answers

pthread_mutex_t in bionic libc

I am trying to port a code that uses glibc into Android NDK and running into some issues related to mutexes. Currently our code uses mutex.__data.__count to cycle through all the locks, and release them one by one, we are also using it to check…
0
votes
1 answer

Analogue of LD_DEBUG for zygote-spawned process

I'm wondering if Android has an option for user to enable LD_DEBUG-style logs for Zygote-spawned processes. Probably we can not start app_process for Zygote with customized environment without being a root user. So maybe there is some system…
Sergio
  • 8,099
  • 2
  • 26
  • 52
0
votes
1 answer

Order of proc/pid/maps entries

So each entry in maps file has start and end addresses where they were mmap'ed. If a library is dynamically loaded (maybe using dlopen()), would the addresses of previous entries be affected in any way? (of course assuming that pid of the process…
sg1993
  • 335
  • 2
  • 19
0
votes
0 answers

Issue in adding syscalls in Android libc

Please help. I'm working with Android marshmallow (6.0) source code and I need a linux message queue and shared memory related system call support for an application to port. Formerly I was using Kitkat source code and in that it was working. The…
0
votes
1 answer

Examining alternate signal stack (Different ways to allocate it)

I am experimenting on alternate signal stack(man sigaltstack). Two pieces of code allocating stack differently: int method1(void) { struct sigaction act, oldact; memset(&act, 0, sizeof(act)); act.sa_sigaction = SignalHandler; …
Sandeep
  • 18,356
  • 16
  • 68
  • 108
0
votes
1 answer

Segfault when accessing char[]

I've got a function int foo() { ... char* real_path_buffer = (char*)malloc(sizeof(char)*PATH_MAX); realpath("a/certain/path/that/doesnt/exist", real_path_buffer); ... } That makes a call to realpath in Android bionic char*…
Reuben Tanner
  • 5,229
  • 3
  • 31
  • 46