共找到 20 条结果
In order to insert a fork into a hole of a pallet by a forklift located in front of a pallet, it is necessary to control the height position, reach position, and tilt angle of the fork to match the position and orientation of the hole of the pallet. In order to make AGF (Autonomous Guided Forklift) do this automatically, we propose an image measurement method to measure the pitch inclination of the pallet in the camera coordinate system from an image obtained by using a wide-angle camera. In addition, we propose an image measurement method to easily acquire the calibration information between the camera coordinate system and the fork coordinate system necessary to apply the measurements in the camera coordinate system to the fork control. In the experiment space, a wide-angle camera was fixed at the backrest of a reach type forklift. The wide-angle images taken by placing a pallet in front of the camera were processed. As a result of evaluating the error by comparing the image measurement value with the hand measurement value when changing the pitch inclination angle of the pallet, the relative height of the pallet and the fork, and whether the pallet is loaded or not, it was confi
A {\em fork} is a graph obtained from $K_{1,3}$ (usually called {\em claw}) by subdividing an edge once, an {\em antifork} is the complement graph of a fork, and a {\em co-cricket} is a union of $K_1$ and $K_4-e$. A graph is perfectly divisible if for each of its induced subgraph $H$, $V (H)$ can be partitioned into $A$ and $B$ such that $H[A]$ is perfect and $ω(H[B]) < ω(H)$. Karthick {\em et al.} [Electron. J. Comb. 28 (2021), P2.20.] conjectured that fork-free graphs are perfectly divisible, and they proved that each (fork, co-cricket)-free graph is either claw-free or perfectly divisible. In this paper, we show that every (fork, {\em antifork}$\cup K_1$)-free graph is perfectly divisible. This improves some results of Karthick {\em et al.}.
Single-address-space operating systems have well-known lightweightness benefits that result from their central design idea: the kernel and applications share a unique address space. This model makes these operating systems (OSes) incompatible by design with a large class of software: multiprocess POSIX applications. Indeed, the semantics of the primitive used to create POSIX processes, fork, are inextricably tied to the existence of multiple address spaces. Prior approaches addressing this issue trade off lightweightness, compatibility and/or isolation. We propose μFork, a single-address-space operating system design supporting POSIX fork on modern hardware without compromising on any of these key objectives. μFork emulates POSIX processes (μprocesses) and achieves fork by creating for the child a copy of the parent μprocess' memory at a different location within a single address space. This approach presents two challenges: relocating the child's absolute memory references (pointers), as well as providing user/kernel and μprocesses isolation without impacting lightweightness. We address them using CHERI. We implement μFork and evaluate it upon three real-world use-cases: Redis sna
Traditional concurrent-programming techniques require programmers to painstakingly write programs for each participant in a concurrent system. Choreographic programming, in contrast, allows a programmer to write one centralized program and compile it to individual programs. This approach simplifies critical properties like deadlock freedom, but it complicates forking new processes, a core primitive in concurrent programming. This work addresses that gap with the choreographic fork calculus $λ{\pitchfork}$, the first functional choreographic language with process forking. $λ{\pitchfork}$ provides a deadlock-freedom guarantee while allowing programs to dynamically determine when to spawn new processes, what they will do, and who will communicate with them. In doing so, it supports practical applications like load balancers and parallel divide-and-conquer.
On open source software (OSS) platforms such as GitHub, forking and accepting pull-requests is an important approach for OSS projects to receive contributions, especially from external contributors who cannot directly commit into the source repositories. Having a large number of forks is often considered as an indicator of a project being popular. While extensive studies have been conducted to understand the reasons of forking, communications between forks, features and impacts of forks, there are few quantitative measures that can provide a simple yet informative way to gain insights about an OSS project's forks besides their count. Inspired by studies on biodiversity and OSS team diversity, in this paper, we propose an approach to measure the diversity of an OSS project's forks (i.e., its fork population). We devise a novel fork entropy metric based on Rao's quadratic entropy to measure such diversity according to the forks' modifications to project files. With properties including symmetry, continuity, and monotonicity, the proposed fork entropy metric is effective in quantifying the diversity of a project's fork population. To further examine the usefulness of the proposed metr
Through three-dimensional MHD simulations, we have uncovered a kind of fast coronal wave originating from both ends of a current sheet (CS) during a solar eruption. These waves are observed to appear near the top and bottom ends of the reconnection-related CS. The simulations demonstrate the presence of termination shock regions above the two ends of the CS. As the reconnection outflows escape from the vertical CS and encounter these termination shocks, they undergo partial reflection, redirecting towards the CS terminal fork walls. The identified waves propagate rapidly at a speed of approximately 1400 km/s with a period of just 2 s. Concurrently, the time-evolution of intensity within a small region of the CS terminal fork structures, exhibits a similar oscillation period of 2 s. All these evidence supports the notion that these QFP (Quasi-periodic Fast-Propagating) waves were excited by tuning fork effects within the CS system. Essentially, the rapid reconnection outflows are reflected by the terminal shocks, striking the fork walls at the CS ends. Moreover, parts of the oscillations along the tuning fork handle are transformed into thermal energy, accumulating in the CS center
Forking is a common practice for developers when building upon on already existing projects. These forks create variants, which have a common code base but then evolve the code in different directions, which is specific to that forked project requirements. An interesting side-effect of having multiple forks is the ability to select between different evolution directions of the code which is based on developers fixing bugs in the code base. However, the key issue that this decentralized form of information is difficult to analyze. In this study, we propose a visualization to analyze active changes in fork repositories that have not been merged back to the original project. Our visualization shows code commit activities in multiple forks with highlight on bug fix commits in the history of forks. While the commit activity of each repository is visualized similarly to the code frequency view of GitHub, our view shows only commits unique to fork repositories. To illustrate the effectiveness of our visualization, we have applied our view to two use cases: identifying forks from a repository no longer maintained, and identifying a bug fix among forks. In the first case, we identify a fork
Wikipedia is powered by MediaWiki, a free and open-source software that is also the infrastructure for many other wiki-based online encyclopedias. These include the recently launched website Ruwiki, which has copied and modified the original Russian Wikipedia content to conform to Russian law. To identify practices and narratives that could be associated with different forms of knowledge manipulation, this article presents an in-depth analysis of this Russian Wikipedia fork. We propose a methodology to characterize the main changes with respect to the original version. The foundation of this study is a comprehensive comparative analysis of more than 1.9M articles from Russian Wikipedia and its fork. Using meta-information and geographical, temporal, categorical, and textual features, we explore the changes made by Ruwiki editors. Furthermore, we present a classification of the main topics of knowledge manipulation in this fork, including a numerical estimation of their scope. This research not only sheds light on significant changes within Ruwiki, but also provides a methodology that could be applied to analyze other Wikipedia forks and similar collaborative projects.
In-memory key-value stores (IMKVSes) serve many online applications because of their efficiency. To support data backup, popular industrial IMKVSes periodically take a point-in-time snapshot of the in-memory data with the system call fork. However, this mechanism can result in latency spikes for queries arriving during the snapshot period because fork leads the engine into the kernel mode in which the engine is out-of-service for queries. In contrast to existing research focusing on optimizing snapshot algorithms, we optimize the fork operation to address the latency spikes problem from the operating system (OS) level, while keeping the data persistent mechanism in IMKVSes unchanged. Specifically, we first conduct an in-depth study to reveal the impact of the fork operation as well as the optimization techniques on query latency. Based on findings in the study, we propose Async-fork to offload the work of copying the page table from the engine (the parent process) to the child process as copying the page table dominates the execution time of fork. To keep data consistent between the parent and the child, we design the proactive synchronization strategy. Async-fork is implemented in
A fork is a graph obtained from $K_{1,3}$ (usually called claw) by subdividing an edge once. A graph is perfectly divisible if for each of its induced subgraph $H$, $V(H)$ can be partitioned into $A$ and $B$ such that $H[A]$ is perfect and $ω(H[B]) < ω(H)$. In this paper, we prove that the perfect divisibility of fork-free graphs is equivalent to that of claw-free graphs. We also prove that, for $F\in \{P_7, P_6\cup K_1\}$, each (fork, $F$)-free graph $G$ is perfectly divisible and hence $χ(G)\leq \binom{ω(G)+1}{2}$.
This thesis is a contribution to the model theory of valued fields. We study forking in valued fields and some of their reducts. We focus particularly on pseudo-local fields, the ultraproducts of residue characteristic zero of the p-adic valued fields. First, we look at the value groups of the valued fields we are interested in, the regular ordered Abelian groups. We establish for these ordered groups a geometric description of forking, as well as a full classification of the global extensions of a given type which are non-forking or invariant. Then, we prove an Ax-Kochen-Ershov principle for forking and dividing in expansions of pure short exact sequences of Abelian structures, as studied by Aschenbrenner-Chernikov-Gehret-Ziegler in their article about distality. This setting applies in particular to the leading-term structure of (expansions of) valued fields. Lastly, we give various sufficient conditions for a parameter set in a Henselian valued field of residue characteristic zero to be an extension base. In particular, we show that forking equals dividing in pseudo-local fields of residue characteristic zero. Additionally, we discuss results by Ealy-Haskell-Simon on forking in
This study introduces the concept of the forking effect in the cryptocurrency market,specifically focusing on the impact of forking events on bitcoin, also called parent coin.We use a modified exponential GARCH model to examine the bitcoin's response inreturns and volatility. Our findings reveal that forking events do not significantlyaffect the bitcoin's returns but have a strong positive impact on its volatility, especially when considering market dynamics. Our model accounts for key features likevolatility clustering and fat-tailed distributions. Additionally, we observe that following a fork event, volatility remains elevated for the next three days, regardless ofother forking events, and the volatility impact does not increase when multiple forksoccur simultaneously on the same day.
In this work, we reexamine the vulnerability of Payment Channel Networks (PCNs) to bribing attacks, where an adversary incentivizes blockchain miners to deliberately ignore a specific transaction to undermine the punishment mechanism of PCNs. While previous studies have posited a prohibitive cost for such attacks, we show that this cost may be dramatically reduced (to approximately \$125), thereby increasing the likelihood of these attacks. To this end, we introduce Bribe & Fork, a modified bribing attack that leverages the threat of a so-called feather fork which we analyze with a novel formal model for the mining game with forking. We empirically analyze historical data of some real-world blockchain implementations to evaluate the scale of this cost reduction. Our findings shed more light on the potential vulnerability of PCNs and highlight the need for robust solutions.
To fork a project is to copy the existing code base and move in a direction different than that of the erstwhile project leadership. Forking provides a rapid way to address new requirements by adapting an existing solution. However, it can also create a plethora of similar tools, and fragment the developer community. Hence, it is not always clear whether forking is the right strategy. In this paper, we describe a mixed-methods exploratory case study that investigated the process of forking a project. The study concerned the forking of an open-source tool for managing software projects, Trac. Trac was forked to address differing requirements in an academic setting. The paper makes two contributions to our understanding of code forking. First, our exploratory study generated several theories about code forking in open source projects, for further research. Second, we investigated one of these theories in depth, via a quantitative study. We conjectured that the features of the OSS forking process would allow new requirements to be addressed. We show that the forking process in this case was successful at fulfilling the new projects requirements.
The fork is the tree obtained from the claw $K_{1,3}$ by subdividing one of its edges once, and the antifork is its complement graph. We give a complete description of all graphs that do not contain the fork or antifork as induced subgraphs.
We explore the well-known Jaeger's directed cycle double cover conjecture which is equivalent to the assertion that every cubic bridgeless graph has an embedding on a closed orientable surface with no dual loop. We associate each cubic graph G with a novel object H that we call a "hexagon graph"; perfect matchings of H describe all embeddings of G on closed orientable surfaces. The study of hexagon graphs leads us to define a new class of graphs that we call "lean fork-graphs". Fork graphs are cubic bridgeless graphs obtained from a triangle by sequentially connecting fork-type graphs and performing Y-Delta, Delta-Y transformations; lean fork-graphs are fork graphs fulfilling a connectivity property. We prove that Jaeger's conjecture holds for the class of lean fork-graphs. The class of lean fork-graphs is rich; namely, for each cubic bridgeless graph G there is a lean fork-graph containing a subdivision of G as an induced subgraph. Our results establish for the first time, to the best of our knowledge, the validity of Jaeger's conjecture in a broad inductively defined class of graphs.
In this paper we develop optimal algorithms in the binary-forking model for a variety of fundamental problems, including sorting, semisorting, list ranking, tree contraction, range minima, and ordered set union, intersection and difference. In the binary-forking model, tasks can only fork into two child tasks, but can do so recursively and asynchronously. The tasks share memory, supporting reads, writes and test-and-sets. Costs are measured in terms of work (total number of instructions), and span (longest dependence chain). The binary-forking model is meant to capture both algorithm performance and algorithm-design considerations on many existing multithreaded languages, which are also asynchronous and rely on binary forks either explicitly or under the covers. In contrast to the widely studied PRAM model, it does not assume arbitrary-way forks nor synchronous operations, both of which are hard to implement in modern hardware. While optimal PRAM algorithms are known for the problems studied herein, it turns out that arbitrary-way forking and strict synchronization are powerful, if unrealistic, capabilities. Natural simulations of these PRAM algorithms in the binary-forking model (
The notion of software ''fork'' has been shifting over time from the (negative) phenomenon of community disagreements that result in the creation of separate development lines and ultimately software products, to the (positive) practice of using distributed version control system (VCS) repositories to collaboratively improve a single product without stepping on each others toes. In both cases the VCS repositories participating in a fork share parts of a common development history. Studies of software forks generally rely on hosting platform metadata, such as GitHub, as the source of truth for what constitutes a fork. These ''forge forks'' however can only identify as forks repositories that have been created on the platform, e.g., by clicking a ''fork'' button on the platform user interface. The increased diversity in code hosting platforms (e.g., GitLab) and the habits of significant development communities (e.g., the Linux kernel, which is not primarily hosted on any single platform) call into question the reliability of trusting code hosting platforms to identify forks. Doing so might introduce selection and methodological biases in empirical studies. In this article we explore
Non-forking is one of the most important notions in modern model theory capturing the idea of a generic extension of a type (which is a far-reaching generalization of the concept of a generic point of a variety). To a countable first-order theory we associate its non-forking spectrum - a function of two cardinals kappa and lambda giving the supremum of the possible number of types over a model of size lambda that do not fork over a sub-model of size kappa. This is a natural generalization of the stability function of a theory. We make progress towards classifying the non-forking spectra. On the one hand, we show that the possible values a non-forking spectrum may take are quite limited. On the other hand, we develop a general technique for constructing theories with a prescribed non-forking spectrum, thus giving a number of examples. In particular, we answer negatively a question of Adler whether NIP is equivalent to bounded non-forking. In addition, we answer a question of Keisler regarding the number of cuts a linear order may have. Namely, we show that it is possible that ded(kappa) < ded(kappa)^omega.
Fuzz testing (or fuzzing) is an effective technique used to find security vulnerabilities. It consists of feeding a software under test with malformed inputs, waiting for a weird system behaviour (often a crash of the system). Over the years, different approaches have been developed, and among the most popular lies the coverage-based one. It relies on the instrumentation of the system to generate inputs able to cover as much code as possible. The success of this approach is also due to its usability as fuzzing techniques research approaches that do not require (or only partial require) human interactions. Despite the efforts, devising a fully-automated fuzzer still seems to be a challenging task. Target systems may be very complex; they may integrate cryptographic primitives, compute and verify check-sums and employ forks to enhance the system security, achieve better performances or manage different connections at the same time. This paper introduces the fork-awareness property to express the fuzzer ability to manage systems using forks. This property is leveraged to evaluate 14 of the most widely coverage-guided fuzzers and highlight how current fuzzers are ineffective against sy